Если включено автоматическое бекапирование, то система каждый день создает новую копию базы данных и файлов конфигурации.

Step-by-step guide

Восстановление системы происходит в несколько этапов:

  1. Убедитесь наличие нужной версии бекапа:

    /opt/webitel/backup
    ├── 2018-05-14.tgz
    ├── 2018-05-15.tgz
    ├── 2018-05-16.tgz
    └── 2018-05-17.tgz
  2. Удалите все Docker контейнеры с помощью команды:

    sudo -s
    docker rm -f $(docker ps -aq)
  3. Восстановите файлы настройки из нужного вам архива:

    cd / && tar xzvf /opt/webitel/backup/2018-05-17.tgz
  4. Запустите все базы данных

    /opt/orchestration/bin/bootstrap.sh up -d mongo postgres elasticsearch elasticsearch2
  5. Восстановите MongoDB:

    docker exec -t mongo bash -c 'mongorestore -h mongo /data/db/dump/'
  6. Восстановите PostgreSQL:

    docker exec -t postgres bash -c 'pg_restore -U webitel -d webitel /var/lib/postgresql/data/dump.sql'
  7. Восстановите Elasticsearch:

    docker exec -it elasticsearch curl -XDELETE localhost:9200/_snapshot/es
    docker exec -it elasticsearch curl -XPUT -d '{"type": "fs","settings": {"location": "es"}}' -H 'Content-Type: application/json' localhost:9200/_snapshot/es
    docker exec -it elasticsearch curl -XPOST "localhost:9200/_snapshot/es/snapshot/_restore?wait_for_completion=true"
    docker exec -it elasticsearch curl -XDELETE localhost:9200/_snapshot/es
  8. Запустите Webitel:

    /opt/orchestration/bin/reboot.sh

 

Обратите внимание, что записи разговоров не архивируются! Только настройки системы.