Корректный порядок отключения и запуска кластера SpaceVM
Корректное выключение кластера SpaceVM является критически важным процессом, обеспечивающим:
-
Сохранность данных виртуальных машин.
-
Целостность файловой системы и данных.
-
Возможность последующего успешного запуска.
Данная инструкция предназначена для использования во всех конфигурациях кластера SpaceVM с настроенной репликацией контроллеров.
Примечание
При выключении кластера SpaceVM необходимо учесть внутренние регламенты для организации технологического окна.
Порядок выполнения процедуры
Проверка состояния кластера
Внимание
Если какой-либо из пунктов проверок состояния кластера не выполняется, то рекомендуется остановить процедуру выключения кластера SpaceVM и обратиться в Авторизованный Центр Технической Поддержки ООО "ДАКОМ СЕРВИС" для устранения неисправностей.
Перед выполнением процедуры выключения кластера SpaceVM проверьте, что выполняются следующие пункты:
-
Все виртуальные машины на всех узлах находятся в исправном состоянии.
-
В системе отсутствуют критические ошибки.
-
Все узлы кластера доступны и находятся в исправном состоянии.
-
Репликация БД контроллера активна (
state = active
) и задержка синхронизации (Postgres lag
) равняется нулю.Для проверки состояния репликации необходимо на каждом из управляющих узлов выполнить в CLI команду:
controller status
Подготовка кластера
Остановка репликации и создание резервной копии БД контроллеров
Warning
В случае вывода из эксплуатации контроллера с ролью master
необходимо вручную
переключить роли контроллеров в соответствии с разделом Ручное переключение ролей
контроллеров
Следующим шагом необходимо перевести контроллеры в режим независимой работы. Для этого необходимо выполнить следующие шаги:
-
Выполнить команду в CLI резервного контроллера (
slave
), затем выполнить команду на основном контроллере (master
):controller role alone
-
Отключить связанность контроллеров. Выполнить команду в CLI резервного контроллера (
slave
), затем выполнить команду на основном контроллере (master
):controller del
Далее необходимо на узле с ранее назначенной ролью master
выполнить создание резервной копии БД контроллера при помощи команды CLI:
controller backupdb-create
Остановка задач по расписанию
Следующим шагом является остановка запущенных задач по расписанию. Для этого необходимо перейти в раздел Задачи по расписанию. В окне раздела будет отображен список созданных задач.
Остановить выполнение задач по расписанию можно следующими способами:
-
Перейти в подробную информацию о задаче, нажав на имя задачи по расписанию, и нажать кнопку Выключить
-
Выбрать все запущенные задачи. После выбора в данном окне станет доступна операция выключения задач с помощью кнопки
Выключение виртуальных машин
Перед выключением виртуальных машин необходимо завершить работу приложений, развернутых на ВМ, в соответствии с документацией разработчика приложений.
Внимание
Для критических приложений, требующих постоянной работы, необходимо заранее предусмотреть перенос ВМ в другой кластер.
После того как работа приложений завершена, выключите виртуальные машины последовательно на каждом узле кластера. Для этого перейти в раздел Серверы - <имя сервера> - Виртуальные машины - Виртуальные машины и нажать на кнопку Выключение всех ВМ.
Размонтирование LUNs
Для последующего успешного запуска кластера LUNs, использующиеся в кластерной файловой системе GFS2, должны быть размонтированы перед выключением узлов.
Порядок размонтирования LUNs:
-
Открыть пункт основного меню Хранилища - LUNs.
-
Поочередно открыть LUNs, относящиеся к ФС GFS2.
-
Нажать кнопку
для размонтирования ФС на узлах, на которых подключен данный LUN.
После выполнения операции размонтирования статусы напротив серверов изменятся на не примонтирован.
Выключение узлов кластера SpaceVM
Перевод узлов в сервисный режим
Сервисный режим предназначен для проведения обслуживания сервера или переноса его в другой кластер. Перевод сервера в сервисный режим возможен только после выключения или переноса всех ВМ этого сервера.
Для перевода в сервисный режим необходимо нажать в окне Серверы – <имя сервера> кнопку Сервисный режим.
Выключение узлов
Выключение узлов происходит в следующем порядке: Узлы с ролью Node -> Узлы с ролью Controller+Node. Выполнить выключение сервера можно несколькими способами: через CLI, Web-интерфейс и RestAPI.
Выключение через CLI
Для того чтобы выполнить выключение сервера, необходимо получить доступ к CLI и
выполнить в CLI команду poweroff
.
Внимание!
После выключения через консоль без доступа к IPMI сервера может потребоваться физический доступ к серверу для его включения.
Выключение через Web-интерфейс
Для того чтобы выполнить выключение сервера, необходимо в окне Серверы – <имя сервера> – Оборудование – IPMI нажать кнопку выключить .
IPMI
Для работы IPMI необходимо, чтобы аппаратная платформа имела поддержку IPMI и были сделаны соответствующие настройки в SpaceVM. Информация о том, как настроить IPMI в SpaceVM, содержится в разделе Настройка IPMI сервера.
Выключение через RestAPI
В случаях, когда серверное оборудование подключено к UPS, возможно корректное выключение узлов при помощи RestAPI через создание отдельной роли и curl запроса.
Включение кластера SpaceVM
Внимание
Если при выключении кластера SpaceVM производилось выключение СХД, подключенной к кластеру, то в первую очередь необходимо включить питание СХД и убедиться в работоспособности системы.
Включение питания узлов и перевод в стандартный режим
Включение узлов происходит в том же порядке, что и выключение. Сначала включается питание узлов с ролью Node и затем узлов с ролью Controller-Node.
После включения питания узлов SpaceVM необходимо перевести узлы в стандартный режим. Для перевода в стандартный режим в окне Серверы – <имя сервера> нажать кнопку Стандартный режим. Далее необходимо перейти в раздел Кластеры – <имя кластера> – Серверы и убедиться, что все серверы находятся в статусе «исправно». После изменения статуса на «исправно» следует подождать 2 минуты для внутренней проверки подключения узлов. Затем необходимо перейти к следующему шагу.
Проверка состояния блочных хранилищ
Следующим шагом необходимо проверить состояние присоединённых блочных хранилищ и убедиться, что хранилища готовы к работе, а LUNs, относящиеся к ФС GFS2, примонтированы к узлам.
Для этого в разделе Хранилища - Сетевые хранилища подразделах Блочные и Файловые убедитесь, что каждое хранилище имеет статус Исправно и не имеет критических ошибок.
Для монтирования LUNs выполнить следующие шаги:
-
Открыть пункт основного меню Хранилища - LUNs.
-
Поочередно открыть LUNs, относящиеся к ФС GFS2.
-
Нажать кнопку
для монтирования ФС на узлах, на которых подключен данный LUN.
После выполнения операции монтирования статусы напротив серверов изменятся на примонтирован.
В случае возникновения ошибок в работе GFS2 провести диагностику в соответствии с данным разделом.
Включение виртуальных машин
Далее необходимо перейти к включению виртуальных машин. Как и в случае с выключением, необходимо включать виртуальные машины последовательно на каждом узле и не допускать одновременного включения всех виртуальных машин на всех узлах.
Для этого в разделе Серверы - <имя сервера> - Виртуальные машины - Виртуальные машины нажать на кнопку Включение всех ВМ.
Включение задач по расписанию
Следующим шагом является включение остановленных задач по расписанию. Для этого необходимо перейти в раздел Задачи по расписанию. В окне раздела будет отображен список созданных задач.
Включить выполнение задач по расписанию можно следующими способами:
-
Перейти в подробную информацию о задаче, нажав на имя задачи по расписанию, и нажать кнопку Включить
-
Выбрать все запущенные задачи. После выбора в данном окне станет доступна операция включения задач с помощью кнопки
Настройка репликации контроллера
Создание репликации между контроллерами включает следующие шаги:
- Инициализировать связь между экземплярами контроллера, используя следующую команду в CLI на каждом контроллере:
controller add <IP второго контроллера>
В ходе выполнения данной команды необходимо будет по запросу ввести пароль пользователя root второго контроллера.
-
Назначить роль slave резервному контроллеру. Для этого выполнить следующую команду в CLI резервного контроллера:
controller role slave
-
Назначить роль master основному контроллеру. Для этого выполнить следующую команду в CLI основного контроллера:
controller role master
-
Проверить связность контроллеров:
controller status
Примечание
Статус pending означает недоступность второго контроллера по ssh. Необходимо проверить ssh ключи и сетевую связность контроллеров.