Поделиться через


Failover cluster maintenance procedures

Область применения: Azure Stack HCI, версии 22H2 и 21H2; Windows Server 2022, Windows Server 2019, Windows Server 2016

Внимание

Azure Stack HCI теперь является частью Azure Local. Однако старые версии Azure Stack HCI, например 22H2, будут продолжать ссылаться на Azure Stack HCI и не отражают изменение имени. Подробнее.

В этой статье предполагается, что необходимо выключить физический сервер для выполнения обслуживания или перезапустить его по какой-либо другой причине. Сведения об установке обновлений в кластере Azure Stack HCI без использования серверов в автономном режиме см. в статье Об обновлении кластеров Azure Stack HCI.

Использование сервера в автономном режиме для обслуживания требует использования частей хранилища в автономном режиме, совместно используемых на всех серверах в отказоустойчивом кластере. Для этого требуется приостановка работы сервера, который требуется отключить, поместить диски сервера в режим обслуживания, переместить кластеризованные роли и виртуальные машины на другие серверы в кластере и убедиться, что все данные доступны на других серверах в кластере. Этот процесс гарантирует, что данные остаются безопасными и доступными на протяжении всего периода обслуживания.

Вы можете использовать Windows Admin Center or PowerShell, чтобы отключить сервер для проведения технического обслуживания. В этом разделе рассматриваются оба метода.

Использование сервера в автономном режиме с помощью Windows Admin Center

Самый простой способ подготовки к использованию сервера в автономном режиме — с помощью Windows Admin Center.

Убедитесь, что безопасно отключить сервер.

  1. С помощью Windows Admin Center подключитесь к серверу, который вы хотите отключить. Выберите Диски хранилища из меню "Инструменты" и убедитесь, что столбец "Состояние" для каждого виртуального диска показывает Онлайн.

  2. Then, select Storage > Volumes and verify that the Health column for every volume shows Healthy and that the Status column for every volume shows OK.

Приостановка и очистка сервера

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

  1. С помощью Windows Admin Center подключитесь к кластеру и выберите Вычислительные > серверы из меню Инструменты в диспетчере кластеров.

  2. Выберите Запасы. Щелкните по имени сервера, который вы хотите приостановить и разгрузить, и выберите "Приостановить". Появится следующая строка:

    Приостановить серверы для обслуживания: вы уверены, что хотите приостановить серверы? При этом рабочие нагрузки, такие как виртуальные машины, перемещаются на другие серверы в кластере.

  3. Выберите "Да", чтобы приостановить сервер и инициировать процесс очистки. The server status will show as In maintenance, Draining, and roles such as Hyper-V and VMs will immediately begin live migrating to other server(s) in the cluster. Это может занять несколько минут. Никакие роли не могут быть добавлены на сервер, пока он не будет возобновлён. После завершения процесса очистки состояние сервера будет отображаться как "Обслуживание", "Очистка завершена". Операционная система выполняет автоматическую проверку безопасности, чтобы удостовериться, что безопасно продолжать. If there are unhealthy volumes, it will stop and alert you that it's not safe to proceed.

Завершение работы сервера

Once the server has completed draining, you can safely shut it down for maintenance or reboot it.

Предупреждение

Если сервер работает под управлением Azure Stack HCI, версии 20H2, Windows Server 2019 или Windows Server 2016, необходимо поместить диски в режим обслуживания, прежде чем завершить работу сервера и выйти из режима обслуживания перед возобновлением работы сервера в кластере.

Возобновление работы сервера

Когда сервер готов к размещению кластеризованных ролей и виртуальных машин снова, просто включите сервер, дождитесь его загрузки и возобновите сервер, выполнив следующие действия.

  1. В диспетчере кластеров выберите "Вычислительные > серверы " в меню "Сервис " слева.

  2. Выберите Запасы. Щелкните имя сервера, который вы хотите возобновить, и нажмите кнопку "Возобновить".

Кластеризованные роли и виртуальные машины сразу же начнут живую миграцию обратно на сервер. Это может занять несколько минут.

Дождитесь повторной синхронизации хранилища

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

