Модуль включен по умолчанию в наборах модулей: Default, Managed. Модуль выключен по умолчанию в наборе модулей Minimal.

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

Чтобы явно включить или выключить модуль namespace-configurator, установите spec.enabled в true или false в ModuleConfig/namespace-configurator (создайте, при необходимости), или воспользуйтесь командой deckhouse-controller module в поде d8-system/deckhouse.

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

  • с помощью ресурса ModuleConfig:

    apiVersion: deckhouse.io/v1alpha1
    kind: ModuleConfig
    metadata:
      name: namespace-configurator
    spec:
      enabled: true
    
  • с помощью команды deckhouse-controller (требуется kubectl, настроенный на работу с кластером):

    kubectl -ti -n d8-system exec svc/deckhouse-leader -c deckhouse -- deckhouse-controller module enable namespace-configurator
    

Пример выключения модуля:

  • с помощью ресурса ModuleConfig:

    apiVersion: deckhouse.io/v1alpha1
    kind: ModuleConfig
    metadata:
      name: namespace-configurator
    spec:
      enabled: false
    
  • с помощью команды deckhouse-controller (требуется kubectl, настроенный на работу с кластером):

    kubectl -ti -n d8-system exec svc/deckhouse-leader -c deckhouse -- deckhouse-controller module disable namespace-configurator
    

Чтобы настроить модуль, используйте custom resource ModuleConfig с именем namespace-configurator (подробнее о настройке Deckhouse…).

Пример ресурса ModuleConfig/namespace-configurator для настройки модуля:

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: namespace-configurator
spec:
  version: 1
  enabled: true
  settings: # <-- Параметры модуля из раздела "Параметры" ниже.

Параметры

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

  • settings
    объект
    • settings.configurations
      массив объектов
      • settings.configurations.annotations
        объект

        Список аннотаций в формате ключ: "значение".

        Пример:

        annotations:
          example: 'true'
        
      • settings.configurations.excludeNames
        массив строк

        Список шаблонов для исключения пространств имен.

        По умолчанию: []

        Пример:

        excludeNames:
        - infra-test
        
      • settings.configurations.includeNames
        массив строк

        Обязательный параметр

        Список шаблонов для включения пространств имен.

        По умолчанию: []

        Пример:

        includeNames:
        - prod-.*
        - infra-.*
        
      • settings.configurations.labels
        объект

        Список лейблов в формате ключ: "значение".

        Пример:

        labels:
          istio-injection: 'true'