Настройка интеграции Kintsugi (DBCM)#
Настройка интеграции Kintsugi (DBCM) делится на следующие части:
Настройка интеграции Kintsugi (DBCM) с внешними сервисами#
Для интеграции с внешними сервисами выполните следующие этапы настройки:
HashiCorp Vault/Secret Management System (далее – SecMan).
Для завершения настройки интеграции произведите конфигурацию сетевого доступа для взаимодействия с внешними сервисами.
Настройка интеграции с HashiCorp Vault/SecMan#
Примечание
Настройка интеграции с SecMan актуальна для HashiCorp Vault.
Задайте значение
trueпараметруglobal.vault.enabledв файлах./helm/application/kintsugi/values.yamlи./helm/application/istio-kintsugi/values.yaml.Примечание
Для файлов
./helm/application/kintsugi/values.yamlи./helm/application/istio-kintsugi/values.yaml:./– путьDBM-X.X.X-XX-distrib/DBM-X.X.X-XX-owned-distrib/package/conf/до каталогаhelm;имя каталога
packageможет изменяться наpackage 2илиpackage 3в зависимости от порядка распаковки архивов из папкиDBM-X.X.X-XX-owned-distrib.
Для корректной интеграции с SecMan сгенерируйте и добавьте секреты в KV-хранилище. Пример конфигурации секретов для SecMan.
Для доступа к хранилищу секретов определите следующие параметры в файлах с конфигурацией helm-шаблона:
Параметр
Пример
Описание
secman.storage_path/STORAGE_NAMEПуть к хранилищу секретов
secman.rolerole-ga-secman-kintsugiРоль для доступа к хранилищу секретов
secman.namespaceSECRET_NAMESPACEПространство для хранилища секретов
secman.hostsecman.kintsugi.example.testАдрес хранилища секретов
secman.port5555Порт хранилища секретов
secman.resolutionDNSСпособ разрешения доменного имени сервиса (DNS/STATIC)
Настройка интеграции с Istio#
Произведите настройку Istio согласно документации разработчика.
Примечание
При использовании Platform V Synapse Service Mesh инструкция по настройке Istio находится в документации продукта.
Если есть возможность подключить пространство имен к коммунальному Istio, при опциональном использовании Red Hat OpenShift, добавьте пространство имен в Service Mesh Member Role. Ссылка на документацию по OpenShift Service Mesh (опционально).
Настройка интеграции с Platform V Monitor (OPM): Business Services (BUSE)#
Интеграция с компонентом Business Services (BUSE) продукта Platform V Monitor (OPM) (далее – Business Services (BUSE)) предусматривает два режима:
с использованием сервиса OTT;
без использования сервиса OTT.
Режим функционирования задается значением параметра global.audit.enabled в файле ./helm/application/istio-kintsugi/values.yaml. В случае конфигурирования режима интеграции без использования сервиса OTT (global.audit.enabled: false) настройку параметров OTT производить не требуется.
Для настройки интеграции с сервисом Business Services (BUSE) выполните следующие шаги:
Сгенерируйте ключ для клиентского модуля Kintsugi.
Создайте запрос на сертификат клиентского модуля Kintsugi.
Подпишите запрос на сертификат клиентского модуля Kintsugi УЦ.
Получите сертификат публичного ключа сервиса ОТТ.
Инициализируйте параметры конфигурации Istio
./helm/application/istio-kintsugi/values.yaml:Параметр
Пример
Описание
global.secrets.ott.data.ca.crt.pem<СОДЕРЖИМОЕ СЕРТИФИКАТА>Сертификат доверенного УЦ
global.secrets.ott.data.kintsugi.crt.pem<СОДЕРЖИМОЕ СЕРТИФИКАТА>Сертификат клиентского модуля Kintsugi
global.secrets.ott.data.kintsugi.key.pem<СОДЕРЖИМОЕ КЛЮЧА СЕРТИФИКАТА>Ключ клиентского модуля Kintsugi
global.secrets.ott.data.ott.crt.pem<СОДЕРЖИМОЕ СЕРТИФИКАТА>Сертификат публичного ключа сервиса ОТТ
Определите параметры конфигурации Kintsugi (
./helm/application/kintsugi/values.yaml) из таблицы:Примечание
В данном случае приведены настройки для Business Services (BUSE) и One-Time Password (OTP) / OTT (OTTS), но они актуальны для любых других подобных сервисов.
Параметр
Пример
Описание
audit.hostkintsugi.example.testURL сервиса Business Services (BUSE)
Определите параметры конфигурации Istio (
./helm/application/istio-kintsugi/values.yaml) из таблицы:Параметр
Пример
Описание
global.audit.enabledtrueВключение/отключение сервиса аудита (true/false)
global.audit.hostkintsugi.example.testАдрес сервиса аудита
global.audit.ott.port5555Порт сервиса аудита
global.audit.resolutionDNSСпособ разрешения доменного имени сервиса (DNS/STATIC)
global.audit.metamodel/push/project/kintsugi/example/test/metamodelАдрес регистрации метамодели
global.audit.event/push/project/kintsugi/example/test/eventАдрес регистрации события аудита
global.audit.ott.enabledtrueВключение/отключение аудита событий OTT (true/false)
global.audit.ott.hostkintsugi.example.testАдрес сервиса аудита для регистрации событий OTT
global.audit.ott.port5555Порт сервиса аудита для регистрации событий OTT
istio-egressgateway.ott.auditProxyUrl/push/project/kintsugi/example/test/audit-pipe-ott-sidecarURL прокси аудита для OTT
istio-egressgateway.ott.moduleIDkintsugiИдентификатор модуля OTT
istio-egressgateway.ott.clientCertAliaskintsugiПсевдоним сертификата Kintsugi
istio-egressgateway.ott.authzRealmottRealm для авторизации в сервисе OTT
istio-egressgateway.ott.anonymousRequestsEnabled'false'Включение/отключение анонимных запросов
istio-egressgateway.ott.clientDefaultRealm'mmt'Realm клиента (по умолчанию)
istio-egressgateway.ott.serviceHosts'ott-server-host1:port'Адреса хостов сервиса OTT
Настройка интеграции с Platform V IAM SE (IAM): KeyCloak.SE (KCSE) и Platform V IAM SE (IAM): IAM Proxy (AUTH)#
Примечание
Ниже описана процедура интеграции с рекомендованными АО «СберТех» продуктами Platform V IAM SE: KeyCloak.SE (KCSE) и Platform V IAM SE: IAM Proxy (AUTH). На усмотрение пользователя может быть настроена интеграция с аналогичными по функциональности продуктами от других производителей.
Настройка интеграции веб-интерфейса Kintsugi с KeyCloak.SE (KCSE) и IAM Proxy (AUTH)#
Предварительная конфигурация KeyCloak.SE (KCSE) для веб-интерфейса Kintsugi#
Выполните предварительную конфигурацию KeyCloak.SE (KCSE):
Создайте Realm для веб-интерфейса Kintsugi.
В конфигурации ролей добавьте:
kintsugi-monitoring-manager;
kintsugi-user;
kintsugi-query-tool-user;
kintsugi-template-manager;
kintsugi-host-agent (при использовании Kintsugi agent (DBDA)).
В конфигурации пользователей добавьте необходимые учетные записи и назначьте им соответствующие роли.
Создайте нового клиента в KeyCloak.SE (KCSE) для последующей интеграции с IAM Proxy (AUTH).
Произведите конфигурацию клиента, типовая конфигурация представлена на рисунке:

