Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento článek poskytuje podrobné pokyny k nasazení Storage Spaces Direct ve Windows Serveru. Informace o nasazení Storage Spaces Direct jako součást místního Azure naleznete v části Informace o Azure Local.
Tip
Chcete získat hyperkonvergovanou infrastrukturu? Microsoft doporučuje zakoupit ověřené hardwarové/softwarové řešení Azure Local od našich partnerů. Tato řešení jsou navržená, sestavená a ověřená v naší referenční architektuře, abyste zajistili kompatibilitu a spolehlivost, abyste mohli rychle začít pracovat. Pokud chcete prohlédnout katalog hardwarových a softwarových řešení, která pracují s Azure Local, podívejte se na azure Local Catalog .
Tip
Pomocí Hyper-V virtuálních počítačů, včetně těch v Microsoft Azure, můžete vyhodnotit Storage Spaces Direct bez nutnosti použít hardware. Můžete si také projít užitečné skripty rychlého testovacího nasazení Windows Serveru, které používáme pro účely trénování.
Než začnete
Projděte si požadavky na hardware Prostorů úložiště Direct, abyste se seznámili s celkovým přístupem a důležitými poznámkami souvisejícími s některými kroky.
Shromážděte následující informace:
Možnost nasazení: Prostory úložiště s přímým přístupem podporují dvě možnosti nasazení: hyperkonvergované a konvergované, označované také jako členěné. Seznamte se s výhodami každého z nich, abyste se rozhodli, která možnost je pro vás nejvhodnější. Kroky 1 až 3 v tomto článku platí pro obě možnosti nasazení. Krok 4 je nutný pouze pro konvergované nasazení.
Názvy serverů: Seznamte se se zásadami pojmenování pro počítače, soubory, cesty a další prostředky vaší organizace. Musíte zřídit několik serverů, z nichž každý má jedinečné názvy.
Název domény: Seznamte se se zásadami vaší organizace pro pojmenování domény a připojování k doménám. Servery připojíte k doméně a potřebujete zadat název domény.
Sítě RDMA: Existují dva typy protokolů RDMA: iWarp a RoCE. Všimněte si, který síťový adaptér používáte, a pokud RoCE, poznamenejte si také verzi (v1 nebo v2). Pro RoCE si také všimněte modelu přepínače v horní části racku.
ID sítě VLAN: Poznamenejte si ID sítě VLAN, které se má použít pro síťové adaptéry operačního systému pro správu na serverech( pokud existuje). Tyto informace byste měli mít možnost získat od správce sítě.
Krok 1: Nasazení Windows Serveru
Krok 1.1: Instalace operačního systému
Nejprve nainstalujte Windows Server na každý server v clusteru. Storage Spaces Direct vyžaduje Windows Server Datacenter Edition. Můžete použít možnost instalace jádra serveru nebo Server s desktopovým prostředím.
Při instalaci Windows Serveru pomocí průvodce instalací si můžete vybrat mezi Windows Serverem (odkazem na jádro serveru) a Windows Serverem (Server s desktopovým prostředím), což je ekvivalent možnosti Úplné instalace dostupné v systému Windows Server 2012 R2. Pokud se nerozhodnete, získáte možnost instalace jádra serveru. Další informace naleznete v tématu Instalace jádra serveru.
Krok 1.2: Připojení k serverům
Tato příručka se zaměřuje na možnost instalace jádra serveru a nasazení a vzdálenou správu z samostatného systému pro správu. Systém pro správu musí mít:
- Verze Windows Serveru nebo Windows 10, která je alespoň stejně nová jako servery, které spravuje, s nejnovějšími aktualizacemi.
- Síťové připojení k serverům, které spravuje.
- Připojeno ke stejné doméně nebo plně důvěryhodné doméně.
- Nástroje pro vzdálenou správu serveru (RSAT) a moduly pro PowerShell pro Hyper-V a failover clustering. Nástroje pro vzdálenou správu serveru a moduly PowerShellu jsou k dispozici na Windows Serveru a je možné je nainstalovat bez instalace dalších funkcí. Nástroje pro vzdálenou správu serveru můžete nainstalovat také na počítač se správou Windows 10.
V systému pro správu nainstalujte cluster s podporou převzetí služeb při selhání a nástroje pro správu Hyper-V. Můžete to provést pomocí Správce serveru pomocí průvodce přidat role a funkce . Na stránce Funkce vyberte Nástroje pro vzdálenou správu serveru a pak vyberte nástroje, které chcete nainstalovat.
Zadejte relaci PowerShellu a použijte název serveru nebo IP adresu uzlu, ke kterému se chcete připojit. Po spuštění tohoto příkazu se zobrazí výzva k zadání hesla. Zadejte heslo správce, které jste zadali při nastavování Windows.
Enter-PSSession -ComputerName <myComputerName> -Credential LocalHost\Administrator
Tady je příklad toho, jak dělat totéž způsobem, který je užitečnější ve skriptech:
$myServer1 = "myServer-1"
$user = "$myServer1\Administrator"
Enter-PSSession -ComputerName $myServer1 -Credential $user
Tip
Pokud nasazujete vzdáleně ze systému pro správu, může se zobrazit chyba, jako je Například WinRM nemůže požadavek zpracovat. Pokud chcete tuto chybu opravit, přidejte každý server do seznamu důvěryhodných hostitelů v počítači pro správu pomocí Prostředí Windows PowerShell:
Set-Item WSMAN:\Localhost\Client\TrustedHosts -Value Server01 -Force
Seznam důvěryhodných hostitelů podporuje zástupné znaky, například Server*.
- 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.3: Připojení k doméně a přidání účtů domény
Pokud chcete spravovat Prostory úložiště s přímým přístupem, musíte servery připojit k doméně a použít účet domény služby Active Directory Domain Services, který je ve skupině Administrators na každém serveru.
V systému pro správu otevřete konzolu PowerShellu s oprávněními správce. Pomocí Enter-PSSession se připojte ke každému serveru a spusťte následující rutinu, ve které nahraďte vlastní název počítače, název domény a přihlašovací údaje domény:
Add-Computer -NewName "Server01" -DomainName "contoso.com" -Credential "CONTOSO\User" -Restart -Force
Pokud váš účet správce úložiště není členem skupiny Domain Admins, přidejte účet správce úložiště do místní skupiny Administrators na každém uzlu nebo přidejte skupinu, kterou používáte pro správce úložiště. K provedení tohoto kroku můžete použít následující příkaz nebo vytvořit skript PowerShellu. Další informace najdete v tématu Použití PowerShellu k přidání uživatelů domény do místní skupiny.
Net localgroup Administrators <Domain\Account> /add
Krok 1.4: Instalace rolí a funkcí
Dalším krokem je instalace rolí serveru na každý server prostřednictvím Windows Admin Center, Správce serveru nebo PowerShellu. Tady jsou role, které se mají nainstalovat:
- Klastr pro převzetí služeb při selhání
- Hyper-V
- Souborový server (pokud chcete hostovat jakékoli sdílené složky, například pro sblížené nasazení)
- Data –Center-Bridging (pokud používáte RoCEv2 místo síťových adaptérů iWARP)
- RSAT-Clustering-PowerShell
- Hyper-V-PowerShell
K instalaci rolí prostřednictvím PowerShellu použijte rutinu Install-WindowsFeature . Můžete ho použít na jednom serveru takto:
Install-WindowsFeature -Name "Hyper-V", "Failover-Clustering", "Data-Center-Bridging", "RSAT-Clustering-PowerShell", "Hyper-V-PowerShell", "FS-FileServer"
Pokud chcete příkaz spustit na všech serverech v clusteru současně, spusťte tento skript, který upraví seznam proměnných na začátku skriptu tak, aby vyhovoval vašemu prostředí.
# Fill in these variables with your values
$ServerList = "Server01", "Server02", "Server03", "Server04"
$FeatureList = "Hyper-V", "Failover-Clustering", "Data-Center-Bridging", "RSAT-Clustering-PowerShell", "Hyper-V-PowerShell", "FS-FileServer"
# This part runs the Install-WindowsFeature cmdlet on all servers in $ServerList, passing the list of features into the script block with the "Using" scope modifier so you don't have to hard-code them here.
Invoke-Command ($ServerList) {
Install-WindowsFeature -Name $Using:Featurelist
}
Krok 2: Konfigurace sítě
Pokud nasazujete Prostory úložiště s přímým přístupem uvnitř virtuálních počítačů, přeskočte tuto část.
Storage Spaces Direct vyžaduje sítě s vysokou šířkou pásma a nízkou latencí mezi servery v clusteru. Potřebujete alespoň 10 GbE sítě a doporučuje se přímý přístup do paměti vzdáleného počítače (RDMA). Můžete použít iWARP nebo RoCE, pokud má logo Windows Serveru, které odpovídá vaší verzi operačního systému, ale iWARP je jednodušší nastavit.
Important
V závislosti na vašem síťovém vybavení a zejména u RoCE v2 možná budete muset nakonfigurovat přepínač top-of-rack. Správná konfigurace přepínače je důležitá k zajištění spolehlivosti a výkonu Prostorů úložiště s přímým přístupem.
Windows Server 2016 zavedl technologii switch-embedded teaming (SET) v rámci virtuálního přepínače Hyper-V. Tato funkce umožňuje používat stejné porty fyzické síťové karty pro veškerý síťový provoz při použití RDMA, což snižuje počet požadovaných fyzických portů síťové karty. Pro Storage Spaces Direct použijte týmování se zabudovaným přepínačem.
- Stav zapnuto: Je nutné správně nakonfigurovat síťové přepínače pro správné zpracování šířky pásma a typu sítě. Pokud používáte RDMA, který implementuje protokol RoCE, síťové zařízení a konfigurace přepínače je ještě důležitější.
- Bez přepínače: Uzly můžete propojit pomocí přímých připojení, abyste se vyhnuli použití přepínače. Každý uzel musí mít přímé připojení ke každému druhému uzlu clusteru.
Pokyny k nastavení sítě pro Storage Spaces Direct najdete v Průvodci nasazením RDMA pro Windows Server 2016 a 2019.
Krok 3: Konfigurace funkce Storage Spaces Direct
V systému pro správu, který používá stejnou verzi jako servery, které konfigurujete, proveďte následující kroky. Tyto kroky nespustíte vzdáleně pomocí relace PowerShellu. Místo toho je spusťte v místní relaci PowerShellu v systému pro správu s oprávněními správce.
Krok 3.1: Vyčištění disků
Než povolíte Storage Spaces Direct, ujistěte se, že jsou vaše jednotky prázdné a neobsahují žádné staré oddíly ani jiná data. Pro spuštění následujícího skriptu nahraďte názvy počítačů, abyste odstranili staré oddíly nebo jiná data.
Important
Tento skript trvale odebere všechna data na jiných jednotkách než spouštěcí jednotka operačního systému.
# Fill in these variables with your values
$ServerList = "Server01", "Server02", "Server03", "Server04"
foreach ($server in $serverlist) {
Invoke-Command ($server) {
# Check for the Azure Temporary Storage volume
$azTempVolume = Get-Volume -FriendlyName "Temporary Storage" -ErrorAction SilentlyContinue
If ($azTempVolume) {
$azTempDrive = (Get-Partition -DriveLetter $azTempVolume.DriveLetter).DiskNumber
}
# Clear and reset the disks
$disks = Get-Disk | Where-Object {
($_.Number -ne $null -and $_.Number -ne $azTempDrive -and !$_.IsBoot -and !$_.IsSystem -and $_.PartitionStyle -ne "RAW")
}
$disks | ft Number,FriendlyName,OperationalStatus
If ($disks) {
Write-Host "This action will permanently remove any data on any drives other than the operating system boot drive!`nReset disks? (Y/N)"
$response = read-host
if ( $response.ToLower() -ne "y" ) { exit }
$disks | % {
$_ | Set-Disk -isoffline:$false
$_ | Set-Disk -isreadonly:$false
$_ | Clear-Disk -RemoveData -RemoveOEM -Confirm:$false -verbose
$_ | Set-Disk -isreadonly:$true
$_ | Set-Disk -isoffline:$true
}
#Get-PhysicalDisk | Reset-PhysicalDisk
}
Get-Disk | Where-Object {
($_.Number -ne $null -and $_.Number -ne $azTempDrive -and !$_.IsBoot -and !$_.IsSystem -and $_.PartitionStyle -eq "RAW")
} | Group -NoElement -Property FriendlyName
}
}
Výstup vypadá jako v následujícím příkladu, kde Count je počet jednotek každého modelu na každém serveru:
Count Name PSComputerName
----- ---- --------------
4 ATA SSDSC2BA800G4n Server01
10 ATA ST4000NM0033 Server01
4 ATA SSDSC2BA800G4n Server02
10 ATA ST4000NM0033 Server02
4 ATA SSDSC2BA800G4n Server03
10 ATA ST4000NM0033 Server03
4 ATA SSDSC2BA800G4n Server04
10 ATA ST4000NM0033 Server04
Krok 3.2: Ověření clusteru
V tomto kroku spustíte nástroj pro ověření clusteru, abyste zajistili, že uzly serveru jsou správně nakonfigurované pro vytvoření clusteru pomocí Prostorů úložiště s přímým přístupem. Když před vytvořením clusteru spustíte ověření clusteru (Test-Cluster), spustí testy, které ověří, že je konfigurace vhodná pro fungování jako cluster s podporou převzetí služeb při selhání. Následující příklad přímo používá -Include parametr a pak určuje konkrétní kategorie testů. Tento přístup zajišťuje, že se do ověřování zahrnou testy specifické pro Storage Spaces Direct.
Pomocí následujícího příkazu PowerShell ověřte sadu serverů pro použití jako cluster Storage Spaces Direct.
Test-Cluster -Node <MachineName1, MachineName2, MachineName3, MachineName4> -Include "Storage Spaces Direct", "Inventory", "Network", "System Configuration"
Krok 3.3: Vytvoření clusteru
V tomto kroku vytvoříte cluster s uzly, které jste ověřili pro vytvoření clusteru v předchozím kroku pomocí následující rutiny PowerShellu.
Při vytváření clusteru se zobrazí upozornění, že při vytváření clusterové role došlo k problémům, které můžou bránit jeho spuštění. Další informace najdete v následujícím souboru sestavy." Toto upozornění můžete bezpečně ignorovat. Důvodem je, že pro kvorum clusteru nejsou k dispozici žádné disky. Po vytvoření clusteru nakonfigurujte svědeckou sdílenou složku nebo svědka cloudu.
Note
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>.
V následujícím příkazu nahraďte ClusterName symbol názvem NetBIOS, který je jedinečný a se skládá z nejvýše 15 znaků.
New-Cluster -Name <ClusterName> -Node <MachineName1,MachineName2,MachineName3,MachineName4> -NoStorage
Po vytvoření clusteru může replikace záznamu DNS pro název clusteru zabrat nějaký čas. Doba závisí na prostředí a konfiguraci replikace DNS. Pokud vyřešení clusteru není úspěšné, můžete místo názvu clusteru použít název počítače uzlu, který je aktivním členem clusteru.
Krok 3.4: Konfigurace clusteru s arbitrem clusteru
Nakonfigurujte svědka clusteru, aby cluster se třemi nebo více servery mohl odolat dvěma serverům, které selžou nebo budou offline. Nasazení se dvěma servery vyžaduje svědka clusteru; jinak, pokud jeden ze serverů jde do režimu offline, druhý server se stane nedostupným. V těchto systémech můžete jako svědka použít sdílenou složku nebo cloudového svědka. Další informace najdete v tématu Nasazení kvorového svědka.
Krok 3.5: Povolení Storage Spaces Direct
Po vytvoření clusteru použijte rutinu PowerShellu Enable-ClusterStorageSpacesDirect . Tato rutina umístí systém úložiště do režimu Prostory úložiště s přímým přístupem a automaticky provede následující úlohy:
Vytvoří fond: Vytvoří jeden velký fond s názvem jako S2D v clusteru 1.
Konfiguruje mezipaměti Storage Spaces Direct: Pokud je pro Storage Spaces Direct k dispozici více než jeden typ média (jednotky), použijí se nejrychlejší zařízení jako mezipaměti (ve většině případů čtení a zápis).
Vytvoří dvě úrovně jako výchozí úrovně: Jedna vrstva se nazývá Kapacita a druhá vrstva se nazývá Výkon. Cmdlet analyzuje zařízení a nakonfiguruje každou úroveň pomocí kombinace typů zařízení a jejich odolnosti.
V systému pro správu otevřete okno PowerShellu se zvýšenými oprávněními a spusťte následující příkaz. Název clusteru je název clusteru, který jste vytvořili v předchozích krocích. Pokud tento příkaz spustíte místně na jednom z uzlů, nepotřebujete -CimSession parametr.
Enable-ClusterStorageSpacesDirect -CimSession <ClusterName>
Tento příkaz povolí Storage Spaces Direct. Místo názvu clusteru můžete použít název uzlu. Použití názvu uzlu může být spolehlivější, protože u nově vytvořeného názvu clusteru může dojít ke zpoždění replikace DNS.
Po dokončení tohoto příkazu, který může trvat několik minut, je systém připravený na vytvoření svazků.
Krok 3.6: Vytvoření svazků
Použijte příkaz cmdlet New-Volume pro nejrychlejší a nejjednodušší zážitek. Tato jedna rutina automaticky vytvoří virtuální disk, oddíly a naformátuje ho. Vytvoří svazek s odpovídajícím názvem a přidá ho do sdílených svazků clusteru – vše v jednom jednoduchém kroku.
Další informace najdete v tématu Vytváření svazků v Storage Spaces Direct.
Krok 3.7: Volitelně povolte mezipaměť CSV
Můžete povolit mezipaměť sdíleného svazku clusteru (CSV) pomocí systémové paměti (RAM) jako zápisné vyrovnávací paměti na úrovni bloku pro operace čtení, které správce mezipaměti systému Windows neukládá do mezipaměti. Tato funkce může zlepšit výkon pro aplikace, jako je Hyper-V. Mezipaměť CSV zvyšuje výkon požadavků na čtení a je také užitečná pro scénáře Scale-Out File Server.
Povolení CSV mezipaměti snižuje množství paměti dostupné pro spouštění virtuálních počítačů v hyperkonvergovaném clusteru, takže je třeba vyvážit výkon úložiště s dostupnou pamětí pro virtuální pevné disky.
Pokud chcete nastavit velikost mezipaměti CSV, otevřete relaci PowerShellu v systému pro správu pomocí účtu, který má oprávnění správce v clusteru úložiště. Použijte následující skript, podle potřeby upravte proměnné $ClusterName a $CSVCacheSize (v tomto příkladu se nastaví mezipaměť pro CSV o velikosti 2 GB na server):
$ClusterName = "StorageSpacesDirect1"
$CSVCacheSize = 2048 #Size in MB
Write-Output "Setting the CSV cache..."
(Get-Cluster $ClusterName).BlockCacheSize = $CSVCacheSize
$CSVCurrentCacheSize = (Get-Cluster $ClusterName).BlockCacheSize
Write-Output "$ClusterName CSV cache size: $CSVCurrentCacheSize MB"
Další informace najdete v tématu Použití mezipaměti čtení v paměti.
Krok 3.8: Nasazení virtuálních počítačů pro hyperkonvergovaná nasazení
Pokud nasazujete hyperkonvergovaný cluster, posledním krokem je zřízení virtuálních počítačů v clusteru Prostorů úložiště s přímým přístupem.
Soubory virtuálního počítače uložte do oboru názvů sdíleného svazku clusteru (například c:\ClusterStorage\Volume1) stejně jako clusterované virtuální počítače v clusterech s podporou převzetí služeb při selhání.
Ke správě úložiště a virtuálních počítačů, jako je System Center Virtual Machine Manager, můžete použít nástroje in-box nebo jiné nástroje.
Krok 4: Nasazení souborového serveru Scale-Out pro sblížená řešení
Pokud nasazujete sblížené řešení, dalším krokem je vytvoření instance souborového serveru Scale-Out a nastavení sdílených složek.
Tip
Pokud nasazujete hyperkonvergovaný cluster, jste hotovi a nepotřebujete tuto část.
Vyberte jednu z následujících karet pro pokyny k vytvoření role Scale-Out souborového serveru pomocí manažera clusteru pro podporu převzetí služeb při selhání nebo PowerShellu.
Vytvoření role Scale-Out souborového serveru pro převzetí služeb při selhání pomocí Správce clusteru:
Ve Správci clusteru s podporou převzetí služeb při selhání vyberte cluster, přejděte na Role a pak vyberte Konfigurovat roli....
Zobrazí se Průvodce vysokou dostupností.Na stránce Vybrat roli vyberte Souborový server.
Na stránce Typ souborového serveru vyberte Scale-Out Souborový server pro data aplikací.
Na stránce klientský přístupový bod zadejte název souborového serveru Scale-Out.
Ověřte, že byla role úspěšně nastavena, tak, že přejdete na Role a potvrdíte, že se ve sloupci Stav zobrazuje spuštěno vedle role clusterového souborového serveru, kterou jste vytvořili, jak je znázorněno na obrázku 1.
Obrázek 1 Správce clusteru s podporou převzetí služeb při selhání zobrazující souborový server Scale-Out se stavem Spuštěno
Note
Po vytvoření clusterové role můžou zpoždění šíření sítě bránit ve vytváření sdílených složek na ní po dobu několika minut nebo potenciálně déle.
Vytvoření sdílených složek
Po vytvoření virtuálních disků a jejich přidání do sdílených svazků clusteru (CSV) vytvořte na nich sdílení souborů. Vytvořte jedno sdílení souborů na jeden CSV na virtuální disk. System Center Virtual Machine Manager (VMM) je nejjednodušší způsob, jak tuto úlohu provést, protože zpracovává oprávnění za vás. Pokud ho ve svém prostředí nemáte, můžete pomocí Windows PowerShellu částečně automatizovat nasazení.
Pomocí skriptů obsažených v této části můžete částečně automatizovat proces vytváření skupin a sdílených složek. Skripty se zapisují pro úlohy Hyper-V. Pokud nasazujete jiné úlohy, možná budete muset po vytvoření sdílených složek upravit nastavení nebo provést další kroky. Pokud například používáte Microsoft SQL Server, musíte udělit úplná oprávnění ke sdílené složce a systému souborů účtu služby SQL Server.
Note
Když přidáváte uzly clusteru, musíte aktualizovat členství ve skupině, pokud k vytvoření sdílených složek nepoužíváte System Center Virtual Machine Manager.
Pokud chcete vytvořit sdílené složky pomocí skriptů PowerShellu, proveďte následující kroky:
Rozbalte každou z následujících částí a uložte obsah každého souboru jako samostatný
.ps1soubor s příslušným názvem ve stejné složce, napříkladC:\Scripts\SetupSMBSharesWithHyperVna jednom z uzlů clusteru souborových serverů:Rozbalte tuto část pro ADGroupSetup.ps1.
Param( [Parameter(Mandatory=$true)] [string] $HyperVClusterName, [Parameter(Mandatory=$true)] [string] $HyperVObjectADGroupSamName ) # Add and import needed features if ((Get-WindowsFeature | ? Name -Like "RSAT-AD-PowerShell") | ? InstallState -NotLike Installed) { Install-WindowsFeature "RSAT-AD-PowerShell" } if ((Get-WindowsFeature | ? Name -Like "RSAT-Clustering-PowerShell") | ? InstallState -NotLike Installed) { Install-WindowsFeature "RSAT-Clustering-PowerShell" } Import-Module -Name ActiveDirectory Import-Module -Name FailoverClusters # Check for group and create if necessary $adGroup = @() $adGroup = Get-ADGroup -Filter {samAccountName -eq $HyperVObjectADGroupSamName} if ($adGroup.Count -ne 1) { $adGroup = New-ADGroup -DisplayName $HyperVObjectADGroupSamName -Name $HyperVObjectADGroupSamName -SamAccountName $HyperVObjectADGroupSamName -GroupScope Global -GroupCategory Security -PassThru } # Build array of Hyper-V servers $HyperVNodes = (Get-ClusterNode -Cluster $HyperVClusterName).Name | Get-ADComputer # Add nodes to group if not already members for ($i = 0; $i -lt $HyperVNodes.Count; $i++) { if (!(Get-ADGroupMember $adGroup | ? Name -ieq $HyperVNodes[$i].Name)) { Add-ADGroupMember $adGroup -Members $HyperVNodes[$i] } } # Add Hyper-V cluster object to group if not already present if (!(Get-ADGroupMember $adGroup | ? Name -ieq $HyperVClusterName)) { Add-ADGroupMember $adGroup -Members (Get-ADComputer $HyperVClusterName) }Rozbalte tuto část pro FileShareSetup.ps1.
Param( [Parameter(Mandatory=$true)] [string] $HyperVClusterName, [Parameter(Mandatory=$true)] [string] $ScaleOutFSName, [Parameter(Mandatory=$true)] [string] $ShareName, [Parameter(Mandatory=$true)] [string] $HyperVObjectADGroupSamName, [int] $CSVVolumeNumber = 1, [string] $VHDFolderName = "VHDs", [string] $VMFolderName = "VMs" ) # Create the share folder New-Item -ItemType Directory -Path C:\ClusterStorage\Volume$CSVVolumeNumber\$ShareName # Create folders in share New-Item -ItemType Directory -Path "C:\ClusterStorage\Volume$CSVVolumeNumber\$ShareName\$VHDFolderName" New-Item -ItemType Directory -Path "C:\ClusterStorage\Volume$CSVVolumeNumber\$ShareName\$VMFolderName" # Get the domain name $DomainName = Get-Content env:userdnsdomain # Grant the Hyper-V group permission $cmdString = "ICACLS.EXE C:\ClusterStorage\Volume$CSVVolumeNumber\$ShareName --% /Grant $DomainName\$HyperVObjectADGroupSamName" $cmdString += ':(CI)(OI)F' Invoke-Expression -Command $cmdString # Grant domain admins permission $DomainAdmins = "Domain Admins" $cmdString = "ICACLS.EXE C:\ClusterStorage\Volume$CSVVolumeNumber\$ShareName" $cmdString += ' --% /Grant "' $cmdString += "$DomainName\$DomainAdmins" $cmdString += ':(CI)(OI)F"' Invoke-Expression -Command $cmdString # Remove inheritance (optional) ICACLS.EXE C:\ClusterStorage\Volume$CSVVolumeNumber\$ShareName /Inheritance:R # Create new share and set matching Share permissions $FullAccess = ("$DomainName\$HyperVObjectADGroupSamName","$DomainName\Domain Admins") New-SmbShare -Name $ShareName -Path C:\ClusterStorage\Volume$CSVVolumeNumber\$ShareName -FullAccess $FullAccessRozbalte tuto část pro KCDSetup.ps1.
Param( [Parameter(Mandatory=$true)] [string] $HyperVClusterName, [Parameter(Mandatory=$true)] [string] $ScaleOutFSName, [switch] $EnableLM = $true ) # Add and import needed features if ((Get-WindowsFeature | ? Name -Like "RSAT-AD-PowerShell") | ? InstallState -NotLike Installed) { Install-WindowsFeature "RSAT-AD-PowerShell" } if ((Get-WindowsFeature | ? Name -Like "RSAT-Clustering-PowerShell") | ? InstallState -NotLike Installed) { Install-WindowsFeature "RSAT-Clustering-PowerShell" } Import-Module -Name ActiveDirectory # Build array of Hyper-V servers $HyperVNodes = (Get-ClusterNode -Cluster $HyperVClusterName).Name # Enable LM and CD $SMBServerAD = Get-ADComputer -Filter {Name -eq $ScaleOutFSName} $AllowedToDelegateToSMB = @( ("cifs/"+$SMBServerAD.Name), ("cifs/"+$SMBServerAD.DNSHostName)) for ($serverCounter = 0; $serverCounter -lt $HyperVNodes.Count; $serverCounter++) { $AllowedToDelegateTo = $AllowedToDelegateToSMB if ($EnableLM) { for ($delegateCounter = 0; $delegateCounter -lt $HyperVNodes.Count; $delegateCounter++) { if ($delegateCounter -ne $serverCounter) { $delegationServer = $HyperVNodes[$delegateCounter] | Get-ADComputer $AllowedToDelegateTo += @( ("Microsoft Virtual System Migration Service/"+$delegationServer.Name), ("Microsoft Virtual System Migration Service/"+$delegationServer.DNSHostName)) } } } ($HyperVNodes[$serverCounter] | Get-ADComputer) | Set-ADObject -Add @{"msDS-AllowedToDelegateTo"=$AllowedToDelegateTo} }Otevřete relaci Windows PowerShellu s přihlašovacími údaji správce domény v systému pro správu. Pomocí skriptu
ADGroupSetup.ps1vytvořte skupinu služby Active Directory pro objekty počítače Hyper-V. Změňte hodnoty proměnných podle potřeby pro vaše prostředí:# Replace the values of these variables $HyperVClusterName = "Compute01" $HyperVObjectADGroupSamName = "Hyper-VServerComputerAccounts" <#No spaces#> $ScriptFolder = "C:\Scripts\SetupSMBSharesWithHyperV" # Start of script itself CD $ScriptFolder .\ADGroupSetup.ps1 -HyperVObjectADGroupSamName $HyperVObjectADGroupSamName -HyperVClusterName $HyperVClusterNamePomocí skriptu
FileShareSetup.ps1vytvořte sdílení pro každý clusterový sdílený svazek (CSV) a udělte administrativní oprávnění pro tato sdílení skupině Domain Admins a výpočetnímu clusteru.# Replace the values of these variables $StorageClusterName = "StorageSpacesDirect1" $HyperVObjectADGroupSamName = "Hyper-VServerComputerAccounts" <#No spaces#> $SOFSName = "SOFS" $SharePrefix = "Share" $ScriptFolder = "C:\Scripts\SetupSMBSharesWithHyperV" # Start of the script itself CD $ScriptFolder Get-ClusterSharedVolume -Cluster $StorageClusterName | ForEach-Object { $ShareName = $SharePrefix + $_.SharedVolumeInfo.friendlyvolumename.trimstart("C:\ClusterStorage\Volume") Write-host "Creating share $ShareName on "$_.name "on Volume: " $_.SharedVolumeInfo.friendlyvolumename .\FileShareSetup.ps1 -HyperVClusterName $StorageClusterName -CSVVolumeNumber $_.SharedVolumeInfo.friendlyvolumename.trimstart("C:\ClusterStorage\Volume") -ScaleOutFSName $SOFSName -ShareName $ShareName -HyperVObjectADGroupSamName $HyperVObjectADGroupSamName }Povolit omezené delegování protokolu Kerberos pro vzdálenou správu scénářů a zvýšení zabezpečení Live Migration. Z jednoho z uzlů clusteru úložiště použijte
KCDSetup.ps1skript. Tady je malý obal pro skript:$HyperVClusterName = "Compute01" $ScaleOutFSName = "SOFS" $ScriptFolder = "C:\Scripts\SetupSMBSharesWithHyperV" CD $ScriptFolder .\KCDSetup.ps1 -HyperVClusterName $HyperVClusterName -ScaleOutFSName $ScaleOutFSName -EnableLMRestartujte všechny uzly v clusteru Hyper-V, abyste zajistili, že se projeví nové nastavení omezeného delegování kerberos. Jakmile jsou uzly zase online, můžete začít nasazovat virtuální počítače do sdílených složek, které jste vytvořili.