Внимание! При изменении настроек модуля пересоздания существующих объектов
Machines
в кластере НЕ происходит (новые объектыMachine
будут создаваться с новыми параметрами). Пересоздание происходит только при изменении параметровNodeGroup
иYandexInstanceClass
. Подробнее в документации модуля node-manager.
В модуле реализовано 3 алерта.
Storage
Модуль автоматически создает StorageClass’ы, покрывающие все варианты дисков в Yandex Cloud:
Тип | Имя StorageClass | Комментарии |
---|---|---|
network-hdd | network-hdd | |
network-ssd | network-ssd | |
network-ssd-nonreplicated | network-ssd-nonreplicated | |
network-ssd-io-m3 | network-ssd-io-m3 | Размер дисков должен быть кратен 93 ГБ |
Вы можете отфильтровать ненужные StorageClass’ы с помощью параметра exclude.
Важная информация об увеличении размера PVC
Из-за особенностей работы volume-resizer, CSI и Yandex Cloud API после увеличения размера PVC необходимо:
- На узле, где находится под, выполнить команду
kubectl cordon <имя_узла>
. - Удалить под.
- Убедиться, что увеличение размера произошло успешно. В объекте PVC не будет condition
Resizing
.Состояние
FileSystemResizePending
не является проблемой. - На узле, где находится под, выполнить команду
kubectl uncordon <имя_узла>
.
LoadBalancer
Модуль подписывается на объекты Service с типом LoadBalancer
и создает соответствующие NetworkLoadBalancer
и TargetGroup
в Yandex Cloud.
Больше информации в документации Kubernetes Cloud Controller Manager for Yandex Cloud.
Чтобы настроить модуль, используйте custom resource ModuleConfig
с именем cloud-provider-yandex
(подробнее о настройке Deckhouse…).
Пример ресурса ModuleConfig/cloud-provider-yandex
для настройки модуля:
apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
name: cloud-provider-yandex
spec:
version: 1
enabled: true
settings: # <-- Параметры модуля из раздела "Параметры" ниже.
Параметры
Версия схемы: 1
- settings
- settings.additionalExternalNetworkIDs
Список Network ID, которые будут считаться
ExternalIP
при перечислении адресов у Node.По умолчанию:
[]
- settings.storageClass
- settings.storageClass.default
Имя StorageClass, который будет использоваться в кластере по умолчанию.
Если параметр не задан, фактическим StorageClass’ом по умолчанию будет один из следующих:
- Присутствующий в кластере произвольный StorageClass с default-аннотацией.
- Лексикографически первый StorageClass из создаваемых модулем.
Пример:
default: network-hdd
- settings.storageClass.exclude
Полные имена (или regex-выражения имен) StorageClass, которые не будут созданы в кластере.
Пример:
exclude: - network-ssd-.* - network-hdd