Vytvoření clusteru Azure Stack HCI pomocí Windows PowerShellu
Platí pro: Azure Stack HCI verze 22H2
Důležité
Azure Stack HCI je teď součástí Azure Local. Probíhá přejmenování dokumentace k produktu. Starší verze Azure Stack HCI, například 22H2, ale budou dál odkazovat na Azure Stack HCI a nebudou odrážet změnu názvu. Další informace.
Upozorňující
Pokyny k nasazení uvedené v tomto článku platí pro starší verzi Azure Stack HCI verze 22H2. Pro nová nasazení doporučujeme použít nejnovější obecně dostupnou verzi Azure Local, viz Informace o místním nasazení Azure.
V tomto článku se dozvíte, jak pomocí Windows PowerShellu vytvořit hyperkonvergovaný cluster Azure Stack HCI, který používá Prostory úložiště s přímým přístupem. Pokud k vytvoření clusteru raději používáte průvodce vytvořením clusteru v Centru pro správu Systému Windows, přečtěte si téma Vytvoření clusteru pomocí centra Windows Admin Center.
Poznámka:
Pokud provádíte instalaci jednoho serveru Azure Stack HCI 21H2, vytvořte cluster pomocí PowerShellu.
Máte na výběr mezi dvěma typy clusterů:
- Standardní cluster s jedním nebo dvěma uzly serveru, který se nachází v jedné lokalitě.
- Roztažený cluster s alespoň čtyřmi uzly serveru, které jsou rozložené mezi dvěma lokalitami, se dvěma uzly na lokalitu.
Pro scénář s jedním serverem dokončete stejné pokyny pro jeden server.
Poznámka:
Roztažené clustery nejsou podporovány v konfiguraci jednoho serveru.
V tomto článku vytvoříme ukázkový cluster s názvem Cluster1, který se skládá ze čtyř uzlů serveru s názvem Server1, Server2, Server3 a Server4.
Pro scénář roztaženého clusteru používáme ClusterS1 jako název a používáme stejné čtyři uzly serveru roztažené mezi lokalitami Site1 a Site2.
Další informace o roztažených clusterech najdete v přehledu roztaženého clusteru.
Než začnete
Než začnete, ujistěte se, že:
- Přečtěte si a seznamte se s požadavky na systém Azure Stack HCI.
- Přečtěte si a seznamte se s požadavky na fyzickou síť a požadavky na síť hostitele pro Azure Stack HCI.
- Nainstalujte operační systém Azure Stack HCI na každý server v clusteru. Viz Nasazení operačního systému Azure Stack HCI.
- Ujistěte se, že jsou všechny servery ve správném časovém pásmu.
- Mít účet, který je členem místní skupiny Administrators na každém serveru.
- Mají v Active Directory práva k vytváření objektů.
- Pro roztažené clustery nastavte své dvě lokality předem ve službě Active Directory.
Použití Windows PowerShellu
PowerShell můžete spustit místně v relaci protokolu RDP na hostitelském serveru nebo můžete PowerShell spustit vzdáleně z počítače pro správu. Tento článek se zabývá vzdálenou možností.
Při spuštění PowerShellu z počítače pro správu zahrňte -Name
nebo -Cluster
parametr s názvem serveru nebo clusteru, který spravujete. Kromě toho může být při použití parametru -ComputerName
pro uzel serveru potřeba zadat plně kvalifikovaný název domény (FQDN).
Potřebujete rutiny Nástrojů pro vzdálenou správu serveru (RSAT) a moduly PowerShellu pro clustering s technologií Hyper-V a clustering s podporou převzetí služeb při selhání. Pokud rutiny a moduly ještě nejsou v relaci PowerShellu na počítači pro správu k dispozici, můžete je přidat pomocí následujícího příkazu: Add-WindowsFeature RSAT-Clustering-PowerShell
Krok 1: Nastavení serverů
Nejprve se připojte ke každému ze serverů, připojte je k doméně (stejnou doménu, ve které je počítač pro správu) a nainstalujte požadované role a funkce.
Krok 1.1: Připojení k serverům
Pokud se chcete připojit k serverům, musíte mít nejprve síťové připojení, připojit se ke stejné doméně nebo plně důvěryhodné doméně a mít oprávnění místního správce k serverům.
Otevřete PowerShell a použijte plně kvalifikovaný název domény nebo IP adresu serveru, ke kterému se chcete připojit. Po spuštění následujícího příkazu na každém serveru se zobrazí výzva k zadání hesla.
V tomto příkladu předpokládáme, že servery mají název Server1, Server2, Server3 a Server4:
Enter-PSSession -ComputerName "Server1" -Credential "Server1\Administrator"
Tady je další příklad toho stejného:
$myServer1 = "Server1"
$user = "$myServer1\Administrator"
Enter-PSSession -ComputerName $myServer1 -Credential $user
Tip
Při spouštění příkazů PowerShellu z počítače pro správu se může zobrazit chyba, jako je WinRM, nemůže požadavek zpracovat. Tento problém vyřešíte tak, že pomocí PowerShellu přidáte každý server do seznamu Důvěryhodných hostitelů v počítači pro správu. Tento seznam podporuje například zástupné kóty Server*
.
Set-Item WSMAN:\Localhost\Client\TrustedHosts -Value Server1 -Force
Chcete-li zobrazit seznam důvěryhodných hostitelů, zadejte Get-Item WSMAN:\Localhost\Client\TrustedHosts
.
Pokud chcete seznam vyprázdnit, zadejte Clear-Item WSMAN:\Localhost\Client\TrustedHost
.
Krok 1.2: Připojení k doméně a přidání účtů domény
V předchozím kroku jste se připojili ke každému uzlu serveru pomocí účtu <ServerName>\Administrator
místního správce .
Pokud chcete pokračovat, musíte servery připojit k doméně a použít účet domény, který je v místní skupině Administrators na každém serveru.
Pomocí této rutiny Enter-PSSession
se připojte ke každému serveru a spusťte následující rutinu a nahraďte název serveru, název domény a přihlašovací údaje domény:
Add-Computer -NewName "Server1" -DomainName "contoso.com" -Credential "Contoso\User" -Restart -Force
Pokud váš účet správce není členem skupiny Domain Admins, přidejte účet správce do místní skupiny Administrators na každém serveru nebo ještě lépe přidejte skupinu, kterou používáte pro správce. K tomu můžete použít následující příkaz:
Add-LocalGroupMember -Group "Administrators" -Member "king@contoso.local"
Krok 1.3: Instalace rolí a funkcí
Dalším krokem je instalace požadovaných rolí a funkcí Systému Windows na každý server clusteru. Tady jsou role, které se mají nainstalovat:
- BitLocker
- Přemostění datacenter
- Clustering s podporou převzetí služeb při selhání
- Souborový server
- Modul FS-Data-Odstranění duplicitních dat
- Hyper-V
- Hyper-V PowerShell
- Modul RSAT-Clustering-PowerShell
- Modul RSAT-AD-PowerShell
- NetworkATC
- NetworkHUD
- Omezení šířky pásma SMB
- Replika úložiště (pro roztažené clustery)
Pro každý server použijte následující příkaz (pokud jste připojení přes Vzdálenou plochu, vyhnete se tomuto parametru -ComputerName
a v dalších příkazech):
Install-WindowsFeature -ComputerName "Server1" -Name "BitLocker", "Data-Center-Bridging", "Failover-Clustering", "FS-FileServer", "FS-Data-Deduplication", "FS-SMBBW", "Hyper-V", "Hyper-V-PowerShell", "RSAT-AD-Powershell", "RSAT-Clustering-PowerShell", "NetworkATC", "NetworkHUD", "Storage-Replica" -IncludeAllSubFeature -IncludeManagementTools
Pokud chcete příkaz spustit na všech serverech v clusteru současně, použijte následující skript a upravte seznam proměnných na začátku tak, aby vyhovoval vašemu prostředí:
# Fill in these variables with your values
$ServerList = "Server1", "Server2", "Server3", "Server4"
$FeatureList = "BitLocker", "Data-Center-Bridging", "Failover-Clustering", "FS-FileServer", "FS-Data-Deduplication", "Hyper-V", "Hyper-V-PowerShell", "RSAT-AD-Powershell", "RSAT-Clustering-PowerShell", "NetworkATC", "NetworkHUD", "FS-SMBBW", "Storage-Replica"
# This part runs the Install-WindowsFeature cmdlet on all servers in $ServerList, passing the list of features in $FeatureList.
Invoke-Command ($ServerList) {
Install-WindowsFeature -Name $Using:Featurelist -IncludeAllSubFeature -IncludeManagementTools
}
Poté restartujte všechny servery:
$ServerList = "Server1", "Server2", "Server3", "Server4"
Restart-Computer -ComputerName $ServerList -WSManAuthentication Kerberos
Krok 2: Příprava na nastavení clusteru
Dále ověřte, že jsou vaše servery připravené pro clustering.
Při kontrole sanity zvažte spuštění následujících příkazů, abyste měli jistotu, že vaše servery ještě nepatří do clusteru:
Umožňuje Get-ClusterNode
zobrazit všechny uzly:
Get-ClusterNode
Umožňuje Get-ClusterResource
zobrazit všechny uzly clusteru:
Get-ClusterResource
Slouží Get-ClusterNetwork
k zobrazení všech sítí clusteru:
Get-ClusterNetwork
Krok 2.1: Příprava jednotek
Než povolíte Prostory úložiště s přímým přístupem, ujistěte se, že jsou trvalé jednotky prázdné. Spuštěním následujícího skriptu odeberte všechny staré oddíly a další data.
Poznámka:
Ze skriptu vylučte všechny vyměnitelné jednotky připojené k uzlu serveru. Pokud tento skript spouštíte například místně z uzlu serveru, nechcete vymazat vyměnitelnou jednotku, kterou můžete použít k nasazení tohoto clusteru.
# Fill in these variables with your values
$ServerList = "Server1", "Server2", "Server3", "Server4"
Invoke-Command ($ServerList) {
Update-StorageProviderCache
Get-StoragePool | ? IsPrimordial -eq $false | Set-StoragePool -IsReadOnly:$false -ErrorAction SilentlyContinue
Get-StoragePool | ? IsPrimordial -eq $false | Get-VirtualDisk | Remove-VirtualDisk -Confirm:$false -ErrorAction SilentlyContinue
Get-StoragePool | ? IsPrimordial -eq $false | Remove-StoragePool -Confirm:$false -ErrorAction SilentlyContinue
Get-PhysicalDisk | Reset-PhysicalDisk -ErrorAction SilentlyContinue
Get-Disk | ? Number -ne $null | ? IsBoot -ne $true | ? IsSystem -ne $true | ? PartitionStyle -ne RAW | % {
$_ | Set-Disk -isoffline:$false
$_ | Set-Disk -isreadonly:$false
$_ | Clear-Disk -RemoveData -RemoveOEM -Confirm:$false
$_ | Set-Disk -isreadonly:$true
$_ | Set-Disk -isoffline:$true
}
Get-Disk | Where Number -Ne $Null | Where IsBoot -Ne $True | Where IsSystem -Ne $True | Where PartitionStyle -Eq RAW | Group -NoElement -Property FriendlyName
} | Sort -Property PsComputerName, Count
Krok 2.2: Testování konfigurace clusteru
V tomto kroku se ujistěte, že uzly serveru jsou správně nakonfigurované pro vytvoření clusteru. Rutina Test-Cluster
slouží ke spouštění testů, aby ověřila, že je vaše konfigurace vhodná pro fungování jako hyperkonvergovaný cluster. Následující příklad používá -Include
parametr se zadanými konkrétními kategoriemi testů, aby se zajistilo, že jsou do ověření zahrnuty správné testy.
Test-Cluster -Node $ServerList -Include "Storage Spaces Direct", "Inventory", "Network", "System Configuration"
Krok 3: Vytvoření clusteru
Teď jste připraveni vytvořit cluster s uzly serveru, které jste ověřili v předchozích krocích.
Při vytváření clusteru se může zobrazit upozornění, že se zobrazí upozornění – "There were issues while creating the clustered role that may prevent it from starting. For more information, view the report file below."
toto upozornění můžete bezpečně ignorovat. Toto upozornění je způsobeno tím, že pro určující cluster nejsou dostupné žádné disky. Cluster s kopií clusteru se vytvoří v dalších krocích.
Poznámka:
Pokud servery používají statické IP adresy, upravte následující příkaz tak, aby odrážel statickou IP adresu přidáním následujícího parametru a zadáním IP adresy: -StaticAddress <X.X.X.X>;
$ClusterName="cluster1"
New-Cluster -Name $ClusterName –Node $ServerList –nostorage
Po vytvoření clusteru může nějakou dobu trvat, než se název clusteru replikuje prostřednictvím DNS napříč vaší doménou, zejména pokud jsou servery pracovní skupiny nově přidané do služby Active Directory. I když se cluster může zobrazit v Centru pro správu Windows, nemusí být ještě dostupný pro připojení.
Dobrá kontrola, jestli jsou všechny prostředky clusteru online:
Get-Cluster -Name $ClusterName | Get-ClusterResource
Pokud po nějaké době není řešení clusteru úspěšné, můžete se ve většině případů připojit pomocí názvu jednoho z clusterovaných serverů místo názvu clusteru.
Krok 4: Konfigurace sítě hostitelů
Pokud používáte Azure Stack HCI verze 21H2 nebo novější, doporučuje Microsoft k nasazení síťových sítí. V opačném případě se podívejte na požadavky na síť hostitele pro konkrétní požadavky a informace.
Síťová ATC může automatizovat nasazení zamýšlené konfigurace sítě, pokud pro adaptéry zadáte jeden nebo více typů záměrů. Další informace o konkrétních typech záměrů najdete v tématu: Typy síťového provozu.
Krok 4.1: Kontrola fyzických adaptérů
Na jednom z uzlů clusteru spusťte Get-NetAdapter
kontrolu fyzických adaptérů. Ujistěte se, že každý uzel v clusteru má stejné pojmenované fyzické adaptéry a že hlásí stav "Up".
Get-NetAdapter -Name pNIC01, pNIC02 -CimSession $ClusterName | Select Name, PSComputerName
Pokud se název fyzického adaptéru liší mezi uzly v clusteru, můžete ho přejmenovat pomocí Rename-NetAdapter
.
Rename-NetAdapter -Name oldName -NewName newName
Krok 4.2: Konfigurace záměru
V tomto příkladu se vytvoří záměr, který určuje záměr výpočetních prostředků a úložiště. Další příklady záměrů najdete v tématu Zjednodušení sítí v síti ATC .
Spuštěním následujícího příkazu přidejte typy záměrů úložiště a výpočetních prostředků do pNIC01 a pNIC02. Všimněte si, že parametr zadáme -ClusterName
.
Add-NetIntent -Name Cluster_ComputeStorage -Compute -Storage -ClusterName $ClusterName -AdapterName pNIC01, pNIC02
Příkaz by se měl okamžitě vrátit po počátečním ověření.
Krok 4.3: Ověření nasazení záměru
Spuštěním rutiny Get-NetIntent
zobrazte záměr clusteru. Pokud máte více než jeden záměr, můžete zadat Name
parametr, aby se zobrazily podrobnosti pouze o konkrétním záměru.
Get-NetIntent -ClusterName $ClusterName
Pokud chcete zobrazit stav zřizování záměru, spusťte Get-NetIntentStatus
příkaz:
Get-NetIntentStatus -ClusterName $ClusterName -Name Cluster_ComputeStorage
Všimněte si stavového parametru, který zobrazuje zřizování, ověřování, úspěch, selhání.
Stav by se měl zobrazit úspěšně během několika minut. Pokud se stav úspěchu neprojeví nebo se zobrazí chyba parametru stavu, zkontrolujte problémy v prohlížeči událostí.
Poznámka:
V tuto chvíli síťová ATC nenakonfiguruje IP adresy pro žádný z jeho spravovaných adaptérů. Jakmile Get-NetIntentStatus
se stav sestav dokončí, měli byste do adaptérů přidat IP adresy.
Krok 5: Nastavení lokalit (roztažený cluster)
Tato úloha platí jenom v případě, že vytváříte roztažený cluster mezi dvěma lokalitami s alespoň dvěma servery v každé lokalitě.
Poznámka:
Pokud jste weby a služby Active Directory nastavili předem, nemusíte weby vytvářet ručně, jak je popsáno v další části.
Krok 5.1: Vytvoření webů
V následující rutině je chyba FaultDomain jednoduše jiným názvem lokality. Tento příklad používá jako název roztaženého clusteru "ClusterS1".
New-ClusterFaultDomain -CimSession $ClusterName -FaultDomainType Site -Name "Site1"
New-ClusterFaultDomain -CimSession $ClusterName -FaultDomainType Site -Name "Site2"
Pomocí rutiny Get-ClusterFaultDomain
ověřte, že jsou pro cluster vytvořeny obě lokality.
Get-ClusterFaultDomain -CimSession $ClusterName
Krok 5.2: Přiřazení uzlů serveru
Dále přiřadíme čtyři uzly serveru k příslušným lokalitám. V následujícím příkladu jsou Server1 a Server2 přiřazeny k Site1, zatímco Server3 a Server4 jsou přiřazeny k Site2.
Set-ClusterFaultDomain -CimSession $ClusterName -Name "Server1", "Server2" -Parent "Site1"
Set-ClusterFaultDomain -CimSession $ClusterName -Name "Server3", "Server4" -Parent "Site2"
Pomocí rutiny Get-ClusterFaultDomain
ověřte, že uzly jsou ve správných lokalitách.
Get-ClusterFaultDomain -CimSession $ClusterName
Krok 5.3: Nastavení upřednostňovaného webu
Můžete také definovat globální upřednostňovaný web, což znamená, že zadané prostředky a skupiny se musí spouštět na upřednostňovaném webu. Toto nastavení lze definovat na úrovni lokality pomocí následujícího příkazu:
(Get-Cluster).PreferredSite = "Site1"
Určení upřednostňovaného webu pro roztažené clustery má následující výhody:
Studený start – během studeného startu se virtuální počítače umístí do upřednostňované lokality.
Hlasování kvora
Při dynamickém kvoru se nejprve sníží váha z pasivní (replikované) lokality, aby se zajistilo, že upřednostňovaná lokalita přežije, pokud jsou všechny ostatní věci stejné. Kromě toho jsou uzly serveru vyřazeny z pasivní lokality nejprve během opětovného seskupení po událostech, jako jsou asymetrická selhání síťového připojení.
Při rozdělení kvora dvou lokalit, pokud není možné kontaktovat určující cluster, je upřednostňovaná lokalita automaticky zvolena k vítězství. Uzly serveru v pasivní lokalitě pak vypadnou z členství v clusteru, což clusteru umožní přežít souběžnou 50% ztrátu hlasů.
Upřednostňovanou lokalitu je možné nakonfigurovat také na úrovni role clusteru nebo skupiny. V tomto případě je možné pro každou skupinu virtuálních počítačů nakonfigurovat jinou upřednostňovanou lokalitu, která umožňuje, aby byla lokalita aktivní a upřednostňovaná pro konkrétní virtuální počítače.
Krok 5.4: Nastavení roztaženého clusteringu se síťovým ATC
Po verzi 22H2 můžete pomocí síťové ATC nastavit clustering Stretch. Network ATC přidá funkci Stretch jako typ záměru z verze 22H2. Pokud chcete nasadit záměr s roztaženým clusteringem se síťovým ATC, spusťte následující příkaz:
Add-NetIntent -Name StretchIntent -Stretch -AdapterName "pNIC01", "pNIC02"
Roztažené záměry se dají také kombinovat s jinými záměry při nasazování se síťovým ATC.
SiteOverrides
Na základě kroků 5.1 až 5.3 můžete přidat předem vytvořené weby do záměru roztažení nasazeného v síťovém ATC. Síťový ATC to zpracovává pomocí SiteOverrides. Pokud chcete vytvořit SiteOverride, spusťte:
$siteOverride = New-NetIntentSiteOverrides
Po vytvoření siteOverride můžete nastavit libovolnou vlastnost pro siteOverride. Ujistěte se, že vlastnost názvu siteOverride má stejný název, jako název, který má váš web v ClusterFaultDomain. Neshoda názvů mezi clusterFaultDomain a siteOverride vede k tomu, že webOverride se nepoužije.
Vlastnosti, které můžete nastavit pro konkrétní webOverride, jsou: Name, StorageVlan a StretchVlan. Například vytvoříte 2 siteOverrides pro dva weby – site1 a site2 pomocí:
$siteOverride1 = New-NetIntentSiteOverrides
$siteoverride1.Name = "site1"
$siteOverride1.StorageVLAN = 711
$siteOverride1.StretchVLAN = 25
$siteOverride2 = New-NetIntentSiteOverrides
$siteOverride2.Name = "site2"
$siteOverride2.StorageVLAN = 712
$siteOverride2.StretchVLAN = 26
V okně PowerShellu můžete spustit $siteOverride1
příkaz , abyste měli jistotu, $siteOverride2
že jsou všechny vlastnosti nastavené požadovaným způsobem.
Nakonec spuštěním příkazu přidejte do záměru jeden nebo více webů:
Add-NetIntent -Name StretchIntent -Stretch -AdapterName "pNIC01" , "pNIC02" -SiteOverrides $siteOverride1, $siteOverride2
Krok 6: Povolení Prostory úložiště s přímým přístupem
Po vytvoření clusteru použijte rutinuEnable-ClusterStorageSpacesDirect
, která povolí Prostory úložiště s přímým přístupem a automaticky provede následující akce:
Vytvoření fondu úložiště: Vytvoří fond úložiště pro cluster, který má název jako "Fond úložiště Cluster1".
Vytvoření disku historie výkonu clusteru: Vytvoří virtuální disk historie výkonu clusteru ve fondu úložiště.
Vytvoření dat a svazků protokolů: Vytvoří datový svazek a svazek protokolu ve fondu úložiště.
Konfigurace Prostory úložiště s přímým přístupem mezipamětí: Pokud je pro Prostory úložiště s přímým přístupem k dispozici více než jeden typ média (jednotky), umožňuje nejrychlejší zařízení mezipaměti (ve většině případů čtení a zápis).
Vytvoření vrstev: Vytvoří dvě vrstvy jako výchozí úrovně. Jedna se nazývá Capacity (Kapacita) a druhá Performance (Výkon). Rutina provede analýzu zařízení a nakonfiguruje každou vrstvu na základě kombinace typů zařízení a požadované odolnosti.
Pro scénář s jedním serverem je jediným objektem FaultDomainAwarenessDefault fyzický disk.
Enable-ClusterStorageSpacesDirect
Rutina detekuje jeden server a během povolování automaticky nakonfiguruje FaultDomainAwarenessDefault jako fyzický disk.
U roztažených clusterů bude rutina Enable-ClusterStorageSpacesDirect
také:
- Zkontrolujte, jestli jsou weby nastavené.
- Určení uzlů, ve kterých lokalitách
- Určuje, jaké úložiště má každý uzel k dispozici.
- Zkontroluje, jestli je na každém uzlu nainstalovaná funkce repliky úložiště.
- Vytvoří fond úložiště pro každou lokalitu a identifikuje ho s názvem lokality.
- Vytvoří v každém fondu úložiště data a svazky protokolů – jeden na lokalitu.
Následující příkaz povolí Prostory úložiště s přímým přístupem v clusteru s více uzly. Můžete také zadat popisný název fondu úložiště, jak je znázorněno tady:
Enable-ClusterStorageSpacesDirect -PoolFriendlyName "$ClusterName Storage Pool" -CimSession $ClusterName
Tady je příklad zakázání mezipaměti úložiště v clusteru s jedním uzlem:
Enable-ClusterStorageSpacesDirect -CacheState Disabled
Pokud chcete zobrazit fondy úložiště, použijte následující příkaz:
Get-StoragePool -CimSession $ClusterName
Po vytvoření clusteru
Teď, když je cluster vytvořený, je potřeba provést další důležité úlohy:
- Pokud používáte cluster se dvěma uzly nebo větším clusterem, nastavte určující cluster. Viz Nastavení clusteru s kopií clusteru.
- Vytvořte svazky. Viz Vytvoření svazků. Při vytváření svazků v clusteru s jedním uzlem musíte použít PowerShell. Viz Vytvoření svazků pomocí PowerShellu.
- Pro roztažené clustery vytvořte svazky a nastavte replikaci pomocí repliky úložiště. Viz Vytvoření svazků a nastavení replikace pro roztažené clustery.
Další kroky
- Zaregistrujte cluster v Azure. Viz Připojení Azure Stack HCI k Azure.
- Proveďte konečné ověření clusteru. Viz Ověření clusteru Azure Stack HCI
- Správa hostitelských sítí Viz Správa sítí hostitelů pomocí síťové ATC.