https://github.com/yandex-cloud-examples/yc-mk8s-kubelet-flags-editor
Добавление флагов в kubelet с помощью DaemonSet.
https://github.com/yandex-cloud-examples/yc-mk8s-kubelet-flags-editor
kubelet kubernetes mk8s yandex-cloud yandexcloud
Last synced: 7 months ago
JSON representation
Добавление флагов в kubelet с помощью DaemonSet.
- Host: GitHub
- URL: https://github.com/yandex-cloud-examples/yc-mk8s-kubelet-flags-editor
- Owner: yandex-cloud-examples
- License: apache-2.0
- Created: 2024-03-08T09:07:33.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-16T10:37:46.000Z (8 months ago)
- Last Synced: 2025-02-16T11:26:25.399Z (8 months ago)
- Topics: kubelet, kubernetes, mk8s, yandex-cloud, yandexcloud
- Homepage:
- Size: 5.86 KB
- Stars: 0
- Watchers: 9
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Демонсет для добавления флагов kubelet.
## Описание
Демонсет будет выполнять следующее:1. При помощи bash скрипта постояннo проверять наличие нужных флагов на нодах.
2. В случае, если их нет, копировать их из конфигмапа.
3. Перезагружать kubelet.Демонсет работает с нодами использующими Docker runtime.
## Как запустить в общем случае
1) Создаем неймспейс для работы демонсета в целях изоляции его работы.
```
kubectl apply -f kubelet-flag-editor-ns.yaml
```
1) Создаем простой конфигмап, с флагами внутри и не забываем кавычки в конце.
```
kubectl apply -f kubelet-flag-editor-configmap --namespace="kubelet-flag-editor"
```Далее переходим к созданию самого демонсета.
1) Создаем демонсет```
kubectl apply -f kubelet-flag-editor-ds.yaml
```
Далее можно мониторить состояние демонсета, в случае, когда произойдет обновление флагов, то под перезагрузит процесс kubelet и новые флаги появятся на процессе kubelet.### Обновление флагов.
При помощи:
```kubectl edit configmap kubelet-flag-editor-configmap -o yaml -n kubelet-flag-editor```
Мы можем добавить дополнительные флаги, когда они понадобятся, однако стоит обратить внимание, что в скрипте проверки наличия флагов скорее проверяются сами флаги, а не их значения, поэтому если вы будете изменять значения, скрипт может подумать, что изменений быть не должно и пропустит изменения, в случае, если значения будут подобраны неверно (например, в конфигмапе выше перепутать gc-image-threshold high с low ), процесс kubelet не сможет перезапуститься и нода перейдет в статус not ready.