Выполнение обслуживания сервера#
Каждый раз, когда необходимо выполнить сервисные операции на сервере кластера, переводите его в режим обслуживания. В этом случае сервер перестает распределять новые фрагменты данных хранилища, но продолжает обрабатывать операции ввода-вывода для основных сервисов хранилища, таких как MDS, CS и кэширование. Однако они не будут использоваться для распределения новых данных, поэтому помещение сервера в режим обслуживания может сократить объем свободного пространства в кластере хранилища. Все CS на сервере продолжат передавать данные даже в режиме обслуживания, если сервер не отключится. Другие сервисы (вычислительный, Backup Gateway, iSCSI, S3 и NFS) могут либо переноситься, либо оставаться как есть на время обслуживания.
Если по какой-то причине сервис нельзя эвакуировать с сервера, вход в режим обслуживания будет отложен. Вам нужно будет выбрать дальнейшие действия: выйти или принудительно включить режим обслуживания.
После перевода сервера в режим обслуживания отключите его и выполните необходимые сервисные операции. Завершив работы, включите сервер на панели администрирования и верните его в эксплуатацию.
Ограничения
Приостановленные ВМ не могут быть перенесены с сервера и будут пропущены.
Серверы на обслуживании можно вернуть в работу или освободить.
Предварительные требования
Четкое понимание механизма самовосстановления кластера (см. раздел Перестроение кластера).
Наличие пяти сервисов MDS в кластере хранилища. В этом случае при отключении сервера, где работает сервис MDS, на время обслуживания кластер может выдержать отказ еще одного сервера.
Если на сервере размещены виртуальные машины, на других вычислительных серверах должно быть достаточно ресурсов для размещения этих ВМ.
Если на сервере размещены целевые устройства iSCSI, инициаторы iSCSI должны быть настроены на использование нескольких IP-адресов из одной группы целевых устройств.
Если на сервере работает шлюз S3, его IP-адреса должны быть удалены из записей DNS точек доступа S3. Иначе у некоторых клиентов S3 могут возникнуть перебои в подключении.
Переключение сервера в режим обслуживания
На экране Инфраструктура → Серверы щелкните по строке с нужным сервером.
На правой панели сервера щелкните Режим обслуживания.
В окне Вход в режим обслуживания выберите вариант Эвакуировать или Игнорировать следующие рабочие нагрузки на время обслуживания:
Блочное хранилище. Группы целевых устройств iSCSI высокодоступны с несколькими целевыми устройствами, работающими на разных серверах. Когда сервер входит в режим обслуживания, размещенное на нем целевое устройство останавливается, а предпочтительный путь переносится на другой сервер в группе целевых устройств в течение 60 секунд. Таким образом, работа сервиса не прерывается на время обслуживания.
Вычисления. Эвакуация виртуальных машин с сервера обозначает их поочередный перенос на другие вычислительные серверы без остановки работы. Если вы выберете игнорировать их, то они продолжат работу до перезагрузки или выключения сервера. В этом случае они будут остановлены, что приведет к простою. Они также не будут запущены автоматически, когда сервер возобновит работу.
S3. Можно эвакуировать сервисы S3 с этого сервера на другие серверы в кластере S3 либо игнорировать их. В последнем случае они продолжат работу до перезагрузки или выключения сервера, что приведет к простою. Они будут запущены автоматически, когда сервер возобновит работу.
NFS. Можно эвакуировать сервисы NFS с этого сервера на другие серверы в кластере NFS либо игнорировать их. В последнем случае они продолжат работу до перезагрузки или выключения сервера, что приведет к простою. Они будут запущены автоматически, когда сервер возобновит работу.
ABGW. Это сервис высокой доступности с несколькими экземплярами, распределенными по разным серверам. Перевод этого сервера в режим обслуживания приведет к остановке одного экземпляра, а остальные продолжат работать. Таким образом, перерывов в работе сервиса не будет.
Запуск восстановления данных. Самовосстановление кластера — это автоматическое восстановление данных кластера хранилища, которые становятся недоступны, когда отключается один из серверов (или дисков) хранилища. Если это происходит во время обслуживания, самовосстановление откладывается (по умолчанию на 30 минут) для экономии ресурсов кластера. Если сервер возобновляет работу до окончания этого интервала, то в самовосстановлении нет необходимости.
Время ожидания репликации можно настроить вручную, задав значение параметра
mds.wd.offline_tout_mntв миллисекундах с помощью командыvstorage -c <cluster_name> set-config.Если на сервере есть неизбыточные фрагменты данных, отобразится параметр Переносить неизбыточные данные. Установите для него флажок, чтобы перенести неизбыточные данные на другие серверы хранения. В противном случае после отключения сервера они станут недоступны. Данные также можно временно переместить на другой уровень, если текущий заполнен.
Нажмите Ввод.
Используйте следующие команды:
Запустите проверку возможности перевода сервера в режим обслуживания. Например:
# vinfra node maintenance precheck node001
Просмотрите сведения об обслуживании сервера. Например:
# vinfra node maintenance status node001 +-----------+------------------------------------------+ | Field | Value | +-----------+------------------------------------------+ | node_id | c3b2321a-7c12-8456-42ce-8005ff937e12 | | params | | | precheck | flow: completed | | | id: c15bf919-9a81-45b1-8fef-5f626e68f957 | | | result: | | | - has_resources: true | | | relocation_is_possible: true | | | resources: null | | | service: node | | | service_is_available: true | | | - has_resources: false | | | relocation_is_possible: true | | | resources: null | | | service: iscsi | | | service_is_available: true | | | - has_resources: false | | | relocation_is_possible: true | | | resources: | | | failed: [] | | | service: alua | | | service_is_available: false | | | - has_resources: true | | | relocation_is_possible: false | | | resources: null | | | service: compute | | | service_is_available: true | | | - has_resources: false | | | relocation_is_possible: null | | | resources: null | | | service: nfs | | | service_is_available: false | | | - has_resources: true | | | relocation_is_possible: false | | | resources: null | | | service: s3 | | | service_is_available: true | | | state: success | | | updated_at: '2021-11-01T11:09:41.331926' | | resources | | | state | idle | | task | | +-----------+------------------------------------------+
В выводе выше показано, что на сервере есть сервис вычислений и сервис S3, которые не могут быть эвакуированы .
Запустите перевод сервера в режим обслуживания, выполнив следующую команду:
vinfra node maintenance start [--iscsi-mode <mode>] [--compute-mode <mode>] [--s3-mode <mode>] [--storage-mode <mode>] [--alua-mode <mode>] [--nfs-mode <mode>] <node>
--iscsi-mode <mode>Игнорировать эвакуацию iSCSI во время обслуживания (
ignore).
--compute-mode <mode>Игнорировать эвакуацию вычислительных серверов во время обслуживания (
ignore).
--s3-mode <mode>Игнорировать эвакуацию S3 во время обслуживания (
ignore).--storage-mode <mode>Игнорировать эвакуацию серверов хранения во время обслуживания (
ignore).--alua-mode <mode>Игнорировать группы целевых устройств блочного хранения данных во время обслуживания (
ignore).--nfs-mode <mode>Игнорировать эвакуацию серверов NFS во время обслуживания (
ignore).<node>Идентификатор сервера или имя хоста
Например, чтобы запустить перевод сервера в режим обслуживания без эвакуации сервисов S3 и вычислений , выполните:
# vinfra node maintenance start node001 --s3-mode ignore --compute-mode ignore
Чтобы возобновить отложенный переход в режим обслуживания:
На экране Инфраструктура → Серверы щелкните по строке с нужным сервером.
На правой панели сервера щелкните Вход в режим обслуживания.
Выберите нужное действие.
Выберите Выход из режима обслуживания, чтобы вернуть все службы на сервере в нормальное состояние.
Выберите Принудительный вход в режим обслуживания, чтобы остановить работу сервисов, которые нельзя эвакуировать во время перезагрузки или остановки сервера.
Нажмите кнопку Продолжить.
Возврат сервера к работе
На экране Инфраструктура → Серверы щелкните по строке с нужным сервером.
На правой панели сервера щелкните Выход из режима обслуживания.
Используйте следующую команду:
vinfra node maintenance stop <node> [--ignore-compute]
<node>Идентификатор сервера или имя хоста
--ignore-computeИгнорировать вычислительные ресурсы при возврате сервера в работу
Например, чтобы вернуть сервер node001 в рабочий режим, выполните:
# vinfra node maintenance stop node001
См. также