Пример заполненного файла vars.yml#

Базовый файл#

Базовый файл — это файл Ansible/inventories/!EXAMPLE!/group_vars/all/vars.yml, содержащий минимальное количество настроек для корректной установки приложения.

Пример заполненного базового файла vars.yml:

ansible_user: artemis
ansible_password: "{{ ssh_password }}" # зашифрованный пароль в vault.yml

artemis:
  installdir: path/to/artemis # абсолютный путь на конечном сервере до приложения (брокер располагается в ./broker/)
  datadir: path/to/artemis-data # абсолютный путь до данных брокера
  logdir: path/to/logs # абсолютный путь до логов брокера
  cleanLog: true # очистка logdir при установке
  cleanData: true # очистка datadir при установке (чистая установка брокера)
  xms: 4G
  xmx: 4G
  global_max_size: 2G # The amount in bytes before all addresses are considered full. Half of the JVM's -Xmx
  password: "{{ artemis_web_ui_admin_password }}" # зашифрованный пароль в vault.yml
  keyStorePath: ssl/artemis.jks # путь от inventories/_стенд_/ до файла с keyStore
  keyStorePassword: "{{ artemis_jks_password }}" # зашифрованный пароль от keyStore
  keyPassword: "{{ artemis_jks_password }}" # зашифрованный пароль от ключа в хранилище
  trustStorePath: ssl/artemis.jks # путь от inventories/_стенд_/ до файла с trustStore
  trustStorePassword: "{{ artemis_jks_password }}" # зашифрованный пароль от trustStore
  persistence: false # хранение метаданных и сообщений на диске

Расширенный файл настроек#

Расширенный файл — файл Ansible/roles/artemis/defaults/main.yml, представляет собой пример всех изменяемых настроек со значениями «по умолчанию». Любую из указанных настроек можно перенести в свой vars.yml для переопределения ее значения.

tmp_dir: /tmp/installer # путь до временной директории на конечных серверах
wait_for_start: 120 # время (в секундах) на корректный старт приложения (падает с ошибкой при превышении)
check_correct_start: true # проверка корректности запуска приложения по наличию строки в логе
ansible_no_log: true # отключить вывод паролей в лог/output
#password_encoder_cli_path: encryptor-cli-2.3.1-fatjar.jar # утилита для шифрования паролей

# авторизация под другим пользователем и его паролем
#ansible_become: 1
#ansible_become_method: su
#ansible_become_flags: --login
#ansible_become_user: new_user
#ansible_become_pass: new_user_password

# авторизация под другим пользователем с использованием sudo (при добавлении в sudoers: user ALL=(new_user) NOPASSWD:ALL)
#ansible_become: 1
#ansible_become_user: new_user

artemis:
  distr: artemis.zip
  installdir: /opt/Apache/artemis # абсолютный путь на конечном сервере до приложения (брокер располагается в ./broker/)
  unpack: true # распаковываем дистрибутив при установке (можно отключить при использовании тегов install/broker_update для работы с уже распакованным в installdir дистрибуивом)
  #backup_installdir_to: /opt/Apache # если параметр задан, то делаем бэкап installdir в эту директорию (с именем artemis_backup.tar.gz). Не должно совпадать с installdir
  #backup_full_path: /opt/Apache/artemis_2022.09.12_backup.zip # полный путь до бекапа для использования с тегом backup_restore
  datadir: /artemis-data # абсолютный путь до данных брокера
  logdir: /logs # абсолютный путь до логов брокера
  service_name: artemis # имя используемого сервиса
  cleanLog: true # очистка logdir при установке
  cleanData: false # очистка datadir при установке (чистая установка брокера)
  clean_installdir_exclude: # список файлов для исключения при очистке installdir
    - broker
  xms: 3G
  xmx: 3G
  global_max_size: 1G # The amount in bytes before all addresses are considered full. Half of the JVM's -Xmx
