Миграция#

В организациях может возникнуть необходимость мигрировать платформу Astra Automation с одних узлов на другие. При этом часто изменяются доменные имена и IP-адреса узлов платформы.

Чтобы выполнить такую миграцию, следует воспользоваться функциональностью утилиты aa-setup. Здесь рассматривается пример миграции платформы Astra Automation с одной конфигурации на другую.

Важно

Допускается миграция платформы между конфигурациями с разным количеством узлов.

Пусть исходная конфигурация платформы имеет следующие параметры:

  • Развернут кластер Astra Automation Controller из трех узлов:

    Узел

    Назначение

    FQDN

    IP-адрес

    node1

    Управляющий узел

    node1.example.com

    192.168.56.11

    node2

    Управляющий узел

    node2.example.com

    192.168.56.12

    node3

    Узел СУБД

    node3.example.com

    192.168.56.13

  • Для администрирования узлов используется учетная запись administrator.

  • Сервер СУБД PostgreSQL развернут средствами платформы.

Далее эта платформа будет называться исходной платформой, а соответствующий ей установочный узел – исходным установочным узлом.

Пусть целевая конфигурация платформы имеет следующие параметры:

  • Для развертывания платформы подготовлены три узла:

    Узел

    Назначение

    FQDN

    IP-адрес

    aac1

    Управляющий узел

    aac1.example.com

    10.120.0.11

    aac2

    Управляющий узел

    aac2.example.com

    10.120.0.12

    rdbs

    Узел СУБД

    rdbs.example.com

    10.120.0.101

  • Установочный узел и узлы платформы настроены согласно инструкций из документа Подготовка узлов.

  • Для администрирования узлов платформы используется учетная запись devops.

  • Сервер СУБД PostgreSQL будет развернут средствами платформы.

Далее эта платформа будет называться целевой платформой, а соответствующий ей установочный узел – целевым установочным узлом.

Совет

В качестве целевого установочного узла можно использовать исходный установочный узел.

Создание резервной копии#

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

  1. Перейдите в каталог /opt/rbta/aa/astra-automation-setup/:

    cd /opt/rbta/aa/astra-automation-setup/
    
  2. Запустите утилиту aa-setup с аргументом --backup (-b):

    sudo ./aa-setup --backup
    
  3. Перейдите в каталог /tmp/backups/astra-automation/:

    cd /tmp/backups/astra-automation/
    
  4. Получите список файлов, упорядоченных по дате создания:

    ls -l --sort=time
    
  5. Если необходимо использовать другой установочный узел, любым удобным способом скопируйте на него самый новый архив с резервной копией. Например, чтобы чтобы скопировать архив по сети, выполните команду:

    scp <backup> <user>@<host>:<dir>
    

    где:

    • <backup> – имя файла резервной копии, например, astra-automation-backup-28-05-2024-114821.tar.gz;

    • <user> – название учетной записи пользователя целевого установочного узла;

    • <host> – FQDN или IP-адрес установочного узла целевого кластера;

    • <dir> – полный путь к каталогу на установочном узле целевого кластера.

Восстановление из резервной копии#

Для восстановления платформы из резервной копии подключитесь к целевому установочному узлу и выполните следующие действия:

  1. Создайте каталог /tmp/backups/astra-automation/:

    mkdir -p /tmp/backups/astra-automation/
    
  2. Скопируйте файл резервной копии в каталог /tmp/backups/astra-automation/:

    cp <backup> /tmp/backups/astra-automation/
    
  3. Перейдите в каталог /opt/rbta/aa/astra-automation-setup/:

    cd /opt/rbta/aa/astra-automation-setup/
    
  4. В файле inventory внесите изменения, соответствующие новой конфигурации платформы. Для описанной выше конфигурации файл inventory необходимо привести к следующему виду:

    [automationcontroller]
    aac1.example.com   ansible_host=10.120.0.11
    aac2.example.com   ansible_host=10.120.0.12
    
    [database]
    drbs.example.com   ansible_host=10.120.0.101
    
    [vars:all]
    ansible_user=devops
    ansible_ssh_private_key_file=/path/to/private/ssh/key
    admin_username=admin
    admin_email=admin@example.com
    admin_password=p@ssW0rd!
    pg_host=10.120.0.101
    pg_port=5432
    
  5. Запустите развертывание платформы:

    sudo ./aa-setup
    
  6. В каталоге /tmp/ создайте структуру подкаталогов backups/astra-automation/:

    mkdir -p /tmp/backups/astra-automation/
    
  7. Скопируйте файл резервной копии в каталог /tmp/backups/astra-automation/ под именем astra-automation-backup-latest.tar.gz, например:

    cp astra-automation-backup-28-05-2024-114821.tar.gz \
       /tmp/backups/astra-automation/astra-automation-backup-latest.tar.gz
    
  8. Запустите восстановление платформы из резервной копии:

    sudo ./aa-setup --restore
    
  9. Для проверки корректности восстановления выполните вход в веб-интерфейс контроллера от имени администратора и проверьте содержимое разделов.