Проверка конфигурации#

Для проверки конфигурации нужно выполнить следующие действия:

  1. Перейти к job Jenkins, предназначенной для развертывания (установки) приложений.

  2. В меню слева нажать на опцию «Build with parameters».

  3. Установить параметры сборки:

    • SUBSYSTEM: DOCGEN;

    • COMPONENTS: Основная ФП DOCGEN;

    • DISTRIB_VERSION: <выбрать версию дистрибутива>;

    • OSE_CLUSTERS: <выбрать кластер K8s или OpenShift>;

    • Репозиторий/ветка с настройками ФП: <основная ветка конфигурации в соответствии с настройками Deploy Tools>;

    • PARAMS (набор playbook): <выбрать FP_CONF_CHECK>.

  4. Запустить сборку, нажав кнопку «Build».

После выполнения сборки проанализировать лог на предмет наличия некорректной конфигурации.

Пример отсутствия глобальных переменных:

------------------------------------------------------------------------------------------
Проверка соответствия параметров в конфигурационных файлах <fp_name>.conf и _global.conf
------------------------------------------------------------------------------------------
Не найдено значений для global.platform.pprb.baseurl.audit в файле dcgn.template-registry.conf
Не найдено значений для global.platform.ingress.route.http в файле dcgn.istio.all.conf
Не найдено значений для global.platform.ingress.route.https в файле dcgn.istio.all.conf

Валидация конфигурации#

Для валидации пользовательских конфигураций Istio используется Validating Admission Webhook - специальный контроллер POLM. По умолчанию он обрабатывает конфигурации, у которых есть label istio.io/rev = <значение_revision_контрольной_панели>. Если значения revision у контрольной панели нет, тогда будут обрабатываться конфигурации, имеющие label istio.io/rev = default.

Чтобы настроить валидацию пользовательских конфигураций независимо от labels, можно задать настройки namespaceWideValidation = true (значение по умолчанию false, аналогичное значение, если настройка namespaceWideValidation не указана совсем). В случае, если контрольная панель устанавливалась с использованием istio-operator, то настройка проставляется по пути spec.values.pilot.

Пример:

apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
...
spec:
  ...
  values:
    pilot:
      namespaceWideValidation: true

Важно!
Чтобы произвести развертывание с валидацией конфигураций Istio, необходимо предварительно выполнить зачистку namespace. Если зачистка namespace недопустима и валидатор не используется, то развертывание возможно, но требования правил валидации не будут выполнены.