Внимание

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

Чтобы проверить, завершена ли повторная синхронизация хранилища:

  1. Connect to the cluster using Windows Admin Center and select Storage > Volumes.
  2. Выберите Запасы.
  3. Проверьте столбец состояния для каждого тома. Если отображается значение "ОК", то повторная синхронизация хранилища завершена. Теперь безопасно отключать другие серверы в кластере.

Отключение сервера с помощью PowerShell

Используйте следующие процедуры для правильной приостановки, очистки и возобновления работы сервера в отказоустойчивом кластере с помощью PowerShell.

Убедитесь, что безопасно отключить сервер.

To verify that all your volumes are healthy, run the following cmdlet as an administrator:

Get-VirtualDisk

Ниже приведен пример того, как выглядят выходные данные:

FriendlyName              ResiliencySettingName FaultDomainRedundancy OperationalStatus HealthStatus    Size FootprintOnPool StorageEfficiency
------------              --------------------- --------------------- ----------------- ------------    ---- --------------- -----------------
Mirror II                 Mirror                1                     OK                Healthy         4 TB         8.01 TB            49.99%
Mirror-accelerated parity                                             OK                Healthy      1002 GB         1.96 TB            49.98%
Mirror                    Mirror                1                     OK                Healthy         1 TB            2 TB            49.98%
ClusterPerformanceHistory Mirror                1                     OK                Healthy        24 GB           49 GB            48.98%

Verify that the HealthStatus property for every volume is Healthy and the OperationalStatus shows OK.

To do this using Failover Cluster Manager, go to Storage>Disks.

Приостановка и очистка сервера

Выполните следующий командлет от имени администратора, чтобы приостановить и очистить сервер:

Suspend-ClusterNode -Drain

To do this in Failover Cluster Manager, go to Nodes, right-click the node, and then select Pause>Drain Roles.

Если сервер работает под управлением Azure Stack HCI версии 21H2 или Windows Server 2022, приостановка и очистка сервера также помещают диски сервера в режим обслуживания. Если сервер работает под управлением Azure Stack HCI версии 20H2, Windows Server 2019 или Windows Server 2016, это необходимо сделать вручную (см. следующий шаг).

Размещение дисков в режиме обслуживания

В Azure Stack HCI версии 20H2, Windows Server 2019 и Windows Server 2016, когда диски сервера помещают в режим обслуживания, это дает "Storage Spaces Direct" возможность корректно сбросить и зафиксировать данные, чтобы убедиться, что завершение работы сервера не оказывает влияния на работоспособность приложения. Как только диск переходит в режим обслуживания, он больше не будет разрешать запись. Чтобы свести к минимуму время повторного восстановления хранилища, рекомендуется поместить диски в режим обслуживания прямо перед перезагрузкой и вывести их из режима обслуживания сразу после резервного копирования системы.

Примечание.

Если сервер работает под управлением Azure Stack HCI версии 21H2 или Windows Server 2022, этот шаг можно пропустить, так как диски автоматически помещаются в режим обслуживания при приостановке и очистке сервера. Эти операционные системы имеют детальную функцию восстановления, которая позволяет быстрее и менее влиять на системные и сетевые ресурсы, что делает возможным совместное обслуживание сервера и хранилища.

Если сервер работает под управлением Windows Server 2019 или Azure Stack HCI версии 20H2, выполните следующий командлет от имени администратора:

Get-StorageScaleUnit -FriendlyName "Server1" | Enable-StorageMaintenanceMode

Если сервер работает под управлением Windows Server 2016, используйте следующий синтаксис:

Get-StorageFaultDomain -Type StorageScaleUnit | Where-Object {$_.FriendlyName -eq "Server1"} | Enable-StorageMaintenanceMode

Завершение работы сервера

После завершения разгрузки сервера он отобразится как Приостановлено в PowerShell и диспетчере отказоустойчивых кластеров.

Теперь вы можете безопасно завершить работу сервера или перезапустить его с помощью командлетов PowerShell или с помощью Stop-ComputerRestart-Computer диспетчера отказоустойчивых кластеров.

