Перейти к содержанию

Полезные утилиты

Сбор журналов работы системы и базовой диагностики

Внимание

Утилита дорабатывается, представлена ее бета-версия.

Чтобы собрать логи, нужно выполнить следующие действия:

  1. Скачать архив logs.tgz.

    Скачать архив logs.tgz

  2. Скопировать архив logs.tgz на один из серверов системы.

  3. Распаковать архив.

  4. Запустить скрипт.

    bash lc.sh
    
  5. Скачать сформированный по результатам выполнения скрипта архив.

В процессе выполнения скрипта могут быть запрошены пароли для пользователя, под которым запущен скрипт, для входа на остальные сервера, на которых установлена система. Пользователь должен иметь права sudo.

Резервное копирование через утилиту mnt-backup

Внимание

Чтобы получить утилиту mnt-backup для резервного копирования, обратитесь в техническую поддержку.

Установка и настройка утилиты

Предварительные условия

Для корректной работы утилиты требуется следующий пакет: rsync.

Создание каталога для установки

Обязательно создайте в директории (/home) пользователя с правами sudo отдельный каталог для распаковки архива с дистрибутивом и запуска программы. Не рекомендуется распаковывать архив и запускать программу в домашней директории пользователя. Не забудьте установить приложение для распаковки архива, например unzip.

Создание пользователя и авторизация

Перед началом работы:

  1. создайте отдельного пользователя с правами sudo (группа wheel). Подключаться к серверу под учетной записью root нельзя по требованиям безопасности;
  2. авторизуйтесь под этим пользователем перед выполнением дальнейших шагов.

Распаковка архива

Скопируйте или переместите архив с дистрибутивом в специально созданный каталог (в домашней директории пользователя с правами sudo). Затем распакуйте архив. Состав дистрибутива:

  • файлы программы mnt-backup;
  • каталог tars со вспомогательными образами;

При работе запускайте файл mnt-backup от имени специально созданного пользователя и именно из той директории, в которой находится файл программы.

Подготовка к резервному копированию

  1. Выполните загрузку вспомогательных образов:

    sudo ./mnt-backup prepare
    
  2. Подготовьте гипервизор к резервному копированию:

    sudo ./mnt-backup backup -D /backup/2023-03-30/
    

Утилита выполнит резервное копирование баз данных (физическое) по указанному пути.

Данные, подлежащие резервному копированию

Резервное копирование всех сущностей Docker за исключением постоянных дисков:

  • /var/lib/docker/

Резервное копирование утилиты по установке и настройке системы:

  • /home/deployer/
  • Директория с установщиком Почты onpremise-deployer_linux. Необходимо, если при установке Почты вы распаковали архив с дистрибутивом в другую директорию.

Резервное копирование юнит-файлов установщика и системы:

  • /etc/systemd/system/onpremise-*

  • /etc/systemd/system/deployer.service

Резервное копирование постоянных дисков:

  • /opt/mailOnPremise/

Резервное копирование баз данных (путь, указанный при подготовке к резервному копированию):

  • /backup/2023-03-30/

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

Восстановление гипервизора

  1. Выполните восстановление установщика (из директории в директорию):

    • /home/deployer/ -> /home/deployer/
    • /etc/systemd/system/deployer.service -> /etc/systemd/system/deployer.service

    Внимание

    Если при установке Почты вы распаковали архив с дистрибутивом не в /home/deployer/, а в другую директорию, например, /opt/VKWorkmail/deployer/, то также нужно выполнить восстановление:

    • /opt/VKWorkmail/deployer/ -> /opt/VKWorkmail/deployer/
    systemctl daemon-reload
    systemctl start deployer
    
  2. Выполните шаги по настройке машины из программы-установщика:

    1. Перейдите в программу-установщик (http://<ip_or_domain_name>:8888).

    2. Перейдите в настройки восстанавливаемого гипервизора.

    3. Настройте машину:

      image_3

      tune_kernel
      disable_NM_for_cali
      disable_firewall
      disable_selinux
      check_needed_packs
      hypervisor_repo
      install_hypervisor_packs
      tune_docker
      configure_calicoCtl
      
  3. Остановите сервисы:

    systemctl stop deployer
    systemctl stop docker.socket
    systemctl stop docker
    systemctl stop containerd
    
  4. Восстановите директорию Docker: /var/lib/docker/ -> /var/lib/docker/

  5. Восстановите юнит-файлы: /etc/systemd/system/* -> /etc/systemd/system/

  6. Восстановите постоянные диски:

    /opt/mailOnPremise -> /opt/mailOnPremise/
    /backup/2023-03-30/ -> /opt/mailOnPremise/
    
  7. Запустите сервисы:

    systemctl daemon-reload
    systemctl start containerd
    systemctl start docker
    systemctl start docker.socket
    systemctl start deployer
    
  8. Для всех сервисов поочередно запустите задачи up_container из установщика.

    1. Перейдите в программу-установщик (http://<ip_or_domain_name>:8888).

    2. Перейдите в настройки сервиса и выполните шаг: up_container. Пункт 8.b необходимо выполнить последовательно для каждого сервиса.

    Примечание

    Для автоматической установки можно воспользоваться утилитой yq. Установите ее и выполните команду:

    yq '(.[][] | select (.name == "up_container")).status = "needRefresh"' 
    -i <deployer_path>/computesPlaybooks.yaml
    
    systemctl restart deployer
    
    , где deployer_path - путь, по которому установлена система.

    После проделанной операции все задачи up_container перейдут в статус «Необходимо обновление» теперь можно начинать автоматическую установку.

    Перейдите в программу-установщик (http://<ip_or_domain_name>:8888). Запустите автоматическую установку без проверки:

    image_5