Конфигурация модуля osmax-observer
Конфигурация модуля osmax-observer выполняется в файле application.properties, помещенном в каталог /opt/osmax-observer. Файл создается автоматически при установке deb-/rpm-пакета osmax-observer и содержит значения по умолчанию или примеры значений.
Перед запуском systemd-службы osmax-observer измените права доступа к конфигурационному файлу, предоставив доступ только для пользователя, от имени которого она будет запускаться.
|
Пример конфигурационного файла
## This is an example of `application.properties` file as main configuration file for osmax-observer backend
###############################################################################
# HTTP server properties section #
###############################################################################
## Main application port
quarkus.http.port=8083
###############################################################################
# SSL configuration section. #
###############################################################################
## To enable serving requests via HTTPS uncomment the following parameters:
#quarkus.http.insecure-requests=disabled
#quarkus.http.ssl-port=8082
#quarkus.http.ssl.certificate.key-store-file=/opt/osmax-observer/keystore.jks
#quarkus.http.ssl.certificate.key-store-password=keystore@12345
###############################################################################
# REST clients common configuration #
###############################################################################
## SSL connection parameters sections.
## To enable accessing REST endpoints via HTTPS uncomment two following parameters:
#quarkus.rest-client.trust-store=/etc/ssl/certs/java/cacerts
#quarkus.rest-client.trust-store-password=changeit
## Optionally if the custom truststore is used:
## To change the format use one of JKS, JCEKS, P12, PKCS12, PFX. Default format is JKS
#quarkus.rest-client.trust-store-type=PKCS12
## For disabling SSL connection verification you can use option below
#quarkus.rest-client.remote-access.trust-all=true
###############################################################################
# Database properties section #
###############################################################################
## Common configuration for datasources
quarkus.datasource.username=<db-username>
quarkus.datasource.password=<db-password>
## Reactive datasource configuration for app
quarkus.datasource.reactive.url=postgresql://<db-host>:<db-port>/<db-name>
## Datasource configuration for Liquibase
quarkus.datasource.jdbc.url=jdbc:postgresql://<db-host>:<db-port>/<db-name>
## If you need to specify multiple datasource connections for load-balancing or working with clustered db use the syntax below
#quarkus.datasource."osmax_observer_db".reactive.url=postgresql://host1:5432/osmax_observer,postgresql://host2:5432/osmax_observer,postgresql://host3:5432/osmax_observer
## Or this can also be written with indexed property syntax
#quarkus.datasource."osmax_observer_db".reactive.url[0]=postgresql://host1:5432/osmax_observer
#quarkus.datasource."osmax_observer_db".reactive.url[1]=postgresql://host2:5432/osmax_observer
#quarkus.datasource."osmax_observer_db".reactive.url[2]=postgresql://host3:5432/osmax_observer
## Liquibase parameters which are used in changelog files
quarkus.liquibase.change-log-parameters.index_tablespace=pg_default
quarkus.liquibase.change-log-parameters.data_tablespace=pg_default
###############################################################################
# Kafka integration section #
###############################################################################
mp.messaging.connector.smallrye-kafka.bootstrap.servers=<kafka-host>:<kafka-port>
mp.messaging.incoming.events.topic=osmax-observer.events
mp.messaging.incoming.metrics.topic=osmax-observer.metrics
## Kafka SSL connection parameters section.
## To enable SSL connection mode uncomment three following parameters:
#mp.messaging.connector.smallrye-kafka.security.protocol=SSL
#mp.messaging.connector.smallrye-kafka.ssl.truststore.location=/etc/ssl/certs/java/cacerts
#mp.messaging.connector.smallrye-kafka.ssl.truststore.password=changeit
## Optionally if the custom truststore is used:
## To change the format use one of JKS, JCEKS, P12, PKCS12, PFX. Default format is JKS
#mp.messaging.connector.smallrye-kafka.ssl.truststore.type=PKCS12
## To enable mutual TLS connection mode uncomment three following parameters, along with configuration above:
#mp.messaging.connector.smallrye-kafka.ssl.keystore.location=/opt/osmax-observer/keystore.jks
#mp.messaging.connector.smallrye-kafka.ssl.keystore.password=keystore@12345
## Optionally if the custom keystore is used:
## To change the format use one of JKS, JCEKS, P12, PKCS12, PFX. Default format is JKS
#mp.messaging.connector.smallrye-kafka.ssl.keystore.type=PKCS12
###############################################################################
# Security section #
###############################################################################
## Enable/disable authentication
osmax.observer.security.authentication.enabled=true
## Enable/disable role-based authorization
osmax.observer.security.rbac.enabled=false
## osmax-core base url (source of user permissions info)
# Should be set even if osmax.observer.security.rbac.enabled is false
# To enable access via HTTPS use corresponding prefix in base url
# and configure REST client using REST clients common configuration section above
quarkus.rest-client."tech.inno.osmax.observer.common.security.OsmaxPermissionsService".url=<osmax-core base url>
## Kerberos authentication configuration section
## There are 2 alternative options for defining Kerberos credentials [principal realm, name and password]:
## 1) via setting values in properties directly
## 2) via setting path to keytab file
##
## Direct Kerberos credentials definition:
quarkus.kerberos.service-principal-name=<service_principal_name>
quarkus.kerberos.service-principal-realm=<service.domain>
quarkus.kerberos.service-principal-password=<service_principal_password>
## Direct Kerberos credentials definition for REST client, reuse service settings:
kerberos-client.user-principal-name=${quarkus.kerberos.service-principal-name}
kerberos-client.user-principal-password=${quarkus.kerberos.service-principal-password}
kerberos-client.user-principal-realm=${quarkus.kerberos.service-principal-realm}
kerberos-client.service-principal-name=${quarkus.kerberos.service-principal-name}
## Kerberos keytab file definition:
#quarkus.kerberos.keytab-path=</path/to/keytab/file>
#kerberos-client.keytab-path=</path/to/keytab/file>
## Enables Kerberos authentication debug mode
#quarkus.kerberos.debug=true
#kerberos-client.debug=true
## REST client debug
#quarkus.rest-client.logging.scope=request-response
#quarkus.rest-client.logging.body-limit=50
#quarkus.log.category."org.jboss.resteasy.reactive.client.logging".level=DEBUG
###############################################################################
# Logging section #
###############################################################################
# Common logging config
quarkus.log.file.enable=true
quarkus.log.json.file.enable=true
quarkus.log.json.console.enable=false
# Json log format config
quarkus.log.json.fields.mdc.flat-fields=true
quarkus.log.json.fields.timestamp.date-format=yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
quarkus.log.json.fields.timestamp.zone-id=UTC
# File logging config
quarkus.log.file.path=/var/log/osmax/observer/osmax-observer.log
quarkus.log.file.rotation.max-file-size=10M
quarkus.log.file.rotation.max-backup-index=5
quarkus.log.file.rotation.file-suffix=.yyyy-MM-dd.gz
Для корректной работы продукта задайте пользовательские значения параметров, описанные в таблице ниже.
Подключение к HTTP-серверу
| Наименование | Описание | Значение по умолчанию/Шаблон значения | Пример значения |
|---|---|---|---|
|
Основной порт подключения |
|
|
Подключение к HTTPS-серверу
| Настройки, описанные в разделе, являются опциональными и используются, только при подключении по протоколу SSL. |
| Наименование | Описание | Значение по умолчанию/Шаблон значения | Пример значения |
|---|---|---|---|
|
Возможные значения:
|
|
|
|
Порт для подключения к HTTPS-серверу |
|
|
|
Путь к хранилищу (keystore-файлу), где хранятся закрытые ключи и сертификаты, необходимые для установки защищенного HTTPS-соединения |
|
|
|
Пароль для доступа к keystore-файлу |
|
Настройки REST-клиентов
| Настройки, описанные в разделе, являются опциональными и используются, только при подключении по протоколу SSL. |
| Наименование | Описание | Значение по умолчанию/Шаблон значения | Пример значения |
|---|---|---|---|
|
Путь к файлу хранилища доверенных сертификатов (truststore), который содержит сертификаты доверенных центров сертификации |
|
|
|
Пароль для доступа к хранилищу доверенных сертификатов |
|
|
|
Тип хранилища, например |
|
|
|
Включение/выключение проверки SSL-соединения. Возможные значения: |
|
Подключение к БД
| Наименование | Описание | Значение по умолчанию/Шаблон значения | Пример значения | ||
|---|---|---|---|---|---|
|
Имя пользователя для подключения к БД |
|
|
||
|
Пароль пользователя для подключения к БД |
|
|
||
|
Адрес подключения серверной части продукта к БД
|
postgresql://<db-host>:<db-port>/<db-name> |
postgresql://10.31.0.168:5432/osmax_observer |
||
|
Адрес подключения к БД. Параметр используется утилитой Liquibase для структуры схемы БД |
jdbc:postgresql://<db-host>:<db-port>/<db-name> |
jdbc:postgresql://10.31.0.168:5432/osmax_observer |
||
|
Наименование схемы БД. Параметр используется утилитой Liquibase для актуализации схемы БД |
|
|
||
|
Таблица пространства имен (tablespace) для индексов, создаваемых Liquibase |
|
|
||
|
Таблица пространства имен (tablespace) для данных, создаваемых Liquibase |
|
|
Интеграция с Apache Kafka
| Наименование | Описание | Значение по умолчанию/Шаблон значения | Пример значения |
|---|---|---|---|
|
Адрес сервера для подключения к брокеру Apache Kafka, который используется для получения сообщений от наблюдаемых компонентов |
|
|
|
Топик Apache Kafka, для входящих сообщений с событиями от наблюдаемых компонентов |
|
|
|
Топик Apache Kafka, для входящих сообщений с метриками от наблюдаемых компонентов |
|
|
Настройка SSL-соединения с Apache Kafka
| Параметры из данного блока являются опциональными и задаются, только если требуется SSL для Apache Kafka. |
| Наименование | Описание | Значение по умолчанию/Шаблон значения | Пример значения |
|---|---|---|---|
|
SSL-протокол для защищенного соединения |
|
|
|
Путь к файлу с сертификатами в хранилище доверенных сертификатов (truststore) |
|
|
|
Пароль для доступа к хранилищу доверенных сертификатов |
|
|
|
Тип хранилища, например |
|
|
|
Путь к файлу с закрытыми ключами и сертификатами клиента в хранилище ключей (keystore) |
|
|
|
Пароль для доступа к хранилищу ключей |
|
|
|
Тип хранилища, например |
|
Аутентификация и авторизация
| Наименование | Описание | Значение по умолчанию/Шаблон значения | Пример значения |
|---|---|---|---|
|
Включение/выключение аутентификации. Возможные значения: |
|
|
|
Включение/выключение авторизации RBAC |
|
|
|
Базовый URL |
|
|
|
Имя принципала для аутентификации Kerberos |
|
|
|
Наименование области безопасности (realm) принципала |
|
|
|
Пароль принципала |
|
|
|
Переиспользуйте настройки для прямого указания имени принципала для аутентификации Kerberos для REST-клиента |
${quarkus.kerberos.service-principal-name}
|
|
|
Переиспользуйте настройки для прямого указания наименования области безопасности (realm) принципала для аутентификации Kerberos для REST-клиента |
${quarkus.kerberos.service-principal-password}
|
|
|
Переиспользуйте настройки для прямого указания пароля принципала для аутентификации Kerberos для REST-клиента |
${quarkus.kerberos.service-principal-realm}
|
|
|
Переиспользуйте настройки для прямого указания имени принципала для аутентификации Kerberos для REST-клиента |
${quarkus.kerberos.service-principal-name}
|
|
|
(Опциональный параметр) путь к keytab-файлу, который содержит зашифрованные ключи и сертификаты, необходимые для аутентификации в домене |
|
|
|
(Опциональный параметр) альтернативный путь к keytab-файлу для клиента Kerberos |
|
|
|
(Опциональный параметр) включение/выключение режима отладки для аутентификации Kerberos. Возможные значения: |
|
|
|
(Опциональный параметр) включение/выключение режима отладки для аутентификации Kerberos. Возможные значения: |
|
|
|
Уровень логирования для внутреннего REST-клиента, который записывает информацию о запросах и ответах |
|
|
|
Размер тела запроса/ответа |
|
|
|
Уровень логирования для пакета |
|
Логирование
| Наименование | Описание | Значение по умолчанию/Шаблон значения | Пример значения |
|---|---|---|---|
|
Включение/выключение логирования в файл. Возможные значения: |
|
|
|
Включение/выключение форматирования логов в JSON при записи в файл. Возможные значения: |
|
|
|
Включение/выключение форматирования логов в JSON при выводе в консоль. Возможные значения: |
|
|
|
Включение/выключение записи контекста MDC (Mapped Diagnostic Context) в плоском формате. Возможные значения: |
|
|
|
Формат даты и времени для поля timestamp в JSON |
yyyy-MM-dd'T'HH:mm:ss.SSS'Z' |
yyyy-MM-dd'T'HH:mm:ss.SSS'Z' |
|
Часовой пояс для поля timestamp в JSON |
|
|
|
Путь для сохранения файлов с логами продукта |
|
|
|
Максимальный размер одного файла с логами, после чего будет произведена ротация (создан следующий файл и продолжена запись) |
|
|
|
Предельное количество сохраняемых файлов с логами при ротации |
|
|
|
Суффикс для имен файлов логов после их ротации |
|
|
|
Для настройки наблюдения за экземплярами компонент выполните инструкции из раздела «Настройки наблюдаемых компонентов для передачи значений метрик в osmax-observer». |