Стадия жизненного цикла модуля: Общедоступная версия

У модуля есть требования для установки

Чтобы создаваемые балансировщики ServiceWithHealthchecks работали, необходимо выполнение следующих условий:

  • В сетевой политике пользовательского проекта, в котором будет создаваться ServiceWithHealthchecks, должно присутствовать правило, разрешающее входящий трафик из всех подов неймспейса d8-service-with-healthchecks:

    ingress:
    - from:
      - namespaceSelector:
          matchLabels:
            kubernetes.io/metadata.name: d8-service-with-healthchecks

    Подробнее о сетевых политиках — в разделе «Настройка сетевых политик».

  • Кластерная роль, которая используется в ClusterRoleBinding и RoleBinding при назначении прав пользователям и сервисным аккаунтам, для ресурса ServiceWithHealthchecks должна быть расширена следующими правилами:

    • get
    • list
    • watch
    • create
    • update
    • patch
    • delete.

    Подробнее — в разделе «Выдача прав пользователям и сервисным аккаунтам».

После включения модуля не происходит автоматическая замена имеющихся ресурсов типа Service на ServiceWithHealthchecks. Для замены имеющихся сервисов на использование ServiceWithHealthchecks выполните следующие действия:

  • Создайте ресурсы ServiceWithHealthchecks с такими же именами и параметрами, как существующие ресурсы Service, которые нужно заменить. Секция healthcheck необязательна: укажите её, чтобы включить активные проверки работоспособности, или опустите, чтобы публиковать эндпоинты только по готовности подов, как у обычного Service.
  • Удалите ресурсы Service, которые требуется заменить ServiceWithHealthchecks.

Как явно включить или отключить модуль…

Явно включить или выключить модуль можно одним из следующих способов:

  • С помощью веб-интерфейса Deckhouse. В разделе «Система» → «Управление системой» → «Deckhouse» → «Модули» откройте модуль service-with-healthchecks и включите (или выключите) переключатель «Модуль включен». Сохраните изменения.

    Пример:

    Интерфейс включения и выключения модуля
  • С помощью Deckhouse CLI (d8).

    Используйте команду d8 system module enable для включения модуля или d8 system module disable для выключения модуля (требуется Deckhouse CLI (d8), настроенный на работу с кластером).

    Пример включения модуля service-with-healthchecks:

    d8 system module enable service-with-healthchecks
  • С помощью ModuleConfig service-with-healthchecks.

    Установите spec.enabled в true или false в ModuleConfig service-with-healthchecks (при необходимости создайте его).

    Пример манифеста для включения модуля service-with-healthchecks:

    apiVersion: deckhouse.io/v1alpha1
    kind: ModuleConfig
    metadata:
      name: service-with-healthchecks
    spec:
      enabled: true

Как настроить модуль…

Настроить модуль можно одним из следующих способов:

  • С помощью веб-интерфейса Deckhouse.

    В разделе «Система» → «Управление системой» → «Deckhouse» → «Модули» откройте модуль service-with-healthchecks и включите переключатель «Дополнительные настройки». Заполните необходимые поля формы на вкладке «Конфигурация» или укажите настройки модуля в формате YAML на вкладке «YAML» без ключа верхнего уровня settings. Сохраните изменения.

    Пример:

    Интерфейс настройки модуля

    Вы также можете отредактировать объект ModuleConfig service-with-healthchecks на вкладке «YAML» в окне настроек модуля («Система» → «Управление системой» → «Deckhouse» → «Модули», откройте модуль service-with-healthchecks), указав версию схемы в параметре spec.version и необходимые параметры модуля в секции spec.settings.

  • С помощью Deckhouse CLI (d8) (требуется Deckhouse CLI (d8), настроенный на работу с кластером).

    Отредактируйте существующий ModuleConfig service-with-healthchecks (подробнее о настройке Deckhouse Platform читайте в документации), выполнив следующую команду:

    d8 k edit mc service-with-healthchecks

    Внесите необходимые изменения в секцию spec.settings. При необходимости укажите версию схемы в параметре spec.version. Сохраните изменения.

    Вы также можете создать файл манифеста ModuleConfig service-with-healthchecks, используя пример ниже. Заполните секцию spec.settings необходимыми параметрами модуля. При необходимости укажите версию схемы в параметре spec.version.

    Примените манифест с помощью следующей команды (укажите имя файла манифеста):

    d8 k apply -f <FILENAME>

    Пример файла манифеста ModuleConfig service-with-healthchecks:

    apiVersion: deckhouse.io/v1alpha1
    kind: ModuleConfig
    metadata:
      name: service-with-healthchecks
    spec:
      version: 1
      enabled: true
      settings: # Параметры модуля из раздела «Параметры» ниже.

Как сменить канал обновлений модуля…

Чтобы сменить канал обновлений модуля, выполните действия из раздела Как сменить канал обновлений для модуля?.

Требования

К версии Deckhouse Platform: 1.78 и выше.

Параметры

Версия схемы: 1

  • settings
    объект
    • settings.debug
      булевый
      Включает уровень логирования debug для контроллера и агента, обеспечивая более подробный вывод логов, включая информацию о вызывающем коде.

      По умолчанию: false

    • settings.verboseStatus
      булевый
      Если true, агент будет обновлять поле lastProbeTime в статусе ServiceWithHealthchecks при каждой проверке (каждые periodSeconds). Это может быть полезно для отладки, но создает высокую нагрузку на API-сервер. Если false, фиксируются только изменения состояния.

      По умолчанию: false