2. Конфигурация утилиты Backup manager (application.yml)
Файл application.yml – основной конфигурационный файл утилиты, в котором задана её логика и порядок работы:
В конфигурации утилиты сохранены:
путь к DTM-tools и параметры необходимые для работы утилиты DTM-tools:
маска топиков для бекапирования данных СУБД backend.backup.(datamart);
адрес Prostore (с переопределением через команду запуска);
адрес Kafka и имена топиков для:
передачи команд модулям адаптера;
получения статусов модулей адаптера;
бекапирования данных бекенда Витрины;
бекапирования данных модулей адаптеров;
путь к рабочей директории резервного копирования (доступный файловому коннектору) с переопределением через команду запуска;
хранимый объем топика (значение по умолчанию 1Тб);
время хранения топиков бекапа (значение по умолчанию 3 суток).
3. Пример файла application.yml
В конфигурационном файле следует задавать только те настройки, которые необходимы для решения текущих бизнес-задач.
logging:
level:
org.springframework: OFF
org.apache: OFF
ru.itone.dtm.BackupApplicationKt: OFF
spring:
main:
banner-mode: OFF
config:
dtmToolsPath: ${BM_DTM_TOOLS_PATH:./}
prostorePath: ${BM_PROSTORE_PATH:localhost:9094}
kafkaBrokers: ${BM_KAFKA_BROKERS:localhost1:9092, localhost2:9092}
backupDir: ${BM_BACKUP_DIR:./backup}
backupArchive: ${BM_BACKUP_ARCHIVE:./backup.zip}
adapterBackupTimeout: ${BM_ADAPTER_BACKUP_TIMEOUT:1}s
topic:
adapterCommand: ${BM_ADAPTER_COMMAND_TOPIC:adapter.command}
adapterCommandBroadcast: ${BM_ADAPTER_COMMAND_BROADCAST_TOPIC:adapter.command.broadcast}
adapterStatus: ${BM_ADAPTER_STATUS_TOPIC:adapter.status}
adapterBackup: ${BM_ADAPTER_BACKUP_TOPIC:adapter.backup}
backendBackupPrefix: ${BM_BACKEND_BACKUP_TOPIC_PREF:backend.backup.}
backendBackupRetentionBytes: ${BM_BACKEND_BACKUP_TOPIC_RETENTION_BYTES:1000000000000}
backendBackupRetentionMs: ${BM_BACKEND_BACKUP_TOPIC_RETENTION_MS:259200000}
initializationStatusTimeout: ${BM_MODULES_WAIT_INIT_TIMEOUT:15}s
executionStatusTimeout: ${BM_MODULES_WAIT_EXECUTE_TIMEOUT:120}s
backup:
mode: [rest, kafka] # kafka, rest
rest-services:
counter-provider: localhost:9000/backup
rest-uploader: localhost:8081/backup
4. Параметры конфигурации
Настройка конфигурации Backup manager осуществляется путем редактирования параметров настроек в
файле application.yml, где настраиваются секции:
logging- настраивается логирование работы модуля;spring- настройки фреймворка Spring;config- указываются настройки утилиты;backup- бекапирования данных СУБД.
4.1. Секция logging
В секции logging настраивается логирование работы модуля
Например:
logging:
level:
org.springframework: OFF
org.apache: OFF
ru.itone.dtm.BackupApplicationKt: OFF
Параметры настроек
org.springframework- логирование фреймворка Spring, напримерOFF;org.apache- логирование Apache, напримерOFF;ru.itone.dtm.BackupApplicationKt- логирование утилиты, напримерOFF.
4.2. Секция spring
В секции spring указываются настройки фреймворка Spring.
Например:
spring:
main:
banner-mode: OFF
Параметры настроек
banner-mode- режим баннера, например:OFF.
4.3. Секция config
В секции config указываются настройки утилиты.
Например:
config:
dtmToolsPath: ${BM_DTM_TOOLS_PATH:./}
prostorePath: ${BM_PROSTORE_PATH:localhost:9094}
kafkaBrokers: ${BM_KAFKA_BROKERS:localhost1:9092, localhost2:9092}
backupDir: ${BM_BACKUP_DIR:./backup}
backupArchive: ${BM_BACKUP_ARCHIVE:./backup.zip}
adapterBackupTimeout: ${BM_ADAPTER_BACKUP_TIMEOUT:1}
topic:
adapterCommand: ${BM_ADAPTER_COMMAND_TOPIC:adapter.command}
adapterCommandBroadcast: ${BM_ADAPTER_COMMAND_BROADCAST_TOPIC:adapter.command.broadcast}
adapterStatus: ${BM_ADAPTER_STATUS_TOPIC:adapter.status}
adapterBackup: ${BM_ADAPTER_BACKUP_TOPIC:adapter.backup}
backendBackupPrefix: ${BM_BACKEND_BACKUP_TOPIC_PREF:backend.backup.}
backendBackupRetentionBytes: ${BM_BACKEND_BACKUP_TOPIC_RETENTION_BYTES:1000000000000}
backendBackupRetentionMs: ${BM_BACKEND_BACKUP_TOPIC_RETENTION_MS:259200000}
initializationStatusTimeout: ${BM_MODULES_WAIT_INIT_TIMEOUT:15}
executionStatusTimeout: ${BM_MODULES_WAIT_EXECUTE_TIMEOUT:120}
Параметры настроек
dtmToolsPath- адрес dtmTools, например:BM_DTM_TOOLS_PATH:./;prostorePath- адрес Prostore, например:BM_PROSTORE_PATH:localhost:9094;kafkaBrokers- адрес брокеров Kafka, например:BM_KAFKA_BROKERS:localhost1:9092, localhost2:9092;backupDir- директория хранения файла бэкапа, например:BM_BACKUP_DIR:./backup;backupArchive- архив бэкапа, например:BM_BACKUP_ARCHIVE:./backup.zip;adapterBackupTimeout- тайм-аут резервного копирования, например:BM_ADAPTER_BACKUP_TIMEOUT:1;topic- имена топиков, например:adapterCommandBroadcast- передачи команд модулям адаптера, например:BM_ADAPTER_COMMAND_BROADCAST_TOPIC:adapter.command.broadcast;adapterStatus- получения статусов модулей адаптера, например:BM_ADAPTER_STATUS_TOPIC:adapter.status;aadapterBackup- бекапирования данных модулей адаптеров, например:BM_ADAPTER_BACKUP_TOPIC:adapter.backup.
4.4. Секция backup
В секции backup указываются настройки бэкапа Kafka или REST-сервисов.
Например:
backup:
mode: [rest, kafka] # kafka, rest
rest-services:
counter-provider: localhost:9000/backup
rest-uploader: localhost:8081/backup
Параметры настроек
mode- режим бэкапирования;counter-providerместонахождения файла бэкапа для сервиса Counter-provider;rest-uploader- местонахождения файла бэкапа для сервиса Rest-uploader.