Windows cluster with iscsi

Отказоустойчивый ISCSI кластер на Windows Server 2012 R2

В данной статье мы рассмотрим как настроить Отказоустойчивый ISCSI кластер на Windows Server 2012 R2. Для настройки нам понадобятся 2 сервера.

Кластер в данной статье будет настраиваться по следующей схеме:

Соответственно у вас должна быть сеть хранения данных, подключенная по FC, SAS или ISCSI (необходим ISCSI протокол версии не ниже iSCSI-3)

Должна быть настроена LAN сеть на каждом узле кластера, и отдельная сеть между кластерами.

На первом сервере включаем компонент “отказоустойчивая кластеризация”

Нажимаем далее, и выбираем установить.

По аналогии устанавливаем компонент на втором сервере.

Перейдем на первый сервер и перейдем к созданию кластера.

Открываем Диспетчер отказоустойчивости кластеров.

Выбираем создать кластер

Добавляем сервера (узлы кластера)

Далее по желанию запускаем проверочные тесты.

Вводим имя кластера и адреса.

Создаем кластер. Обязательно добавляем все допустимые хранилища.

Дождитесь окончания работы мастера. Если мастер не находит узлы кластера, проверьте настройки брандмауэра или сети.

Далее в консоли должен появится созданный кластер.

Добавляем роль ISCSI target на каждый узел кластера.

Дожидаемся установки компонента роли.

Возвращаемся в консоль управления кластером, и добавляем новую роль кластера.

Выбираем “Настроить роль”

Выбираем роль ISCSI сервера

Указываем название кластера и сетевые адреса.

Выбираем диск кластера.

Подтверждаем создание роли.

Дожидаемся установки роли.

Теперь перейдем к настройке ISCSI сервера.

На одном из узлов кластера открываем диспетчер сервера, в нем открываем файловые службы и выбираем ISCSI.

Запускаем мастер создания ISCSI диска.

Выбираем кластер и общий кластерный диск.

Вводим название диска.

Указываем размер диска и его тип.

Далее выбираем пункт – “Новая цель ISCSI”

Далее вводим название цели ISCSI.

Указываем каким серверам можно подключаться к ISCSI цели.

Указываем учетные данные для подключения.

Далее нажимаем “Создать” и ожидаем окончания работы мастера.

Готово! Теперь указанные клиенты могут подключаться к кластеру ISCSI. Для подключения нужно использовать DNS имя кластера.

Отказоустойчивый кластер Hyper-V c хранилищем iSCSI на Windows Server 2016

В данной статье мы опишем развертывания кластера Hyper-V, на операционной системой ОС Windows 2016.
В примере рассмотрим вариант с двумя серверами, два сервера с ролью Hyper-V и один iSCSI.

Серверам кластера даем имена SRV-1 и SRV-2, хранилищу — iSCSI Storage.

На SRV-1 и SRV-2 устанавливаем роль Hyper-V и Failover Cluster.

  • Добавляем роль Hyper-V
  • Добавляем компонент Failover Cluster

На серверах SRV-1 и SRV-2 запускаем службу iSCSI Initiator.

Переходим на сервер iSCSI Storage. Из раздела File and iSCSI Services устанавливаем роль iSCSI Target Server.

Добавляем роль iSCSI Target Server

На сервере iSCSI Storage в Server Manager находим iSCSI и создаем 2 виртуальных диска.
Диск свидетеля кворума и диск для хранения виртуальных машин.

Читайте также:  Настройка меню загрузки windows

Диск-свидетель — это служебный ресурс кластера, для него достаточно выделить минимальный размер, в нашем случае 1ГБ. Даем ему название Quorum, диску для хранения виртуальных машин даем название — Storage и задаем соответствующий размер.

Создаем iSCSI таргет. Задаем имя iSCSI таргета.

Добавляем сервера, которые могут подключаться к этим дискам (iSCSI инициаторы).

CHAP пропускаем.

Следующим шагом, создаем второй диск, называем его Storage и подключаем к уже созданному iSCSI таргет.

В Server Manager мы видим созданный таргет и инициаторы, но диски пока не подключены.

Возвращаемся на сервера SRV-1 и SRV-2.

Запускаем оснастку iSCSI Initiator. Добавляем таргет и подключаемся к нему.

В Disk Management мы видим 2 новых диска. Инициализируем и форматируем новые диски. На втором сервере форматирование не нужно, только инициализация.

Здесь вернемся на сервер iSCSI Storage и убедимся, что все подключено.

