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

Симптомы

  • Команды управления подсистемой виртуализации выполняются с ошибками или не выполняются вовсе на одном из серверов:
    • prlctl;
    • prlsrvctl;
    • vzlist
    • и другие;

Причины

  • Недостаточный уровень прав пользователя;
  • Пакеты ПО виртуализации удалены или повреждены в виду неудачного обновления;
  • Закончилось свободное место на загрузочном диске ОС;
  • Операционная система узла хранения повреждена;

Влияние на доступность сервисов

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

План реагирования

  1. Перенести запущенные виртуальные машины со сбойного сервера если это не было сделано автоматически командой shaman, для этого:
    1. Подключиться к консоли одного из исправно функционирующих серверов кластера виртуализации и выполнить поиск файлов виртуальной машины в на системе хранения данных, командой cat /mnt/vstorage/vols/datastores/*/*/config.pvs | grep -E "<VmName>|<VmUuid>"
    2. В списке выведенных UUID и имен виртуальных машин найти искомую ВМ и зафиксировать UUID виртуальных машин, выполняемых на сбойном узле;
    3. Для каждого UUID виртуальной машины, запущенной на сбойном узле выполнить команду prlctl migrate %SOURCE_HOST%/%UUID% localhost, где %SOURCE_HOST% - праметры подключения по протоколу SSH к сбойному серверу в формате: [user[:password]@]server_IP_address_or_hostname[:port], %UUID% - UUID машины, полученный на предыдущем шаге.
  2. В случае если перенос запущенных виртуальных машин не может быть осуществлен необходимо:
    1. Остановить все виртуальные машины, запущенные на сбойном сервере путем подключения к операционной системе виртуальной машины и завершения работы из ОС.
    2. Отключить питание сбойного сервера виртуализации;
    3. Подключиться к консоли одного из исправно функционирующих серверов кластера виртуализации, выполнить следующую команду для проверки того, что указанные виртуальные машины не находятся в состоянии восстановления: shaman -c %CLUSTERNAME% stat, где %CLUSTERNAME - имя кластера Р-Хранилище;
    4. Выполнить поиск файлов виртуальных машин на системе хранения данных, командой cat /mnt/vstorage/vols/datastores/*/*/config.pvs | grep -E "<VmName>|<VmUuid>"
    5. В списке выведенных UUID и имен виртуальных машин найти искомую ВМ и зафиксировать UUID виртуальных машин, выполняемых на сбойном узле;
    6. Для каждого UUID виртуальной машины, запущенной на сбойном узле выполнить следующую команду для поиска директории виртуальной машины find /vz /mnt -name %UUID%, где UUID - UUID виртуальной машины, вида 57b19198-5658-4fa5-9d8c-98b07d03e296;
    7. Для каждой найденной дирректории ВМ выполнить команду для импорта конфигурации на текущий сервер виртуализации: prlctl register %PATH% --preserve-uuid, где %PATH% - путь к дирректории с файлами ВМ;
    8. Запустить импортированные виртуальные машины командой prlctl start %UUID%, где UUID - UUID виртуальной машины, вида 57b19198-5658-4fa5-9d8c-98b07d03e296;