Кластеры SQL Server с несколькими подсетями

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

В этом разделе:

  • Отказоустойчивый кластер SQL Server с несколькими подсетями (2 узла, 2 подсети)

  • Вопросы ресурса IP-адреса

  • Задержка восстановления клиента при отработке отказа

  • См. также

Отказоустойчивый кластер SQL Server с несколькими подсетями (2 узла, 2 подсети)

На следующем рисунке показан экземпляр отказоустойчивого кластера SQL Server 2012, состоящий из двух узлов в двух подсетях.

Архитектура c несколькими подсетями c MultiSubnetFailover

[В начало]

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

Далее представлено несколько примеров экземпляров отказоустойчивых кластеров SQL Server, узлы которых располагаются в разных подсетях.

  • Экземпляр отказоустойчивого кластера SQL Server SQLCLUST1 включает в себя Узел1 и Узел2. Узел1 подключен к Подсети1. Узел2 подключен к подсети2. Программа установки SQL Server видит эту конфигурацию как кластер с несколькими подсетями и устанавливает для зависимости ресурса IP-адреса значение OR.

  • Экземпляр отказоустойчивого кластера SQL Server SQLCLUST1 включает в себя Узел1, Узел2 и Узел3. Узел1 и Узел2 подключены к Подсети1. Узел 3 подключен к подсети 2. Программа установки SQL Server видит эту конфигурацию как кластер с несколькими подсетями и устанавливает для зависимости ресурса IP-адреса значение OR. Поскольку Узел1 и Узел2 расположены в одной подсети, такая конфигурация позволяет обеспечить более высокой уровень доступности локальных ресурсов.

  • Экземпляр отказоустойчивого кластера SQL Server SQLCLUST1 включает в себя Узел1 и Узел2. Узел1 находится в Подсети1. Узел 2 подключен к подсети 1 и подсети 2. Программа установки SQL Server видит эту конфигурацию как кластер с несколькими подсетями и устанавливает для зависимости ресурса IP-адреса значение OR.

  • Экземпляр отказоустойчивого кластера SQL Server SQLCLUST1 включает в себя Узел1 и Узел2. Узел1 подключен к Подсети1 и Подсети2. Узел2 также подключен к Подсети1 и Подсети2. Для зависимости ресурса IP-адреса программой установки SQL Server устанавливается значение AND.

    ПримечаниеПримечание

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

Вопросы ресурса IP-адреса

В конфигурации отказоустойчивого кластера с узлами в нескольких подсетях, IP-адреса не принадлежат всем узлам отказоустойчивого кластера, в момент запуска SQL Server не все из них могут находиться в сети. Начиная с выпуска SQL Server 2012, можно устанавливать для зависимости ресурса IP-адреса значение OR. Это позволяет SQL Server находиться в сети, если имеется хотя бы один действительный IP-адрес, к которому можно выполнить привязку.

ПримечаниеПримечание

В версиях SQL Server, более ранних, чем SQL Server 2012, при создании кластерных конфигураций с использованием нескольких подсетей использовалась технология распределенных виртуальных ЛС, которая позволяла использовать один IP-адрес для отработки отказа на нескольких объектах. Благодаря новым возможностям SQL Server, позволяющим обеспечивать кластеризацию узлов, размещенных в разных подсетях, вы можете настраивать отказоустойчивые кластеры SQL Server на разных сайтах без внедрения технологии распределенных виртуальных ЛС.

Рекомендации по заданию зависимости ресурса IP-адреса со значением OR

Если для зависимости ресурса IP-адреса устанавливается значение OR, рекомендуется задать следующий режим отработки отказа.

  • При возникновении сбоя на одном из IP-адресов узла, которому в настоящий момент принадлежит группа ресурсов кластера SQL Server, отработка отказа запускается автоматически только после сбоя всех действительных IP-адресов в этом узле.

  • При отработке отказа SQL Server перейдет в режим «в сети» в том случае, если для него возможна привязка хотя бы к одному действительному IP-адресу на текущем узле. IP-адреса, которые не были привязаны к SQL Server при запуске, будут указаны в журнале ошибок.

