Ласкаво просимо до dev.net.ua Увійти | Приєднатися | Допомога

Ivan Bilokon

This blog is about my findings
Автоматизация создания отказоустойчивого кластера с CSV на Microsoft Windows Server 2008 R2 (2).

В предыдущей статье мы поговорили о первых шагах к настройке отказоустойчивого кластера, а именно автоматизированной настройке соединения с iSCSI Target и активации фичи Failover Clustering. Сейчас же мы рассмотрим само создание кластера и добавление к нему узлов.

В отличие от предыдущей задачи, автоматизация настройки кластера очень упрощается, если использовать PowerShell.

Настройка кластера – CreateCluster.ps1.

import-module FailoverClusters

# считываем список хостов в переменную

$hosts=Get-Content hostlist.txt

$ClusterFqdn = Read-Host "Enter Cluster Name for the new cluster"

$ClusterIP = Read-Host "Enter cluster primary IP"

#Создание нового кластера

New-Cluster -Node $hosts -Name $ClusterFqdn -NoStorage -StaticAddress "$ClusterIP"

#Далее мы должны добавить диски к кластеру. Если диски уже ранее были использованы в другом кластере, при добавлении может возникнуть ряд неприятностей, одна из которых – ошибка типа «Cluster disk with identifier (identifier) has a persistent reservation on it ,the disk might be part of other cluster.». Поэтому выводим пользователю сообщение о возможных проблемах и методом их решения.

Write-Host "Configure iSCSI target disks. Assign letters to them and press Enter. If discs were used earlier for Cluster Shared Volume you need to run cluster.exe node <TheNodeName> /clear:<disknumber> for all the iSCSI disks of the node..." -ForegroundColor yellow

Read-Host

# Добавляем диски к кластеру

Write-Host "Add disks to Windows 2008 R2 Cluster..." -ForegroundColor yellow

Get-ClusterAvailableDisk | Add-ClusterDisk

# Изменяем тип кворума

Write-Host "Change the Quorum model Windows 2008 R2 Cluster..." -ForegroundColor yellow

Set-ClusterQuorum -NodeMajority

#Включаем CSV

Write-Host "Enabling Cluster Shared Volume" -ForegroundColor yellow

Get-Cluster | %{$_.EnableSharedVolumes = "Enabled/NoticeRead"}

#Добавляем наши iSCSI диски к CSV

Write-Host "Adding Cluster Disks to Cluster Shared Volume..." -ForegroundColor yellow

Get-ClusterResource | where {$_.OwnerGroup -match "Available Storage"} | Add-ClusterSharedVolume

 

Данный скрипт нужно запускать на одном из узлов кластера. Конечно можно реализовать и удаленность, но с PsExec PowerShell работает плохо, а Remoting надо дополнительно настраивать. Смысла в удаленном запуске данного скрипта немного, а вот для удобства могу посоветовать запускать его из bat файла примерно такого содержания:

powershell.exe -NoExit -File CreateCluster.ps1 -ExecutionPolisy RemoteSigned

Это позволит запустить скрипт, не настраивая при этом политики запуска всей оболочки PowerShell.

На этом пока все.

Спасибо за внимание!

Posted: Wednesday, October 12, 2011 1:48 PM від Ivan Bilokon

Коментарі

Немає коментарів

Анонімні коментарі деактивовані. Увійдіть або Зареєструйтесь щоб мати доступ до ресурсів Спільноти.