VMmanager
Режим фокусировки

Аварийное восстановление в кластере с сетевым хранилищем

Это документация VMmanager 6 для редакций Hosting и Infrastructure. Документация VMmanager для редакции ФСТЭК находится в разделе VMmanager 6 ФСТЭК.

При отказе одного из узлов кластера с подключённым сетевым хранилищем вы можете возобновить работу его виртуальных машин (ВМ) на другом узле с помощью функции аварийного восстановления.

Возможность аварийного восстановления не зависит от настроек отказоустойчивости в кластере.

Обратите внимание!
Используйте эту функцию, только если вы уверены, что работа узла кластера не восстановится самостоятельно. Например, если сервер физически вышел из строя. Возобновление работы узла во время или после аварийного восстановления может привести к повреждению ВМ.

Как восстановить все ВМ на узле

Чтобы выполнить перенос всех ВМ с отказавшего узла, перейдите в Узлы → выберите узел → Аварийное восстановление VMВосстановить. Все ВМ с этого узла будут перенесены на другие узлы кластера. Подробнее о логике выбора узлов см. Выбор узла кластера для ВМ.

Интерфейс аварийного восстановления
Интерфейс аварийного восстановления
Обратите внимание!
После восстановления отказавшего узла очистите его жёсткие диски и заново подготовьте к подключению. Подробнее см. Требования к серверу для кластера. Подключение узла со старой конфигурацией может повредить работе ВМ.

Как восстановить отдельные ВМ

Вы можете перенести отдельные ВМ с отказавшего узла через API-запрос. Для этого:

  1. Если на сервере не установлена утилита curl, установите её: 
    dnf install curl || apt install curl
  2. Получите токен авторизации: 

    curl -k -X POST -H "accept: application/json" -H "Content-Type: application/json" 'https://example.com/api/auth/v4/public/token' -d '{"email": "admin_email", "password": "admin_pass"}'

    Пояснения к команде:

    • example.com — доменное имя или IP-адрес сервера с платформой;
    • admin_email — email администратора платформы;
    • admin_pass — пароль администратора платформы.

    В ответ придёт сообщение вида:

    Пример ответа в JSON
    {
      "confirmed": true,
      "expires_at": null,
      "id": "6",
      "token": "4-e9726dd9-61d9-2940-add3-914851d2cb8a"
    }

    Сохраните полученное значение параметра token — токен авторизации.

  3. Перенесите нужные ВМ, используя полученный id сессии:

    curl --insecure -X POST 'https://domain.com/vm/v3/host/<vm_id>/relocate' -H 'x-xsrf-token: <token>' -d '{"node": <node_id>}'
    Пояснения к команде


Связанные статьи