Дополнительные настройки
В пользовательских параметрах (answers_raw_custom_params) файла ответов answers_file.yaml можно задать настройки, поддерживаемые компонентами.
Подробнее — в разделе Подготовка файла ответов.
Все параметры для настройки описаны в roles/*/README.md.
Примеры дополнительных настроек представлены ниже.
Начиная с версии 26.1.0, дополнительно настраивать Закрытый Контур Управления (ЗКУ) в VK Dev Platform не нужно.
Чтобы включить ЗКУ, укажите в файле answers_file.yaml значение true для параметра gitlab_zku_enabled. Чтобы отключить — значение false.
Пример:
answers_raw_custom_params:gitlab_zku_enabled: false # ЗКУ отключен
Инсталлятор поддерживает настройку протокола SSH для доступа к репозиториям GitLab.
Чтобы включить доступ, укажите в файле answers_file.yaml:
answers_raw_custom_params:gitlab_ssh_enable: true
Если нужно развернуть несколько экземпляров VK Dev Platform (сценарий для dev-стендов), задайте дополнительные параметры:
answers_raw_custom_params:gitlab_ssh_separate_lb: truegitlab_ssh_create_dns_record: truegitlab_ssh_dns_record_name: ""
Агрегатор Vector принимает обработанные логи от агентов Vector и сохраняет их в Persistent Volume (PV).
Вы можете настроить пересылку логов из агрегатора во внешние системы, задать размер PV и настроить работу утилиты logrotate.
Полный список параметров для настройки — в файле roles/vector/README.md.
В агрегаторе Vector входящие логи разделяются на два потока:
- логи аудита
route_by_category.audit; - логи приложений
route_by_category.app.
Настройка интеграции с внешними системами сбора и обработки логов выполняется в переменной vector_sinks_extra.
Пример:
answers_raw_custom_params:vector_aggregator:vector_secret_generic:password: "{{ all_vector_auth_password }}"clickhouse-password: "{{ all_clickhouse_password }}"vector_envs:- name: HTTP_AUTH_PASSWORDvalueFrom:secretKeyRef:name: "{{ vector_release_name }}"key: password- name: CLICKHOUSE_PASSWORDvalueFrom:secretKeyRef:name: vector-aggregatorkey: clickhouse-passwordvector_sinks_extra:clickhouse:auth:password: "${CLICKHOUSE_PASSWORD}"strategy: basicuser: defaultbatch:max_events: 10000timeout_secs: 1database: my_ch_dbencoding:timestamp_format: unix_msendpoint: http://clickhouse.example.cominputs:- route_by_category.audit- route_by_category.appskip_unknown_fields: truetable: logstype: clickhouse
В этом примере:
- Нужно добавить зашифрованный пароль от ClickHouse
all_clickhouse_passwordв файл/shepherd/inventories/<ИМЯ_INVENTORY>/group_vars/all/secrets_custom.yaml. - В секциях
vector_secret_genericиvector_envsуказаны параметры, значения которых определены в файлеbase.yaml. Это нужно, чтобы не потерять эти значения, так как добавление в список новых параметров не доступно.
Логи аудита собираются из компонентов Samsara и Nexus.
Их можно перенаправить из агрегатора Vector во внешние системы из потока route_by_category.audit.
Централизованное включение и отключение логирования настраивается в файле answers_file.yaml параметром answers_logs_collection_enabled.
Дополнительное включение или отключение логирования отдельных сервисов выполняется через соответствующие переменные, которые можно получить командой:
$ grep -r "_log_collect_enabled" roles/**/README.md
Пример вывода:
roles/gitlab/README.md:| gitlab_log_collect_enabled | `false` | Переключатель сбора логов агентом vector |roles/keycloak/README.md:| keycloak_log_collect_enabled | false | Переключатель сбора логов агентом vector |roles/nexus/README.md:| nexus_log_collect_enabled | false | Флаг активации сбора логов |roles/oidc-proxy/README.md:| oidc_proxy_log_collect_enabled | false | Флаг активации сбора логов |roles/redis/README.md:| redis_log_collect_enabled | false | Переключатель сбора логов агентом vector |roles/samsara/README.md:| samsara_log_collect_enabled | false | Переключатель сбора логов агентом vector |roles/zalando/README.md:| zalando_log_collect_enabled | false | Переключатель сбора логов агентом vector |
Изменения применяются после генерации Inventory и запуска плейбука playbooks/data-plane.yaml для роли.
Настройка уровня логирования поддерживается для компонентов Samsara и Nexus.
Для Samsara укажите в файле answers_file.yaml:
answers_raw_custom_params:samsara_logger_level: "INFO"
Для Nexus укажите в файле answers_file.yaml:
answers_raw_custom_params:nexus_log_level: "INFO"
Начиная с версии 1.7.0, доступен сбор метрик с подов приложений на базе VMAgent.
VMAgent устанавливается опционально и выключен по умолчанию.
Для его установки добавьте в файле answers_file.yaml:
answers_raw_custom_params:vmagent_enable: truevmagent_install: true
Все доступные параметры для настройки указаны в файле roles/vmagent/README.md.
Пример настройки для отправки метрик во внешнюю систему сбора метрик:
answers_raw_custom_params:vmagent_remote_write_list:- url: http://victoria-metrics.example.com/api/v1/write
Чтобы включить сбор метрик компонента Samsara, дополнительно добавьте в файле answers_file.yaml:
answers_raw_custom_params:samsara_metrics_scrape_enabled: true
Если в кластере Kubernetes не установлен класс хранения по умолчанию или нужно изменить это значение, задайте класс хранения в соответствующих переменных файла answers_file.yaml:
answers_raw_custom_params:nexus_storage_class: "storage-class-name"pgadmin_storage_class: "storage-class-name"redis_master_pv_storage_class: "storage-class-name"samsara_temp_storage_class_name: "storage-class-name"sonarqube_persistent_storage_class: "storage-class-name"zalando_pg_cluster_storage_class: "storage-class-name"
Чтобы указать почту для обращения в техническую поддержку, заполните следующий параметр в файле answers_file.yaml:
answers_raw_custom_params:front_env_support_email: support@example.com
Доменные имена сервисов, которые используются по умолчанию, заданы в параметрах секции all_dns_records_extra:
all_dns_records_default:portal: "portal.{{ all_domain }}"gitlab: "gitlab.{{ all_domain }}"keycloak: "keycloak.{{ all_domain }}"nexus: "nx.{{ all_domain }}"nexus_anonymous: "nxa.{{ all_domain }}"pgadmin: "pgadmin.{{ all_domain }}"sonarqube: "sonarqube.{{ all_domain }}"vector_aggregator: "vector-aggregator.{{ all_domain }}"
Изменить эти значения можно через через переменную all_dns_records_extra.
Пример переопределения доменного имени для компонента gitlab с сохранением поддоменной части в файле answers_file.yaml:
answers_raw_custom_params:all_dns_records_extra:gitlab: "{% raw %}code.{{ all_domain }}{% endraw %}"
В этом примере доменное имя gitlab.mydomain.ru заменяется на code.mydomain.ru.
-
Создайте сервисную учетную запись в TeamStorm, если она еще не создана (подробнее — в разделе Внешние интеграции). После создания вы получите токен TeamStorm.
-
Зашифруйте токен TeamStorm с помощью Ansible Vault и сохраните его в переменной
samsara_teamstorm_token:$ ansible-vault encrypt_string --vault-password-file /shepherd/.env/<ФАЙЛ_С_ПАРОЛЕМ_ДЛЯ_VAULT>` --name samsara_teamstorm_token "<ТОКЕН_TEAMSTORM>" -
Зашифрованное значение укажите в файле
/shepherd/inventories/<ИМЯ_INVENTORY>/group_vars/samsara/secrets_custom.yaml. -
Запустите развертывание c тегом
–tags samsara-roleдля настройки токена на бэкенде VK Dev Platform (подробнее — в разделе Запуск развертывания отдельной роли).
-
Создайте сервисную учетную запись в Test IT, если она еще не создана (подробнее — в разделе Внешние интеграции). После создания вы получите токен Test IT.
-
Зашифруйте токен Test IT с помощью Ansible Vault и сохраните его в переменной
samsara_testit_token:$ ansible-vault encrypt_string --vault-password-file /shepherd/.env/<ФАЙЛ_С_ПАРОЛЕМ_ДЛЯ_VAULT>` --name samsara_testit_token "<ТОКЕН_TEST_IT>" -
Зашифрованное значение укажите в файле
/shepherd/inventories/<ИМЯ_INVENTORY>/group_vars/samsara/secrets_custom.yaml. -
Запустите развертывание c тегом
–tags samsara-roleдля настройки токена на бэкенде VK Dev Platform (подробнее — в разделе Запуск развертывания отдельной роли).