#  Ставим xms=xmx примерно равное 75%-80% от выделенной памяти (если памяти много, то можно использовать верхнюю границу в 80%)
#  global_max_size примерно 30%-35% от выделенной памяти
#
#  т.е. для 16 гигов RAM имеем
#  xms = xmx = 16*0.8 = 13G
#  global_max_size = 16*0.3 = 5G
  cluster_connection:
    connector-ref: artemis # Ccылка на коннектор, который будет использоваться для подключения к кластеру
    reconnect-attempts: "120" # Количество попыток переподключения к кластеру в случае разрыва связи
    message-load-balancing: ON_DEMAND # Метод балансировки нагрузки при передаче сообщений между узлами кластера
    max-hops: "1" # Максимальное количество переходов (hops) между узлами кластера при маршрутизации сообщений
    # address: "" # Адрес, на который будут отправляться сообщения
    # check-period: "1000" # Периодичность проверки доступности узлов кластера (мс)
    # connection-ttl: "-1" # Время жизни соединения с узлом кластера ( -1 = не ограничено )
    # min-large-message-size: "102400" # Минимальный размер сообщения, при котором оно считается большим сообщением
    # call-timeout: "30000" # Время ожидания ответа при вызове удаленного метода (мс)
    # retry-interval: "1000" # Интервал между повторными попытками отправки сообщения при ошибке (мс)
    # retry-interval-multiplier: "1.0" # Множитель для интервала повторных попыток отправки сообщения
    # max-retry-interval: "60000" # Максимальный интервал между повторными попытками отправки сообщения (мс)
    # initial-connect-attempts: "-1" # Количество попыток подключения к узлу кластера при инициализации ( -1 = не ограничено )
    # use-duplicate-detection: "false" # Будет ли использоваться детектирование дубликатов сообщений
    # forward-when-no-consumers: "false" # Будут ли сообщения перенаправляться, если нет активных потребителей
    # confirmation-window-size: "1024" # Размер окна подтверждений при передаче сообщений
    # call-failover-timeout: "30000" # Время ожидания ответа при вызове удаленного метода при сбое (мс)
    # notification-interval: "10000" # Интервал между уведомлениями о доступности узлов кластера (мс)
    # notification-attempts: "-1" # Количество попыток отправки уведомления о доступности узлов кластера ( -1 = не ограничено )
  latency_plugin:
    enabled: false
    #settings:
    #  MODE зависит от флага enabled
    #  BROKER_LATENCY_METRIC_MODE: "ON"
    #  BROKER_LATENCY_METRIC_COORDINATES: address.example.#
    #  TIMESTAMP_HEADERS_MODE: ON_FOR_ALL # ON_FOR_ALL || ON_IF_EXIST || OFF
    #  IN_SERVER_TIMESTAMP_HEADER_NAME: TIMESTAMP_IN_SERVER
    #  FROM_SERVER_TIMESTAMP_HEADER_NAME: TIMESTAMP_FROM_SERVER
    #  MESSAGE_ID_HEADER_NAMES: MESSAGE_ID, JMS_MESSAGE_ID
  tracing_opentelemetry_plugin: # настройки плагина для трассировки сообщений (стандарт OpenTelemetry)
    enabled: false # включение плагина (параметр MODE в конфигурации)