Переходим в диспетчер Hyper-V на серверах SRV-1 и SRV-2 и настраиваем виртуальный коммутатор. Обязательно даем одинаковое название коммутаторам на обоих серверах.

Открываем оснастку Failover Cluster Manager и приступаем к созданию кластера.

Вначале запускаем проверку. Если проверка не выдала ошибок, создаем кластер.

После проверки создаем кластер. При создании кластера для него создается виртуальный объект, которому даем имя и IP-адрес. В AD в том же OU, в котором находятся сервера появится новая машина.

Добавляем диски.

В Failover Cluster Manager переходим в Storage -> Disk -> справа выбираем add Disk и добавляем диски.

Далее указываем Disk Quorum (диск-свидетель)

И добавляем Disk Storage в общие тома кластера.

Для того, чтобы диск мог использоваться сразу несколькими участниками кластера на нем создается CSVFS — реализуемая поверх NTFS кластерная файловая система. Общие хранилища становятся доступны на всех узлах кластера на C:\ClusterStorage\VolumeN

Настраиваем сеть

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

На этом настройка кластера окончена.

Теперь все виртуальные машины должны создаваться не в диспетчере Hyper-V, а в Failover Cluster Manager. Для создания новой машины заходим в Roles -> Virtual Machines -> New Virtual Machine. Выбираем узел, на котором будет находится машина.

В качестве расположения виртуальной машины обязательно укажите один из общих томов кластера C:\ClusterStorage\VolumeN.

В параметрах машины Automatic Start Action указываем Automatically Start и задержку старта, что бы избежать перегрузки системы.

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

На этом настройка виртуальной машины закончена.

Проверяем миграцию виртуальной машины
Move -> Live Migration -> выбираем ноду.

Проанализируем созданный кластер с
BPA (Best Practices Analyzer, Анализатором наилучших решений).

Читайте также:  Windows 10 как работать с двумя экранами

Переходим в Server Manager -> Hyper-V -> справа Tasks -> Start BPA Scan.

Вот что показал мне тест.

По первому пункту — у меня нет необходимости в создании реплики.

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

По третьему пункту — Расширение виртуального коммутатора WFP должно быть включено, если оно требуется сторонними расширениями.

Настройка и подключение iSCSI-диска в Windows Server

Протокол iSCSI (Internet Small Computer System) представляет собой протокол SCSI, работающий с системами хранения данных поверх протокола IP. С помощью iSCSI вы сможете подключать ваши сервера к сетевым хранилищам по обычной TCP/IP сеть без использования FC. В этой статье мы рассмотрим, как настроить iSCSI-хранилище на одном Windows Server 2019 и использовать его на других серверах(в Windows Server 2016 и 2012 R2 все настраивается аналогично). Первый пример использования iSCSI: файловому серверу необходимо дополнительное место, и мы по сети подключаем к нему виртуальный диск с другого сервера-хранилища по iSCSI. Другой пример – построение отказоустойчивого кластера, когда для нескольких серверов необходимо общее хранилище.

Для использования ISCSI-диска нужно на сервере-хранилище настроить виртуальный диск (это обычный vhd/vhdx файл) и опубликовать его в виде iSCSI таргета, к которому подключаются iSCSI инициаторы (другие сервера и устройства).

Настройка iSCSI target в Windows Server

Сначала нужно включить iSCSI target (активировать роль iSCSI Target Server), зайдя в File and Storage Services -> File and iSCSI Services.

Install-WindowsFeature -Name FS-iSCSITarget-Server

Теперь на iSCSI сервере нужно создать виртуальный диск. Для этого необходимо зайти в Server Manager -> File and Storage Services -> iSCSI, нажать To create an iSCSI virtual disk, start the New iSCSI Virtual Disk Wizard.

В мастере создания виртуального iSCSI диска нужно выбрать физический раздел, на котором его нужно разместить. Далее нужно присвоить имя iSCSI диска, указать размер диска и его тип (Fixed Size, Dynamically expanding или Differencing), имя iSCSI таргета.

На шаге Access Servers нужно указать серверы (iSCSI инициаторы), которые смогут подключаться к данному iSCSI таргет, выбрав один из вариантов подключения:

  • IQN (придется сначала включить iSCSI initiator на сервере и скопировать IQN);
  • DNS Name
  • IP Address;
  • MAC Address.

Пусть используется вариант с IP-адресом.

