Как служба кластеров резервирует диск и обеспечивает подключение диска к сети

В этой статье описывается, как служба кластеров Майкрософт резервирует и переводит диски, управляемые службой кластера и связанными драйверами.

Применяется к: Windows Server 2003
Исходный номер базы знаний: 309186

Дополнительная информация

Служба кластеров использует протокол SCSI только для управления дисками в общей шине.

Примечание.

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

В следующем списке команд приведены дополнительные функции протокола SCSI, которые будут использоваться, когда диски находятся в кластеризованной среде.

  • reserve: эта команда выдается адаптером шины узла для получения или сохранения прав владения устройством SCSI. Зарезервированное устройство отказывается от всех команд от всех остальных адаптеров шины узла, кроме того, который изначально резервировал его, инициатора.

  • release: эта команда выполняется адаптером шины узла, который является владельцем, когда дисковый ресурс отключен; он освобождает устройство SCSI для резервирования другого адаптера шины узла.

  • reset: эта команда прерывает резервирование на целевом устройстве. Эта команда может быть сбросом шины (для всей шины) или, с помощью драйверов storport, целевым сбросом для определенного устройства в шине. В следующей процедуре описано, как кластер сервера запускается и получает контроль над общими дисками. В этом сценарии предполагается, что одновременно включается только один узел:

При запуске компьютера драйвер диска кластера (Clusdisk.sys) считывает следующий локальный раздел реестра, чтобы получить список подписей общих дисков в управлении кластером: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ClusDisk\Parameters \Signatures

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

При запуске первого узла в кластере драйвер диска кластера сначала помечает все LUN (LUN: логический номер единицы, уникальный идентификатор, используемый в шине SCSI для различения устройств, которые совместно используют одну шину), которые соответствуют ключу Signatures как автономным томам. Обратите внимание, что это не то же самое, что перевод ресурса кластера в автономный режим. Том помечается как автономный, чтобы предотвратить одновременный доступ на запись нескольких узлов к томам. Если кластер является кластером с общими дисками, один из дисков назначается службой кластера в качестве диска кворума. Диск кворума — это первый ресурс, подключенный к сети при попытке службы кластера сформировать кластер.

Когда служба кластера на формируемом узле запускается, она сначала пытается подключить физическое устройство, назначенное в качестве диска кворума. Он выполняет алгоритм арбитража дисков на диске кворума для получения права владения. При успешном арбитраже служба кластера отправляет запрос в clusdisk, чтобы начать отправку периодических резервов на диск (для сохранения владения). Затем служба кластера отправляет запрос на clusdisk, чтобы разблокировать доступ к диску кворума и подключает тома на диске. Успешное подключение томов завершает процедуру в сети, а служба кластера продолжает процесс формирования кластера. Запрос передается из драйвера диска кластера в стек драйверов хранилища Майкрософт и, наконец, в драйвер, относящееся к адаптеру, который обменивается данными с дисками. Он также может быть передан любому программному обеспечению multipath, работающему в стеке хранилища.

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

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

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

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

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

  4. Через семь секунд после запроса сброса SCSI претендент пытается зарезервировать диск кворума. Если узел защитника подключен и работает, он уже зарезервирует диск кворума, как это обычно делается каждые три секунды. Претендент обнаруживает, что он не может зарезервировать кворум, и завершает службу кластера. Если защитник работает неправильно, претендент может успешно зарезервировать диск кворума. Через десять секунд претендент переводит кворум в режим "в сети" и берет на себя ответственность за все ресурсы в кластере. Если защищаемый узел теряет право собственности на устройство кворума, служба кластера на защищаемом узле немедленно завершает работу.

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