#    settings:
#      OTEL_CONFIG_FILE: etc/tracing_opentelemetry.properties # Путь к файлу конфигурации OpenTelemetry
#      MESSAGE_ID_HEADER_NAMES: "headerName_1, headerName_2" # Имена заголовков сообщений в которых могут лежать идентификаторы сообщений при их отправке с клиента на брокер
#      HEADER_NAMES_FOR_LOG: "headerName" # Имена заголовков сообщений по которым будут выведены значения заголовков в поле лога `headers`
#      BLACK_LIST_ADDRESSES: "address_1, address_2, address 3" # Имена адресов по которым не будут выведены логи по событиям трассировки
#      WHITE_LIST_ADDRESSES: "address_21, address_22, address_33" # Имена адресов по которым будут выведены логи по событиям трассировки
#      DURABLE_HEADER_NAME: "_HDR_DURABLE_" # Имя заголовка в котором находится признак персистентности сообщения
#      TIMESTAMP_HEADERS_MODE: "ON_FOR_ALL"
#      ##  ON_FOR_ALL - Включено формирование заголовка для всех сообщений, присутствующих на брокере
#      ##  ON_IF_EXIST - Включено формирование заголовка, если во входящем сообщении есть хотя бы один из заголовок указанных в `FROM_SERVER_TIMESTAMP_HEADER_NAME`
#      ##  OFF - Выключено формирование заголовка
#      FROM_SERVER_TIMESTAMP_HEADER_NAME: "TIMESTAMP_FROM_SERVER" # Имя заголовка сообщения в котором указывается время, когда сообщение покинуло брокер
#    opentelemetry_properties: # конфигурация OpenTelemetry (для файла tracing_opentelemetry.properties)
#      otel.traces.exporter: otlp # тип экспортера
#      otel.exporter.otlp.endpoint: http://localhost:4317 # порт экспортера (например, Jaeger)
#      otel.service.name: artemis_opentelemetry # имя сервиса
  rate_limit:
    enabled: false
    #usersFilePath: "etc/cert-users.properties" # путь до файла со списком юзеров с сертификатами (по умолчанию cert-users.properties)
    #threadPoolSize: 4 # количество потоков, которые использует плагин для запуска quartz-джоб (необязательный параметр, техническая настройка. Дефолтное значение - Runtime.getRuntime.availableProcessors(). Если значение настройки меньше дефолтного значения, то будет установлено дефолтное значение)
    reloadCheckPeriodMs: 5000 # период(в ms) проверки изменения конфигурационного файла (необязательный параметр, дефолтное значение - 5000 ms)
    logMsgCreationPeriod: 5000 # период формирования лога(logLevel=INFO) о превышении порогового значения по скорости отправки сообщений(необязательный параметр, дефолтное значение - 5_000 ms)
    excludeAddresses: [] # наименования адресов, адресов::очередей, которые плагин будет игнорировать (необходимо явно прописать наименования как для адреса, так и для адрес::очередь, wildcard-синтаксис применять нельзя)
#      - "DLQ"
#      - "DLQ::DLQ"
#      - "ExpiryQueue"
#      - "ExpiryQueue::ExpiryQueue"
    producers: [] # список ограничений