Следующий шаг в этом мастере – это настройка протокола аутентификации CHAP. Его следует использовать, если необходимо проверять подлинность подключения от инициатора. Далее он включается, вписывается имя пользователя и 12-значный пароль (или длиннее), затем Next -> Next -> Finish. Проверьте, что виртуальный диск iscsiDisk2.vhdx создался в каталоге D:\iSCSIVirtualDisks.

Можно создать iSCSI диск с помощью PowerShell. Создадим виртуальный диск размером 200 Гб:

New-IscsiVirtualDisk -Path С:\iSCSIVirtualDisks\iscsiDisk2.vhdx -Size 200GB.

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

Читайте также:  Manjaro linux как установить virtualbox

Если нужно использовать диск фиксированного размера (такие диске резервируют место на физическом носителе при создании), то его создать той же командой с дополнительным параметром UseFixed:

New-IscsiVirtualDisk -Path С:\iSCSIVirtualDisks\iscsiDisk2.vhdx -Size 200GB –UseFixed

Далее таргету присваивается имя, здесь же можно разрешить к нему доступ с IP-адреса сервера-инициатора:

New-IscsiServerTarget -TargetName «iscsiTarget33» -InitiatorId @(«IPAddress:172.17.244.8»)

При желании вместо IP-адреса можно использовать IQN имя (iSCSI Qualified Name – уникальный идентификатор iSCSI устройства в сети):

New-IscsiServerTarget -TargetName iscsiTarget33 -InitiatorIds “IQN: 1991-05.com.microsoft:win2019test.ddd.com”

Затем желательно проверить результат:

Get-IscsiServerTarget | fl TargetName, LunMappings

Получить полное имя таргета можно с помощью командлета Get-IscsiTarget , а затем подключить таргет:

Connect-IscsiTarget -NodeAddress iqn.1991-05.com.microsoft:win2019test-iscsitarget33-target

Настройка iSCSI Initiator в Windows Server 2019

Следующий шаг – подключение к созданному iSCSI диску со второго сервера-инициатора. Перейдите в панель управления Control Panel, запустите iSCSI initiator (или выполните команду iscsicpl.exe ).

В консоли управления службами services.msc поставьте автоматический тип запуска для службы Microsoft iSCSI Initiator Service, Или используйте команду:

Set-Service -Name MSiSCSI -StartupType Automatic

Перейдите на вкладку Discovery, нажмите на кнопку Discover Portal и введите ввести IP-адрес первого сервера (iSCSI-таргет). Чтобы трафик ходил только через определённый сетевой интерфейс, нужно нажать кнопку Advanced, и изменить значения по умолчанию в выпадающих списках: Local Adapter –> Microsoft iSCSI Initiator, Initiator IP –> 172.17.244.8.

Теперь переключитесь на первую вкладку Targets, на ней появится новое подключение. Чтобы включить его, нажмите Connect -> Advanced, выберите значения из выпадающих полей, включите галочку Enable CHAP log on, укажите имя пользователя и 12-значный пароль.

Осталось инициализировать сам iSCSI-диск, который сначала находится в состоянии Offline. Для этого на сервере-инициаторе необходимо в консоли Disk Management в контекстном меню нового диска выбрать пункт Online, а затем – Initialize Disk. Создайте на новом диске один или несколько разделов, присвойте метку и букву диска. Отформатируйте в файловой системе NTFS.

Для быстрой инициализации и форматирования нового диска можно использовать следующий однострочный PowerShell (см. пример в статье об управления дисками и разделами из PowerShell):

Get-Disk |Where-Object PartitionStyle -eq ‘RAW’ |Initialize-Disk -PartitionStyle MBR -PassThru |New-Partition -AssignDriveLetter -UseMaximumSize |Format-Volume -FileSystem NTFS -Confirm:$false

Теперь этот виртуальный диск, подключенный с другого сервера по протоколу iSCSI можно использовать как обычный локально подключенный диск.

Также вы можете подключить iSCSI диск на инициаторе из PowerShell. Чтобы получить IQN таргета, используйте командлет Get-iSCSITarget .

Чтобы подключится к iSCSI таргет выполните команду:

Connect-IscsiTarget –IsPersistent $False и введите IQN.

Если использовалась дополнительная проверка аутентификации CHAP, то необходимо будет это указать, используя следующую конструкцию:

Get-iScsiTarget | Connect-iScsitarget –AuthenticationType ONEWAYCHAP –ChapUserName -ChapSecret

Если вы хотите обеспечить высокую доступность и балансировку нагрузки для iSCSI дисков, можно использовать несколько избыточные сетевые компоненты (сетевые карты, коммутаторы) и модуль MPIO.

Оцените статью