Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Применимо к:SQL Server в Linux
Если группа доступности AlwaysOn (AG) или экземпляр отказоустойчивого кластера (FCI) охватывает несколько сайтов, каждый сайт обычно имеет собственную сеть, что часто означает, что у каждого сайта есть собственный IP-адрес.
Например, адреса сайта A начинаются с, а адреса B сайта начинаются с192.168.1.<x>192.168.2.<x>, где <x> является частью IP-адреса, уникального для сервера. Без какой-либо маршрутизации на сетевом уровне эти серверы не могут взаимодействовать друг с другом.
Для этого существует два способа:
- настройте сеть, которая связывает две разные подсети (то есть VLAN)
- настройка маршрутизации между подсетями
Решение на основе виртуальной локальной сети
Предварительные требования: Для решения на основе виртуальной локальной сети каждый сервер, участвующий в группе доступности или кластере независимости от сбоев (FCI), должен иметь две сетевые карты (сетевой адаптер с двумя портами будет одной точкой сбоя на физическом сервере), чтобы можно было назначить IP-адреса как в собственной подсети, так и в виртуальной локальной сети. Это требование в дополнение к любым другим потребностям сети, таким как iSCSI, который также нуждается в собственной сети.
Создание IP-адресов для AG или FCI осуществляется на VLAN. В следующем примере VLAN имеет подсеть 192.168.3.<x>, поэтому IP-адрес, созданный для AG или FCI, — это 192.168.3.104. Так как Always On availability group (AG) или экземпляру отказоустойчивого кластера (FCI) назначен один IP-адрес, никакой дополнительной настройки не требуется.
Настройка с использованием Pacemaker
В Windows кластер отказоустойчивости Windows Server (WSFC) изначально поддерживает несколько подсетей и обрабатывает несколько IP-адресов посредством зависимости ИЛИ от IP-адреса. В Linux отсутствует зависимость OR, но можно обеспечить поддержку нескольких подсетей в собственном коде с помощью Pacemaker, хотя при этом нельзя использовать обычную командную строку Pacemaker. Вместо этого нужно изменить базу информации о кластере (CIB). Файл CIB является XML-файлом с конфигурацией Pacemaker.
Обновление БД информации о кластере
Экспорт базы информации о кластере.
sudo pcs cluster cib <filename>В этом примере
<filename>— это имя, которым вы хотите назвать CIB.Измените созданный файл. Найдите раздел
<resources>. Вы видите различные ресурсы, созданные для группы доступности или FCI. Найдите объект, связанный с IP-адресом.<instance_attributes>Добавьте раздел со сведениями для второго IP-адреса либо до, либо после существующего, но перед<operations>. Синтаксис выглядит примерно так:<instance_attributes id="<NameForAttribute>"> <nvpair id="<NameForIP>" name="ip" value="<IPAddress>"/> </instance_attributes>В этом примере
<NameForAttribute>это уникальное имя этого атрибута,<NameForIP>связанное с IP-адресом,<IPAddress>является IP-адресом второй подсети.Ниже показан пример.
<instance_attributes id="virtualip-instance_attributes"> <nvpair id="virtualip-instance_attributes-ip" name="ip" value="192.168.1.102"/> </instance_attributes>По умолчанию в экспортированном XML-файле CIB есть только один
<instance_attributes />. Если есть две подсети, вам потребуется две<instance_attributes />записи.Ниже приведен пример записей для двух подсетей:
<instance_attributes id="virtualip-instance_attributes1"> <rule id="Subnet1-IP" score="INFINITY" boolean-op="or"> <expression id="Subnet1-Node1" attribute="#uname" operation="eq" value="Node1" /> <expression id="Subnet1-Node2" attribute="#uname" operation="eq" value="Node2" /> </rule> <nvpair id="IP-In-Subnet1" name="ip" value="192.168.1.102"/> </instance_attributes> <instance_attributes id="virtualip-instance_attributes2"> <rule id="Subnet2-IP" score="INFINITY"> <expression id="Subnet2-Node1" attribute="#uname" operation="eq" value="Node3" /> </rule> <nvpair id="IP-In-Subnet2" name="ip" value="192.168.2.102"/> </instance_attributes>Следует использовать
boolean-op="or", если в подсети более одного сервера.Импортировать измененный CIB и перенастроить Pacemaker.
sudo pcs cluster cib-push <filename>В этом примере
<filename>— имя файла CIB с измененными сведениями ОБ IP-адресе.
Проверка изменений и отработки отказа
После успешного применения CIB с обновленной конфигурацией, отправьте ping на DNS-имя, ассоциированное с ресурсом IP-адреса в Pacemaker. Он должен отражать IP-адрес, связанный с подсетью, в которой в данный момент размещаются группа доступности Always On или экземпляр отказоустойчивого кластера.
Выполните отработку отказа группы доступности Always On или экземпляра отказоустойчивого кластера в другой подсети.
После полного подключения Always On группы доступности или экземпляра отказоустойчивого кластера отправьте ping на DNS-имя, связанное с IP-адресом. Он должен отражать IP-адрес во второй подсети.
При необходимости переведите Always On AG или FCI обратно в исходную подсеть.