#    - address: test # наименование адреса (обязательный параметр) (поддерживаются wildCard-шаблоны Artemis, FQQN-адреса)
#      threshold: 5 # пороговое значение в msg/sec (обязательный параметр)
#      delayMs: 2000 # период измерения скорости поступления сообщений на сервер от продюсера (необязательный параметр, дефолтное значение - 2000)
#      user: user_1 # имя продюсера, ассоциированное с продюсером на сервере (обязательный параметр)

  #backup_plugin: # конфигурация плагина по созданию бекапов
  #  enabled: false
  #  BROKER_DIR_PATH: "/opt/Apache/artemis" # Путь к каталогу с конфигурацией брокера, файлы из которого требуется забэкапить
  #  INCLUSION_RULES: "**" # Правила включения файлов исходного каталога в бэкап
  #  EXCLUSION_RULES: "" # Правила исключения файлов исходного каталога из бэкапа
  #  BACKUP_DIR_PATH: "/backup" # Путь к каталогу для сохранения бэкапов
  #  BACKUP_FILENAME_PATTERN: "backup.%d{yyyy-MM-dd.HH-mm-ss}.zip" # Шаблон имени файла архива с бэкапом
  #  TIMER_PERIOD_SEC: 86400 # Период времени срабатывания таймера в секундах
  #  RELOAD_CHECK_PERIOD_SEC: 600 # Период времени проверки факта перезагрузки конфигурации брокера в секундах
  #  DESCRIPTION_FILE_EXTENSION: json # Расширение файла с описанием бэкапа
  #  BACKUP_STORAGE_LIMIT: 30 # Максимальное количество бэкапов на хранении
  #  IS_PURGE_ON: "true" # Признак включения процедуры чистки бэкапов
  #  IS_BACKUP_TRIGGER_ON_CRITICAL_FAILURE: "false" # Признак включения триггера бэкапа по событию брокера CRITICAL FAILURE
  #  IS_BACKUP_TRIGGER_ON_REGISTERED: "false" # Признак включения триггера бэкапа по событию брокера REGISTERED
  #  IS_BACKUP_TRIGGER_ON_TIMER: "true" # Признак включения триггера бэкапа по таймеру
  #  IS_BACKUP_TRIGGER_ON_RELOAD: "false" # Признак включения триггера бэкапа по событию перезагрузки конфигурации брокера

  #config_log_plugin: # плагин логирования конфигурации брокера
  #  enabled: false
  #  IS_LOG_CORE_CONFIG: "true" # настройки ядра брокера
  #  IS_LOG_ADDRESS_QUEUES_CONFIG: "true" # настройки адресов и связанных с ними очередей
  #  IS_LOG_ADDRESS_SETTINGS_CONFIG: "true" # настройки адресов
  #  IS_LOG_SECURITY_SETTINGS_CONFIG: "true" # настройки ролей для адресов
  #  IS_LOG_DIVERT_SETTINGS_CONFIG: "true" # настройки перенаправлений сообщений с одного адреса на другой
  #  IS_PRETTY_LOG: "true" # вывод в удобочитаемом формате

  #metric_plugin: # плагин для формирования метрик по количеству сессий и подключений
  #  enabled: false
  #  CONNECTION_METRIC_TASK_DELAY_MS: 2000 # Интервал запуска таски по измерению кол-ва подключений, связанных с пользователем
  #  CONNECTION_METRIC_TASK_INIT_DELAY_MS: 4000 # Время инициализации таски подсчёта значений кол-ва подключений, связанных с пользователем

  encryption_plugin:
    enabled: false # активация плагина шифрования сообщений на брокере
    reloadCheckPeriodMs: 5000 # период (в ms) проверки изменения конфигурационного файла
    addresses: [] # наименование адресов или адрес:очередь, для которых будет проводиться шифрование сообщений (поддерживаются wildCard-шаблоны Artemis)
#      - "queues.test_1.Q1"
#      - "#::#"
    excludedAddresses: # наименование адресов или адрес:очередь, для которых НЕ будет проводиться шифрование сообщений (поддерживаются wildCard-шаблоны Artemis)
      - "DLQ"
      - "DLQ::DLQ"
      - "ExpiryQueue"
      - "ExpiryQueue::ExpiryQueue"
    msgIdHeaderNames: [] # наименования заголовков сообщений, в которых может находиться id сообщения
#      - "RqUid"
#      - "messageId"
    encodingClassName: ru.sbt.ss.password.AesGcmBaseEncryptor # Класс для шифрования/дешифрования сообщения
    encodingClassParameters: {} # Перечень параметров для класса шифрования в формате key: value
#      key1: value1
#      key2: value2
    hashAlgorithm: SHA-256 # Алгоритм вычисления хэш-суммы секрета
    secrets: # ключи для шифрования/дешифрования сообщения
      - secret: ./etc/encrypt.pass # путь до ключа для шифрования/дешифрования сообщения
        alias: file_secret # алиас ключа для указания в activeSecret