Выполните генерацию секретов для созданного клиента:

Создайте
mapperдля передачи вaccess tokenиuserinfoобъектаgroups, содержащего данные о пользовательской роли (ролях):
Интеграция KeyCloak.SE (KCSE) и IAM Proxy (AUTH) веб-интерфейса Kintsugi#
Примечание
В процессе установки и конфигурации предполагается использование выделенного (некоммунального) экземпляра IAM Proxy (AUTH).
Для интеграции выполните конфигурацию IAM:
Настройте проксирование внешних маршрутов на узлы service mesh согласно примеру конфигурации для веб-интерфейса Kintsugi, хранящемуся в архиве
DBM-iam-conf-X.X.X-XX-distrib.zip.Настройте параметры интеграции с KeyCloak.SE (KCSE).
Пример конфигурации переменных окружения IAM Proxy (AUTH):
KEYCLOAK_ADMIN_SERVER: <DNS-ИМЯ КОНСОЛИ АДМИНИСТРАТОРА> PROXY_DNSNAME: proxy-kintsugi.kintsugi.example.test OIDC_POST_LOGON_BY_TOKEN_CALL_URI: 'True' KEYCLOAK_FRONT_DNS_NAME: <DNS-ИМЯ СЕРВИСА KEYCLOAK> OIDC_BASE_URL: 'https://keycloak-kintsugi.example' RDS_CLIENT_KEYALIAS: alias PROXY_SESSION_SECRET: examplesecret NAME: proxy-kintsugi PROXY_OIDC_CLIENT_SECRET: <СОДЕРЖИМОЕ СЕКРЕТА> STEND_NAME: kintsugi-iam-proxy OIDC_SSL_VERIFY: 'False' KEYCLOAK_HTTPS_PORT_ON_FRONTEND: '443' STEND_ABBR: dev OIDC_DISCOVERY_URL: >- https://keycloak-kintsugi.example/auth/realms/kintsugi/.well-known/openid-configuration PROXY_OIDC_CLIENT_ID: kintsugi PROXY_SESSION_IDLETIME: '180' PROXY_TO_BACKEND_ACCESS_TOKEN: 'True' OIDC_LOGOUT_URI: >- https://keycloak-kintsugi.example/auth/realms/kintsugi/protocol/openid-connect/logout STEND_TYPE: typeПримечание
Описание параметров конфигурации содержится в документации компонента IAM Proxy (AUTH).
Настройка интеграции клиентского приложения Kintsugi с KeyCloak.SE (KCSE) и IAM Proxy (AUTH)#
В случае установки Kintsugi, включающего клиентскую версию приложения (в конфигурационном файле ./helm/application/kintsugi/values.yaml у параметра slim.enabled установлено значение true), требуется конфигурация дополнительных экземпляров IAM Proxy (AUTH) и KeyCloak.SE (KCSE).
Предварительная конфигурация KeyCloak.SE (KCSE) для клиентского приложения Kintsugi#
Выполните предварительную конфигурацию KeyCloak.SE (KCSE), аналогично пункту «Предварительная конфигурация KeyCloak.SE (KCSE) для веб-интерфейса Kintsugi», использовав роль kintsugi-slim-user.
Интеграция KeyCloak.SE (KCSE) и IAM Proxy (AUTH) для клиентского приложения Kintsugi#
Примечание
В процессе установки и конфигурации предполагается использование выделенного (некоммунального) экземпляра IAM Proxy (AUTH).
Для интеграции выполните конфигурацию IAM:
Настройте проксирование внешних маршрутов на узлы service mesh согласно примеру конфигурации клиентского приложения для Microsoft Windows Kintsugi, хранящемуся в архиве
DBM-iam-conf-X.X.X-XX-distrib.zip.Настройте параметры интеграции с KeyCloak.SE (KCSE).
Пример конфигурации переменных окружения IAM Proxy (AUTH):
KEYCLOAK_ADMIN_SERVER: <DNS-ИМЯ КОНСОЛИ АДМИНИСТРАТОРА> PROXY_DNSNAME: proxy-kintsugi-slim.kintsugi.example.test OIDC_POST_LOGON_BY_TOKEN_CALL_URI: 'True' KEYCLOAK_FRONT_DNS_NAME: <DNS-ИМЯ СЕРВИСА KEYCLOAK> OIDC_BASE_URL: 'https://keycloak-kintsugi-slim.example' RDS_CLIENT_KEYALIAS: alias PROXY_SESSION_SECRET: >- examplesecret NAME: proxy-kintsugi-slim PROXY_OIDC_CLIENT_SECRET: <СОДЕРЖИМОЕ СЕКРЕТА> STEND_NAME: kintsugi-iam-proxy OIDC_SSL_VERIFY: 'False' KEYCLOAK_HTTPS_PORT_ON_FRONTEND: '443' STEND_ABBR: dev OIDC_DISCOVERY_URL: >- https://keycloak-kintsugi-slim.example/auth/realms/kintsugi-slim/.well-known/openid-configuration PROXY_OIDC_CLIENT_ID: kintsugi PROXY_SESSION_IDLETIME: '180' PROXY_TO_BACKEND_ACCESS_TOKEN: 'True' OIDC_LOGOUT_URI: >- https://keycloak-kintsugi-slim.example/auth/realms/kintsugi-slim/protocol/openid-connect/logout STEND_TYPE: typeПримечание
Описание параметров конфигурации содержится в документации компонента IAM Proxy (AUTH).
Настройка интеграции с системой логирования#
Интеграция с сервисом сбора и хранения лога Elasticsearch#
Для интеграции с сервисом сбора и хранения лога Elasticsearch:
Определите параметры конфигурации Kintsugi (
./helm/application/kintsugi/values.yaml) из таблицы:Параметр
Пример
Описание
elastic.enabledtrueУстанавливает Elasticsearch хранилищем логов (true/false)
elastic.hostelastic.kintsugi.example.testАдрес Elasticsearch
elastic.index_prefixkintsugiПрефикс, который будет использоваться для именования индексов Elasticsearch
elastic.ip10.xx.xx.xxIP-адрес Elasticsearch
elastic.port5555Порт Elasticsearch
Определите параметры конфигурации Istio (
./helm/application/istio-kinsugi/values.yaml) из таблицы:Параметр
Пример
Описание
global.elastic.enabledtrueУстанавливает Elasticsearch хранилищем логов (true/false)
global.elastic.host""Хост Elasticsearch
global.elastic.ip10.xx.xx.xxIP-адрес Elasticsearch
global.elastic.port5555Порт Elasticsearch
Выполните конфигурацию Elasticsearch (пример конфигурации кластера с одним узлом elasticsearch.yaml).
Для работы с кластером Elasticsearch в режиме безопасного соединения выполните шаги по конфигурации PKI, описанные в документации Elasticsearch.
Интеграция с сервисом сбора и хранения лога Apache Kafka#
Для интеграции с сервисом сбора и хранения лога Apache Kafka:
Определите параметры конфигурации Kintsugi (
./helm/application/kintsugi/values.yaml) из таблицы:Параметр
Пример
Описание
kafka.enabledtrueУстанавливает Apache Kafka хранилищем логов (true/false)
kafka.hosts.hostkafka.kintsugi.example.testАдрес хоста Apache Kafka
kafka.hosts.ip10.xx.xx.xxIP-адрес Apache Kafka
kafka.hosts.port5555Порт Apache Kafka
kafka.topictestИмя топика(ов) Apache Kafka
Определите параметры конфигурации Istio (
./helm/application/istio-kintsugi/values.yaml) из таблицы:Параметр
Пример
Описание
global.kafka.resolutionSTATICМетод разрешения хоста Kafka (
DNSилиSTATIC)global.kafka.kintsugi.hosts[]Список хостов Kafka для Kintsugi
global.kafka.alerting.hosts[]Список хостов Kafka для оповещений
global.kafka.alerting.producerReconnectionDelay15Задержка переподключения продюсера Kafka
Для работы с кластером Apache Kafka в режиме безопасного соединения выполните конфигурацию PKI.
Настройка интеграции с системой мониторинга#
Настройка интеграции с системой мониторинга Kintsugi рассматривается на примере конфигурации сервисов хранения данных о метриках TimescaleDB и VictoriaMetrics.
Системный мониторинг#
Для интеграции с Platform V Monitor требуется конфигурация агента по сбору метрик (не поставляется в составе дистрибутива).
Для этого необходимо использовать API-ресурс /metrics компонент Kintsugi.
Все полученные агентом данные могут быть визуализированы с помощью инструмента Grafana. Для этого импортируйте конфигурации панелей мониторинга.
Пример конфигурации:
Мониторинг БД#
Для интеграции с сервисом хранения данных о метриках TimescaleDB, определите параметры конфигурации Kintsugi (./helm/application/kintsugi/values.yaml) из таблицы:
Параметр |
Пример |
Описание |
|---|---|---|
|
|
Имя пользователя |
|
|
Адрес TimescaleDB |
|
|
Порт TimescaleDB |
|
|
Имя БД |
Для интеграции с сервисом хранения данных о метриках VictoriaMetrics, определите параметры конфигурации Kintsugi в файле (./helm/application/kintsugi/values.yaml):
Параметр |
Пример |
Описание |
|---|---|---|
|
|
Имя существующего секрета для VictoriaMetrics |
|
|
Данные аутентификации для чтения хранилища метрик VictoriaMetrics |
|
|
Данные аутентификации для записи в хранилище метрик VictoriaMetrics |
|
|
Включение/отключение VictoriaMetrics |
|
|
Хост VictoriaMetrics |
|
|
Список IP-адресов хранилища метрик VictoriaMetrics |
|
|
Порт хранилища метрик VictoriaMetrics |
|
|
Способ разрешения доменного имени сервиса (DNS/STATIC) |
Конфигурация сетевого доступа для взаимодействия с внешними сервисами#
Для интеграции с внешними сервисами подготовьте файл с конфигурацией helm-шаблона ./helm/application/istio-kintsugi/values.yaml.
Произведите конфигурацию следующих параметров:
Примечание
* Пример приведен для подключения к внешнемук сервису Elasticsearch
Параметр |
Пример |
Описание |
|---|---|---|
|
|
Устанавливает Elasticsearch хранилищем логов (true/false) |
|
|
Хост Elasticsearch |
|
|
IP-адрес Elasticsearch |
|
|
Порт Elasticsearch |
Настройка интеграции сервиса AgentWay с системой Kintsugi agent (DBDA)#
Для настройки интеграции сервиса AgentWay с системой Kintsugi agent (DBDA):
Настройте агент согласно разделу «Настройка интеграций» документа «Руководство по установке».
Выпустите персональный сертификат ТУЗ Kintsugi agent (DBDA) для аутентификации в сервисе Kintsugi.
Зарегистрируйте ТУЗ в OpenID провайдере.
Сконфигурируйте механизм аутентификации с поддержкой сертификатов в OpenID провайдере. Пример конфигурации механизма аутентификации агента с поддержкой сертификатов в Platform V IAM SE (IAM): KeyCloak.SE (KCSE) приведен в разделе «Настройка интеграций» документа «Руководство по установке».