[В начало]

Если экземпляр отказоустойчивого кластера SQL Server установлен параллельно с отдельным экземпляром компонента Компонент SQL Server Database Engine, то необходимо исключить возникновение конфликта номеров портов TCP в IP-адресах. Конфликты обычно возникают в том случае, когда два экземпляра компонента Компонент Database Engine одновременно настроены на использование стандартного порта TCP (1433). Чтобы предотвратить возникновение конфликтов, настройте один экземпляр на использование фиксированного порта, отличного от установленного по умолчанию. Обычно настройку фиксированного порта проще всего выполнить на отдельном экземпляре. Настройка компонента Компонент Database Engine на использование различных портов позволит предотвратить непредвиденные конфликты IP-адресов и TCP, которые блокируют запуск экземпляра в случае ошибки экземпляра отказоустойчивого кластера SQL Server при переходе в режим ожидания.

Задержка восстановления клиента при отработке отказа

Экземпляр отказоустойчивого кластера, содержащий несколько подсетей, по умолчанию включает ресурс кластера RegisterAllProvidersIP в качестве своего сетевого имени. В конфигурации с несколькими подсетями как подключенные, так и отключенные от сети IP-адреса сетевого имени будут зарегистрированы на сервере DNS. Затем клиентское приложение извлечет все зарегистрированные IP-адреса с сервера DNS и попытается подключиться к ним либо по порядку, либо параллельно. Это означает, что время восстановления клиента при отработке отказов в нескольких подсетях больше не зависит от задержек обновления DNS. По умолчанию клиент пытается подключиться к IP-адресам по порядку. Если клиент использует в строке подключения новый дополнительный параметр MultiSubnetFailover=True, вместо этого он попытается подключиться к IP-адресам одновременно и подключится к первому серверу, который ответит. Это поможет свести к минимуму задержку восстановления клиента при отработке отказов. Дополнительные сведения см. в разделах Возможность подключения клиентов AlwaysOn (SQL Server) и Создание или настройка прослушивателя группы доступности (SQL Server).

При устаревших клиентских библиотеках или сторонних поставщиках данных использовать параметр MultiSubnetFailover в строке подключения невозможно. Чтобы обеспечить оптимальную работу клиентского приложения с экземпляром отказоустойчивого кластера в SQL Server 2012, содержащим несколько подсетей, попробуйте скорректировать время ожидания соединения в строке подключения клиента на 21 секунду для каждого дополнительного IP-адреса. Это позволит предотвратить окончание времени ожидания при попытке переподключения клиента до того, как будет завершен циклический перебор всех IP-адресов в экземпляре отказоустойчивого кластера, содержащего несколько подсетей.

Период ожидания соединения клиента по умолчанию для среды SQL Server Management Studio и sqlcmd составляет 15 секунд.

[В начало]

См. также

Описание содержимого

Раздел

Установка отказоустойчивого кластера SQL Server

Создание нового отказоустойчивого кластера SQL Server (программа установки)

Обновление существующего отказоустойчивого кластера SQL Server на месте

Обновление экземпляра отказоустойчивого кластера SQL Server (программа установки)

Обслуживание существующего отказоустойчивого кластера SQL Server

Добавление или удаление узлов отказоустойчивого кластера SQL Server (программа установки)

Отказоустойчивые кластеры Windows

Отказоустойчивые многосайтовые кластеры Windows 2008 R2

Используйте оснастку управления отказоустойчивым кластером для просмотра событий и журналов WSFC

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

Используйте Windows PowerShell для создания файла журнала для всех узлов (или конкретного узла) в отказоустойчивом кластере WSFC

Командлет Get-ClusterLog отказоустойчивого кластера

[В начало]