#      - secret: "vault:/my/store/path:secret_key" # путь до ключа в Vault для шифрования/дешифрования сообщения
#        alias: vault_secret # алиас ключа для указания в activeSecret
    activeSecret: file_secret # Активный секрет - секрет, с помощью которого проводится шифрование сообщений на брокере
    #encryptionMode: full # full или disk_only, выбор режима шифрования. По умолчанию - full
    #providerClassName: # имя класса криптопровайдера
  #connection_limiter_plugin: # если блок определен - создает конфиг и включает плагин, если нет - удаляет конфиг и выключает плагин
  #  enabled: false # обязательный. Определяет mode (on/off) в conf файле плагина
  #  #reload_check_period_ms: 1234 # опциональный. По умолчанию: 5000. Периодичность проверки планировщиком обнаружения изменений в файле конфигурации в миллисекундах
  #  #login_module_name: "CertLogin" # опциональный. По умолчанию: CertLogin. Наименование модуля, используемого для аутентификации пользователей, подключаемых через ssl-соединение с использованием ssl-сертификатов
  #  #user_connection_limit_default: 123 # опциональный. По умолчанию: -1. Значение по умолчанию лимита ограничения количества коннектов для пользователей
  #  #ip_address_connection_limit_default: 456 # опциональный. По умолчанию: -1. Значение по умолчанию лимита ограничения количества коннектов для ip-адресов
  #  #no_limits_users: # опциональный. По умолчанию: []. Перечень пользователей, на которых не будут действовать ограничения
  #  #  - "user_1"
  #  #  - "user_2"
  #  #no_limits_ip_addresses: # опциональный. По умолчанию: []. Перечень ip-адресов, на которые не будут действовать ограничения
  #  #  - "12.34.56.78"
  #  #user_limits: # опциональный. По умолчанию: []. Перечень лимитов на подключения для определенных пользователей
  #  #  - name: "user_3"
  #  #    connection_limit: 321
  #  #  - name: "user_4"
  #  #    connection_limit: 654
  #  #ip_address_limits: # опциональный. По умолчанию: []. Перечень лимитов на подключения для определенных ip-адресов
  #  #  - name: "21.43.65.87"
  #  #    connection_limit: 789

#  custom_loggers: # дополнительная настройка логирования
#    - name: org.apache.test # класс
#      level: warn # уровень логирования
  logback_kafka_appender:
    enable: false # включение механизма отправки логов в Kafka через logback
    topic: artemis_kafka # топик для системных логов
    never_block: false # блокировка работы приложения при недоступности Kafka (по умолчанию - блокируется, при true недоставленные сообщения в kafka отбрасываются)
    topic_tracing: artemis_kafka_tracing # топик для трейсинг логов
    never_block_tracing: false # блокировка работы приложения при недоступности Kafka (по умолчанию - блокируется, при true недоставленные сообщения в kafka отбрасываются)
    only_message_in_tracing: true # отправка в топик для трейсинга логов только тела сообщения в json формате
    retries: 3 # Количество переиницилизаций продьюсера
    interval: 1000 # Интервал между переиницилизациями в мс.
    multiplier: 1 # Множитель интервала переинициализации
    producer_configs: # настройка Kafka продюсера
      bootstrap.servers: 1.1.1.1:9093,2.2.2.2:9093
      security.protocol: PLAINTEXT
      #ssl.keystore.location: ssl/artemis.jks
      #ssl.keystore.password: _PLACEHOLDER_
      #ssl.key.password: _PLACEHOLDER_
      #ssl.truststore.location: ssl/artemis.jks
      #ssl.truststore.password: _PLACEHOLDER_
      #ssl.endpoint.identification.algorithm: ""
  user: admin # логин администратора
  #password: __PLACEHOLDER__ # пароль администратора, должен содержать спецсимвол, цифру, большую и маленькую буквы (длина не менее 12 символов)
  console_port: 8161 # порт для веб консоли
  #prometheus_port: 8162 # порт для prometheus метрик (доступ по эндпойнту /metrics, по умолчанию - выключен)
  data_port: 61616 # порт для подключения
  jmx_port: 1099 # порт для сбора метрик
  jmx_user: myuser # пользователь для метрик
  jmx_password: mypassword # пароль для метрик
  persistence: false # хранение метаданных и сообщений на диске
  redistribute_to_target_anycast_fqqn: true # включить (true) или выключить (false) патч редистрибуции сообщений, отправляемых в ANYCAST FQQN очереди (по умолчанию - true)
  ha_policy: scale-down # механизм scale-down или replication (настройка через is_master/is_slave в инвентори) при выводе ноды из топологии
  #keyStorePath: ssl/artemis.jks # путь от inventories/_стенд_/ до файла с keyStore
  #keyStorePassword: __PLACEHOLDER__ # пароль от keyStore
  #keyPassword: __PLACEHOLDER__ # пароль от ключа в хранилище
  #trustStorePath: ssl/artemis.jks # путь от inventories/_стенд_/ до файла с trustStore
  #trustStorePassword: __PLACEHOLDER__ # пароль от trustStore
  #super_user: CN=ArtemisCluster,O=SBT,L=Moscow,C=RU # DN из keyStorePath, берется автоматически. При использовании блока vault_configs или проигрывании плейбука ssl_rolling_update.yml - обязательно к заполнению
  enabled_protocols: TLSv1.2,TLSv1.3 # версии TLS протоколов
  without_dead_letter: false # создавать брокер без очереди/адреса DLQ
  without_expiry: true # создавать брокер без очереди/адреса ExpiryQueue