Примечание.

When running a Get-VirtualDisk command on servers that are shutting down or starting/stopping the cluster service, the server's Operational Status may be reported as incomplete or degraded, and the Health Status column may list a warning. Это нормально и не должно вызывать беспокойство. Все ваши томы остаются онлайн и доступны.

Выход дисков из режима обслуживания

Если сервер работает под управлением Azure Stack HCI версии 20H2, Windows Server 2019 или Windows Server 2016, необходимо отключить режим обслуживания хранилища на дисках перед возобновлением работы сервера в кластере. Чтобы свести к минимуму время повторной синхронизации хранилища, рекомендуется вывести их из режима обслуживания, как только система снова станет доступной.

Примечание.

Если сервер работает под управлением Azure Stack HCI версии 21H2 или Windows Server 2022, этот шаг можно пропустить, так как диски будут автоматически удалены из режима обслуживания при возобновлении сервера.

Если сервер работает под управлением Windows Server 2019 или Azure Stack HCI версии 20H2, выполните следующий командлет от имени администратора, чтобы отключить режим обслуживания хранилища:

Get-StorageScaleUnit -FriendlyName "Server1" | Disable-StorageMaintenanceMode

Если сервер работает под управлением Windows Server 2016, используйте следующий синтаксис:

Get-StorageFaultDomain -Type StorageScaleUnit | Where-Object {$_.FriendlyName -eq "Server1"} | Disable-StorageMaintenanceMode

Возобновление работы сервера

Возобновление работы сервера в кластере. To return the clustered roles and VMs that were previously running on the server, use the optional -Failback flag:

Resume-ClusterNode –Failback Immediate

To do this in Failover Cluster Manager, go to Nodes, right-click the node, and then select Resume>Fail Roles Back.

После возобновления работы сервера он будет отображаться как включен в PowerShell и в диспетчере отказоустойчивых кластеров.

Дождитесь повторной синхронизации хранилища

Когда сервер возобновляется, необходимо дождаться завершения повторной синхронизации, прежде чем принимать другие серверы в кластере в автономном режиме.

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

Get-StorageJob

Если повторная синхронизация уже завершена, вы не получите никаких выходных данных.

Ниже приведен пример выходных данных, показывающих выполнение заданий повторной синхронизации (восстановления):

Name   IsBackgroundTask ElapsedTime JobState  PercentComplete BytesProcessed BytesTotal
----   ---------------- ----------- --------  --------------- -------------- ----------
Repair True             00:06:23    Running   65              11477975040    17448304640
Repair True             00:06:40    Running   66              15987900416    23890755584
Repair True             00:06:52    Running   68              20104802841    22104819713

В столбце BytesTotal показано, сколько хранилища необходимо повторно синхронизировать. The PercentComplete column displays progress.

Предупреждение

Небезопасно использовать другой сервер в автономном режиме до завершения этих заданий восстановления.

During this time, under HealthStatus, your volumes will continue to show as Warning, which is normal.

Например, если вы используете Get-VirtualDisk командлет во время повторной синхронизации хранилища, могут быть выведены следующие данные:

FriendlyName ResiliencySettingName OperationalStatus HealthStatus IsManualAttach Size
------------ --------------------- ----------------- ------------ -------------- ----
MyVolume1    Mirror                InService         Warning      True           1 TB
MyVolume2    Mirror                InService         Warning      True           1 TB
MyVolume3    Mirror                InService         Warning      True           1 TB

Once the jobs complete, verify that volumes show Healthy again by using the Get-VirtualDisk cmdlet. Вот пример вывода:

FriendlyName ResiliencySettingName OperationalStatus HealthStatus IsManualAttach Size
------------ --------------------- ----------------- ------------ -------------- ----
MyVolume1    Mirror                OK                Healthy      True           1 TB
MyVolume2    Mirror                OK                Healthy      True           1 TB
MyVolume3    Mirror                OK                Healthy      True           1 TB

Теперь безопасно приостановить и перезапустить другие серверы в кластере.

Следующие шаги

Дополнительные сведения см. также: