...
Обратиться к контейнеру с микросервисом БД. Например (для версии 1.22):
Блок кода |
---|
language | bash |
---|
linenumbers | true |
---|
|
docker ps
b2a306a11313 hub.eltex-co.ru/iot/iot-double-web:1.22
7356ae9e78ca hub.eltex-co.ru/iot/iot-core:1.22
8ac05e3f4025 hub.eltex-co.ru/iot/iot-mqttbroker-mongo:1.22
aa97316118c3 hub.eltex-co.ru/softwlc/eltex-ngw:1.18
24b8b2632912 hub.eltex-co.ru/iot/iot-clickhouse-backup:1.22
8a6cb2fab0b6 hub.eltex-co.ru/iot/iot-olapservice:1.22
1ad497e3e9ff hub.eltex-co.ru/iot/iot-clickhouse-server:1.22
4b826bfc266e hub.eltex-co.ru/iot/iot-mongo5:1.22 |
...
В частности интересует контейнер iot-mongo
...
. Необходимо запустить сценарии из данного контейнера:
Блок кода |
---|
language | bash |
---|
linenumbers | true |
---|
|
docker exec -it 4b826bfc266eiot-mongo /etc/cron.daily/iot-broker-backupdb
docker exec -it 4b826bfc266eiot-mongo /etc/cron.daily/iot-backupdb |
...
Блок кода |
---|
title | Распаковка архива с конфигурацией |
---|
|
tar -C /etc -xvf ansible-iot-1.23.tar.gz |
для 1.25
Блок кода |
---|
title | Распаковка архива с конфигурацией |
---|
|
tar -C /etc -xvf ansible-iot-1.25.tar.gz |
Подсказка |
---|
Для получения файлов конфигурации обратитесь с запросом в Коммерческий отдел ЭЛТЕКС. |
5. Отредактируйте файлы конфигурации согласно основной документации
6. Перед выполнением следующих действий необходимо уточнить наличие/поддержку инструкций AVX на CPU сервера. Если поддержка отсутствует, то в настройках Ansible (платформы), т.е. vars/default.yml изменить параметр:
...
Блок кода |
---|
language | yml |
---|
title | Содержимое конфигурационного файла vars/service_parameters.yml |
---|
linenumbers | true |
---|
|
db_mapped_port: 27017
olapservice_mapped_port: 8023
olapservice_db_mapped_port: 8123
core_api_mapped_port: 8071
core_api_ssl_mapped_port: 8073
iot_core_log_level: debug
export_mongo_port: true
export_olapservice_port: true
export_olapservice_db_port: true |
7. Для восстановления из резервной копии БД необходимо предварительно подготовить и проинсталлировать необходимо ПО, в частности если ранее не было установлено ПО mongo-tools и/или mongodb-clients (если ранее использовалась mongodb как внешний сервис на сервере данный шаг не требуется для выполнения):
Блок кода |
---|
language | bash |
---|
linenumbers | true |
---|
|
apt update
apt install mongo-tools mongodb-clients |
Установка новой версии платформы
...
Блок кода |
---|
language | bash |
---|
linenumbers | true |
---|
|
ansible-playbook install.yml |
для 1.25
Блок кода |
---|
language | bash |
---|
linenumbers | true |
---|
|
ansible-playbook install_iot.yml |
2. Дождаться окончания операции. Проверить что все сервисы запущены:
Блок кода |
---|
language | bash |
---|
linenumbers | true |
---|
|
docker ps
b2a306a11313 hub.eltex-co.ru/iot/iot-double-web:1.23
7356ae9e78ca hub.eltex-co.ru/iot/iot-core:1.23
8ac05e3f4025 hub.eltex-co.ru/iot/iot-mqttbroker-mongo:1.23
aa97316118c3 hub.eltex-co.ru/softwlc/eltex-ngw:1.18
24b8b2632912 hub.eltex-co.ru/iot/iot-clickhouse-backup:1.23
8a6cb2fab0b6 hub.eltex-co.ru/iot/iot-olapservice:1.23
1ad497e3e9ff hub.eltex-co.ru/iot/iot-clickhouse-server:1.23
4b826bfc266e hub.eltex-co.ru/iot/iot-mongo5:1.23
docker exec -it 4b826bfc266e /etc/cron.daily/iot-broker-backupdb
docker exec -it 4b826bfc266e /etc/cron.daily/iot-backupdb |
Перенос резервной копии БД
...
Блок кода |
---|
language | bash |
---|
linenumbers | true |
---|
|
ansible-playbook services_stop.yml --extra-vars '{"services":["core", "broker", "olapservice"]}' |
для 1.25
Блок кода |
---|
language | bash |
---|
linenumbers | true |
---|
|
ansible-playbook stop_iot.yml --extra-vars '{"services":["core", "broker", "olapservice"]}' |
2. Восстановить записи из резервных копий mongo, например:
Блок кода |
---|
language | bash |
---|
linenumbers | true |
---|
|
mongorestore --host=127.0.0.1 --port=27017 --db=iot-core --noIndexRestore --drop var/backups/mongobackups/iot-core/2022-04-18_04-26/iot-core
mongorestore --host=127.0.0.1 --port=27017 --db=iot-events --noIndexRestore --drop var/backups/mongobackups/iot-events/2022-04-18_04-26/iot-events
mongorestore --host=127.0.0.1 --port=27017 --db=iot-broker --noIndexRestore --drop var/backups/mongobackups/iot-broker/2022-04-18_04-26/iot-broker
mongorestore --host=127.0.0.1 --port=27017 --db=iot-licenses --noIndexRestore --drop var/backups/mongobackups/iot-licenses/2022-04-18_04-26/iot-licenses |
Примечание |
---|
Для восстановления записей из резервных копий olap (история событий) необходимо выполнить дополнительно шаги согласно документации. В частности скопировать бэкапы из /storage/iot/olapdb/clickhouse-backup/archives/ и выполнить перенос согласно п.п.8 документации. |
3. Перезапустить все микросервисы:
Блок кода |
---|
language | bash |
---|
linenumbers | true |
---|
|
ansible-playbook services_stop.yml
ansible-playbook install.yml |
для 1.25
Блок кода |
---|
language | bash |
---|
linenumbers | true |
---|
|
ansible-playbook stop_iot.yml
ansible-playbook install_iot.yml |
Предупреждение |
---|
В процессе переноса/восстановления из бэкапа БД, в момент первого запуска платформы категорически не рекомендуется вмешиваться в данный процесс (например, останавливать контейнеры). Необходимо дождаться завершения миграции БД.
На процесс запуска может виляет производительность сервера. Необходимо убедиться, что сервер или гостевая система (виртуальная машина) соответствует минимальным требованиям. |
4. По окончанию процесса переноса бэкапа БД и успешного старта платформы необходимо вернуть в исходное состояние параметры в vars/service_parameters.yml:
Блок кода |
---|
language | yml |
---|
title | Содержимое конфигурационного файла vars/service_parameters.yml |
---|
linenumbers | true |
---|
|
export_mongo_port: false
export_olapservice_port: false
export_olapservice_db_port: false |
5. Перезапустить все микросервисы:
Блок кода |
---|
language | bash |
---|
linenumbers | true |
---|
|
ansible-playbook services_stop.yml
ansible-playbook install.yml |
для 1.25
Блок кода |
---|
language | bash |
---|
linenumbers | true |
---|
|
ansible-playbook stop_iot.yml
ansible-playbook install_iot.yml |
Предупреждение |
---|
В процессе переноса/восстановления из бэкапа БД, в момент первого запуска платформы категорически не рекомендуется вмешиваться в данный процесс (например, останавливать контейнеры). Необходимо дождаться завершения миграции БД.
На процесс запуска может виляет производительность сервера. Необходимо убедиться, что сервер или гостевая система (виртуальная машина) соответствует минимальным требованиям. |