#  admins: # список DN администраторов доступа (для подключения к веб консоли)
#    - CN=admin, O=SberTech, C=RU
  default_max_connections: 50 # максимальное число соединений для пользователя по умолчанию
#  custom_max_connections: # переопределение максимального числа соединений для пользователя
#    - user: USER # алиас пользователя из cert-users.properties
#      max_connections: 10
  audit_configs:
    audit.service.class: ru.sbt.ss.artemis.audit.service.ArtemisLogAuditService # ArtemisLogAuditService или ArtemisHttpAuditService
    audit.service.url: http://localhost:8080 # URL для подключения к REST-endpoint системы аудита
    audit.service.verify.hostname: "false" # проверка серверного сертификата для REST-endpoint
    audit_service_module_id: Artemis_DEV # идентификатор отправляемых событий
    audit_service_module_version: 1.3 # версия метамодели аудита
    audit.service.metamodel: ./etc/audit-metamodel.yml # путь до метамодели аудита
    audit.service.send.metamodel: "true" # отправка метамодели аудита при старте приложения
    audit.service.send.authorise.success.audit.event: "true" # включение/выключение отправки аудит-событий успешной авторизации
    audit.service.send.authorise.error.audit.event: "true" # включение/выключение отправки аудит-событий неуспешной авторизации
    audit.service.pretty.print: "false" # вывод событий аудита в лог в удобочитаемом формате (true ТОЛЬКО при использовании ArtemisLogAuditService)
    audit.service.ignore.errors: "true" # игнорирование ошибок при отправке
    audit.service.request.timeout.ms: 15000 # время на отправку события

#    audit.service.ssl.enabled: "false" # использование SSL для подключения к REST-endpoint системы аудита
#    audit.service.ssl.keystore: /path/to/jks # путь до keystore хранилища
#    audit.service.ssl.keystore.password: pass # пароль от keystore хранилища
#    audit.service.ssl.key.password: pass # пароль от ключа в хранилище
#    audit.service.ssl.truststore: /path/to/jks # путь до truststore хранилища
#    audit.service.ssl.truststore.password: pass # пароль от truststore хранилища
#    audit.service.ssl.protocol: TLSv1.2 # используемая версия TLS
#    audit.service.encoding.class: ru.sbt.ss.password.BaseEncryptor # класс для шифрования паролей
#    audit.service.secret: file:./etc/encrypt.pass # путь до файла для шифрования паролей
#
#    audit.service.redelivery.enabled: "true" # включение режима переотправки недоставленных событий аудита (из-за недоступности)
#    audit.service.redelivery.interval.ms: 30000 # интервал попыток переотправки
#    audit.service.redelivery.initial.delay.ms: 10000 # первоначальная задержка перед переотправкой
#    audit.service.redelivery.buffers: file-buffer, memory # используемые буферы
#    audit.service.redelivery.file-buffer.type: file # тип буфера
#    audit.service.redelivery.file-buffer.file.name: /logs/audit-buffer.log # путь до файла с буфером недоставленных событий
#    audit.service.redelivery.file-buffer.max.size: 100m # максимальный размер файла
#    audit.service.redelivery.memory.type: queue # тип буфера
#    audit.service.redelivery.memory.max.size: 100m # максимальный размер в памяти
#
#    audit.service.dead.letter.redelivery.enabled: "true" # включение режима переотправки недоставленных событий аудита (из-за ошибок валидации)
#    audit.service.dead.letter.redelivery.buffers: file-buffer-deadletter # используемые буферы
#    audit.service.dead.letter.redelivery.file-buffer-deadletter.type: file # тип буфера
#    audit.service.dead.letter.redelivery.file-buffer-deadletter.file.name: /logs/audit-deadletter.log # путь до файла с буфером недоставленных событий
#    audit.service.dead.letter.redelivery.file-buffer-deadletter.max.size: 100m # максимальный размер файла
#  vault_audit_configs: # использование Vault для аудита
#    ssl.keystore.location: ssl/audit-vault-keystore.jks # Расположение хранилища сертификатов, полученных из HashiCorp Vault
#    ssl.keystore.mode: 600 # Права доступа к файлу хранилища сертификатов в POSIX формате, "644" или "w-r--r--"
#    ssl.truststore.location: ssl/audit-vault-truststore.jks # Расположение хранилища доверенных сертификатов, полученных из HashiCorp Vault
#    ssl.truststore.mode: 600 # Права доступа к файлу хранилища доверенных сертификатов в POSIX формате, "644" или "w-r--r--"
#    ssl.vault.address: "https://my.vault:8200/" # Адрес подключения к HashiCorp Vault, обязательный параметр
#    ssl.vault.tls.enable: "true" #  Включение протокола TLS при подключении к HashiCorp Vault
#    ssl.vault.tls.keystore.location: ssl/vault-client.jks # Расположение хранилища сертификатов для подключения к HashiCorp Vault
#    ssl.vault.tls.keystore.password: pass # Пароль от хранилища сертификатов для подключения к HashiCorp Vault
#    ssl.vault.tls.key.password: pass # Пароль от сертификата для подключения к HashiCorp Vault
#    ssl.vault.tls.truststore.location: ssl/vault-client.jks # Расположение хранилища доверенных сертификатов для подключения к HashiCorp Vault
#    ssl.vault.tls.truststore.password: pass # Пароль от хранилища доверенных сертификатов для подключения к HashiCorp Vault
#    ssl.vault.auth.type: APPROLE # Тип алгоритма аутентификации в HashiCorp Vault: approle, token, userpass, certificate
#    ssl.vault.auth.role.id: 4d980038-***-27d8d0ac2c8d # Идентификатор роли приложения при ssl.vault.auth.type=approle
#    ssl.vault.auth.secret.id: 1c7526d2-***-5e97eafbcf1d # Секрет роли приложения при ssl.vault.auth.type=approle
#    ssl.vault.pki.role.name: test1 # Имя роли в движке выпуска сертификатов в HashiCorp Vault, обязательный параметр
#    ssl.vault.pki.common.name: ArtemisAudit # Значение поля CN в выпускаемом сертификате
#    ssl.vault.pki.crl.enable: "true" # Проверка попадания сертификата в список отозванных
#    ssl.vault.secret.path: kv1/certstore # Путь до Key-Value хранилища с паролями для хранилищ сертификатов
#    ssl.vault.secret.key: key # Имя поля с паролем от ключа
#    ssl.vault.secret.keystore: keystore # Имя поля с паролем от хранилища сертификатов ssl.keystore.location
#    ssl.vault.secret.truststore: truststore # Имя поля с паролем от хранилища сертификатов ssl.truststore.location
#    ssl.vault.engine.version: 1 # Версия Key-Value хранилища секретов
#  vault_configs: # использование Vault для брокера
#    ssl.keystore.location: ssl/artemis-vault-keystore.jks # Расположение хранилища сертификатов, полученных из HashiCorp Vault
#    ssl.keystore.mode: 600 # Права доступа к файлу хранилища сертификатов в POSIX формате, "644" или "w-r--r--"
#    ssl.truststore.location: ssl/artemis-vault-truststore.jks # Расположение хранилища доверенных сертификатов, полученных из HashiCorp Vault
#    ssl.truststore.mode: 600 # Права доступа к файлу хранилища доверенных сертификатов в POSIX формате, "644" или "w-r--r--"
#    ssl.vault.address: "https://my.vault:8200/" # Адрес подключения к HashiCorp Vault, обязательный параметр
#    ssl.vault.tls.enable: "true" #  Включение протокола TLS при подключении к HashiCorp Vault
#    ssl.vault.tls.keystore.location: ssl/vault-client.jks # Расположение хранилища сертификатов для подключения к HashiCorp Vault
#    ssl.vault.tls.keystore.password: pass # Пароль от хранилища сертификатов для подключения к HashiCorp Vault
#    ssl.vault.tls.key.password: pass # Пароль от сертификата для подключения к HashiCorp Vault
#    ssl.vault.tls.truststore.location: ssl/vault-client.jks # Расположение хранилища доверенных сертификатов для подключения к HashiCorp Vault
#    ssl.vault.tls.truststore.password: pass # Пароль от хранилища доверенных сертификатов для подключения к HashiCorp Vault
#    ssl.vault.auth.type: APPROLE # Тип алгоритма аутентификации в HashiCorp Vault: approle, token, userpass, certificate
#    ssl.vault.auth.role.id: 4d980038-***-27d8d0ac2c8d # Идентификатор роли приложения при ssl.vault.auth.type=approle
#    ssl.vault.auth.secret.id: 1c7526d2-***-5e97eafbcf1d # Секрет роли приложения при ssl.vault.auth.type=approle
#    ssl.vault.pki.role.name: test1 # Имя роли в движке выпуска сертификатов в HashiCorp Vault, обязательный параметр
#    ssl.vault.pki.common.name: ArtemisServer # Значение поля CN в выпускаемом сертификате
#    ssl.vault.pki.crl.enable: "true" # Проверка попадания сертификата в список отозванных
#    ssl.vault.secret.path: kv1/certstore # Путь до Key-Value хранилища с паролями для хранилищ сертификатов
#    ssl.vault.secret.key: key # Имя поля с паролем от ключа
#    ssl.vault.secret.keystore: keystore # Имя поля с паролем от хранилища сертификатов ssl.keystore.location
#    ssl.vault.secret.truststore: truststore # Имя поля с паролем от хранилища сертификатов ssl.truststore.location
#    ssl.vault.engine.version: 1 # Версия Key-Value хранилища секретов
#    secret.artemis.cluster.password: vault:kv1/certstore:clusterPass # Путь до пароля кластера

#  xml_change:
#    - filename: /opt/Apache/artemis/broker/etc/broker.xml
#      changelist:
#        - xpath: /*[name()='configuration']/*[name()='core']/security-enabled
#          value: "false"

old_artemis: {} # для поддержки установки старых релизов (переменная is_new_release)

## опциональный блок назначения прав для custom_files
#custom_files:
#  permissions:
#    default_permission: '644'
#    custom_permissions:
#      - path: test1.txt # путь относительно директорий или roles/artemis/custom_files, или inventories/<my_inv>/custom_files/artemis, или inventories/<my_inv>/custom_files/<host>/artemis
#        permission: '600' # трехзначные в кавычках или без, четырехзначные (с 0 в начале) только в кавычках
#      - path: subdir/test2.txt
#        permission: '777'
#      - path: subdir/subsubdir/test3.txt
#        permission: '440'