вторник, 8 декабря 2009 г.

Настройка Hyper-V Server R2 Failover Cluster из командной строки (Часть I)

Готовясь к сертификации по Windows Server 2008, я решил более обстоятельно поработать с SCVMM 2008 R2 и Hyper-V R2. Среди прочих задач захотелось поднять двухузловой отказоустойчивый кластер. Вот только его настройка из оболочки sconfig и оснасток MMC показалась мне довольно тривиальной, поэтому решил выполнить аналогичные операции, используя только лишь командную строку.

Схему организации кластера выбрал самую простую:

Один контроллер домена (W2K8-DCS01), один сервер, выполняющий роль iSCSI Target (W2K8-STR01), два узла Hyper-V Server R2 (W2K8-HYP01 и W2K8-HYP02) с двумя сетевыми адаптерами: один - для доступа к узлам, работы с виртуальными машинами, а также подключения к iSCSI Target'ам, второй - для передачи heartbeat. Кворум предполагается размещать на одном LUN'е (Quorum), презентованном по iSCSI, раздел для хранения виртуальных машин - на втором (Storage).


Первоначальная настройка
Перед тем, как начать собирать кластер, потребуется выполнить настройку сети на сервере Hyper-V.

Закрываем неприглядное окно sconfig'а, на передний план выходит cmd.

Сначала включим несколько дополнительных компонентов (службы кластера, PowerShell и Framework для него):
dism /online /enable-feature /featurename:FailoverCluster-Core
dism /online /enable-feature /featurename:NetFx2-ServerCore
dism /online /enable-feature /featurename:MicrosoftWindowsPowerShell


Они понадобятся нам на более поздних этапах настройки.

Кстати, получить список доступных (активных/неактивных) компонентов можно с помощью команды:
dism /online /get-features


С помощью netsh настроим сетевые подключения. Сначала узнаем имена, которые система назначила сетевым адаптерам:
netsh interface show interface

В моем случае адаптер "Local Area Network" подключен к общей сети, адаптер "Local Area Network 3" к частной (heartbeat). Исходя из первоначального плана, назначаем адреса, маски, DNS, Default Gateway:
netsh interface ipv4 set address "Local Area Connection" static 192.168.10.11 255.255.255.0 192.168.10.254
netsh interface ipv4 set dnsserver "Local Area Connection" static 192.168.10.1 primary
netsh interface ipv4 set address "Local Area Connection 3" static 10.0.0.1 255.255.255.252


Без RDP может быть скучно, поэтому включим и его:
Cscript.exe "C:\Windows\System32\Scregedit.wsf" /AR 0

И разрешим подсоединятся старым RDP клиентам:
Cscript.exe "C:\Windows\System32\Scregedit.wsf" /CS 0

Хотя, мне больше нравится удаленно управлять сервером с помощью WinRM.

Перед присоединением сервера к домену, изменим его имя на что-то более благозвучное:
netdom renamecomputer %computername% /newname <НОВОЕ_ИМЯ_СЕРВЕРА>

Перезагрузим сервер:
shutdown -r -t 00

Добавим сервер в домен:
netdom join %computername% /domain:<ИМЯ_ДОМЕНА> /userd:<УЧЕТНАЯ_ЗАПИСЬ> /passwordd:<ПАРОЛЬ>

и снова перезагрузим сервер.

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

Однако, мы не ищем легких путей, поэтому будем настраивать все из командной строки. :)

По-умолчанию служба iSCSI Initiator выключена, поэтому для начала запустим ее:
net start msiscsi

А чтобы не повторять эту операцию каждый раз при загрузке сервера вручную настроим ее на автоматический старт:
sc config msiscsi start= auto

На очереди сама консольная утилита - iscsicli. С ее помощью и настроим iSCSI Initiator на узле. Подключимся к iSCSI Target серверу:
iscsicli qaddtargetportal <ИМЯ_СЕРВЕРА>
, где <ИМЯ_СЕРВЕРА> - имя или IP адрес iSCSI хранилища.

Посмотрим на список доступных целей:
iscsicli listtargets

Подключимся к обоим целям:
iscsicli qlogintarget <IQN>
, где <IQN> - IQN целей, к которым требуется подключиться

а также сделаем так, чтобы они автоматически подключались после перезагрузки сервера:
iscsicli persistentlogintarget <IQN> t * * * * * * * * * * * * * * * 0


Разбиение дисков
Теперь потребуется создать отформатировать разделы на подключенных дисках. Сделать это можно с помощью консольной утилиты Diskpart.

Запустим Diskpart и посмотрим на подключенные диски:
list disk
Выберем первый диск, создадим и отформатируем на нем раздел под кворум:
select disk 1
create partition primary
format fs=ntfs label="Quorum" quick


аналогичные операции выполним для второго диска под хранилище виртуальных машин:
select disk 2
create partition primary
format fs=ntfs label="Storage" quick


Заключение
На этом первая часть завершена. В следующий раз я опишу процесс настройки самого кластера и подключения второго узла. До встречи!

Материалы
При подготовке статьи использовались следующие материалы:
  1. Сделай сам: стенд с решениями для виртуализации — настройка узлов кластера для использования общего хранилища

Комментариев нет:

Отправить комментарий