Replikering av stretchkluster med delad lagring
Med det här utvärderingsexemplet kan du konfigurera datorer och deras lagring i ett enda stretchkluster, där två noder delar en uppsättning lagring och två noder delar en annan uppsättning lagring, och sedan håller replikeringen båda lagringsuppsättningarna speglade i klustret för att möjliggöra omedelbar redundans. Dessa noder och deras lagring bör finnas på separata fysiska platser, även om det inte krävs. Det finns separata steg för att skapa Hyper-V- och filserverkluster som exempelscenarier.
Viktig
Servrar på olika platser måste kunna kommunicera med de andra servrarna via ett nätverk, men inte ha någon fysisk anslutning till den andra platsens delade lagring. Det här scenariot använder inte Storage Spaces Direct.
Den här genomgången använder följande miljö som exempel:
Fyra servrar med namnet SR-SRV01, SR-SRV02, SR-SRV03och SR-SRV04.
De fyra servrarna bildas i ett enda kluster som heter SR-SRVCLUS.
Ett par logiska "platser" som representerar två olika datacenter. Den ena heter Redmond och den andra heter Bellevue.
Servrar SR-SRV01 och SR-SRV02 tillhör webbplatsen Redmond.
Servrar SR-SRV03 och SR-SRV04 tillhör Bellevue webbplats.
Anteckning
Du kan bara använda så få som två noder, där varje nod finns på varje plats. Du kan dock inte utföra redundans mellan platser med endast två servrar. Du kan använda så många som 64 noder.
Förutsättningar
Programvara:
- 2–64 servrar som kör Windows Server 2016 Datacenter Edition eller senare. Om du kör Windows Server 2019 kan du använda Standard Edition om du bara är bekväm med att replikera en enda volym upp till 2 TB i storlek.
- Active Directory Domain Services-rollen, Failoverklustring och Storage Replica-funktioner måste vara installerade på din enhet. Mer information finns i Installera eller avinstallera roller, rolltjänster eller funktioner.
- Enheten måste vara en del av en Active Directory-skog (AD).
- Lämpliga brandväggs- och routerregler för att tillåta ICMP, SMB-port 445, SMB Direct-port 5445 och WS-MAN port 5985 dubbelriktad trafik mellan alla noder.
Maskinvara:
- Minst 2 GB RAM-minne och två kärnor per server. Du behöver fler RAM-minne och kärnor för virtuella datormiljöer.
- Två uppsättningar delad lagring med SAS JBOD (till exempel med Storage Spaces), Fibre Channel SAN, Shared VHDX eller iSCSI-mål.
- Lagringen ska innehålla en blandning av HDD- och SSD-media och måste ha stöd för beständiga reservationer. Varje lagringsuppsättning ska endast vara tillgänglig för två av servrarna (asymmetrisk).
- Den fysiska lagringen måste vara identisk i kapacitet, ha samma sektorstorlekar på alla datadiskar och loggdiskar.
- Data- och loggdiskarna måste initieras som GPT.
- Volymerna måste formateras som NTFS eller ReFS.
- Loggvolymerna bör använda flashbaserad lagring och inställningar för högpresterande motståndskraft. Microsoft rekommenderar att logglagringen är snabbare än datalagringen.
- Loggvolymen måste vara minst 9 GB eller större eller mindre baserat på loggkraven.
- Varje lagringsuppsättning måste göra det möjligt att skapa minst två virtuella diskar, en för replikerade data och en för loggar.
- Den replikerade lagringen kan inte finnas på den enhet som innehåller windows-operativsystemets mapp.
Diskkonfiguration:
JBOD-höljen
Se till att varje uppsättning parkopplade servernoder endast kan se platsens lagringskabinett (asymmetrisk lagring) och att SAS-anslutningarna är korrekt konfigurerade.
Etablera lagringen med hjälp av lagringsutrymmen genom att följa steg 1–3 som anges i Distribuera lagringsutrymmen på en fristående server med hjälp av PowerShell eller Serverhanteraren.
iSCSI-lagring
Se till att varje uppsättning av parkopplade servernoder endast har tillgång till platsens lagringsenheter, exempelvis asymmetrisk lagring. Du bör använda mer än ett enda nätverkskort om du använder iSCSI.
Etablera lagringen med hjälp av leverantörsdokumentationen. Om du använder Windows-baserad iSCSI-inriktning kan du läsa översikten över iSCSI-målserver.
För FC SAN-lagring:
Se till att varje uppsättning parkopplade servernoder endast kan se platsens lagringskabinett (asymmetrisk lagring) och att du har zonat värdarna korrekt.
Etablera lagringen med hjälp av leverantörsdokumentationen.
Nätverk:
- Minst en 1 GbE-anslutning på varje server för synkron replikering.
- Ett nätverk mellan servrar med tillräcklig bandbredd för att innehålla din I/O-skrivarbetsbelastning och ett genomsnitt på ~5 ms svarstid för synkron replikering. Asynkron replikering har ingen svarstidsrekommendation.
Anteckning
Datadiskar kan använda antingen speglade eller paritetsutrymmen eller RAID 1 eller 10, RAID 5 eller RAID 50.
Loggvolymer får aldrig användas för andra arbetsbelastningar.
Viktig
Även om det är möjligt att ansluta en lagringsenhet till en enskild server och använda den för replikering, förlitar sig Windows-redundansklustring fortfarande på SCSI-beständiga reservationer. Därför måste lagringen fortfarande vara en delad lagringstyp, till exempel en SAN-teknik. Lokala diskar eller diskar som presenteras av ett hypervisor-system kanske inte är kompatibla. I Azure måste diskarna vara en premium-SSD-storlek som stöder delning, även om endast en virtuell dator ska kopplas till den.
Många av dessa krav kan fastställas med hjälp av cmdleten Test-SRTopology. Du får åtkomst till det här verktyget om du installerar Funktioner för hantering av lagringsrepliker eller Hanteringsverktyg för lagringsrepliker på minst en server. Du behöver inte konfigurera Storage Replica för att använda det här verktyget, bara för att installera cmdletarna.
Etablera din miljö
Logga alltid in som en domänanvändare som är medlem i den inbyggda administratörsgruppen på alla servrar. Kör alltid PowerShell eller kommandotolken med utökade privilegier.
Installera Windows Server på alla servernoder med installationsalternativen Server med skrivbordsmiljö eller Server Core.
Se till att BIOS/UEFI-inställningar för servrar är inställda på höga prestanda, till exempel inaktivering av C-Tillstånd, inställning av QPI-hastighet, aktivering av NUMA och högsta minnesfrekvens. Se till att energisparfunktionerna i Windows Server är inställda på höga prestanda. Starta om efter behov.
Lägg till nätverksinformationen och anslut noderna till domänen och starta sedan om dem.
Anteckning
Den här guiden förutsätter att du har två parkopplingar av servrar för användning i ett stretchkluster. Ett WAN- eller LAN-nätverk separerar servrarna och servrarna tillhör antingen fysiska eller logiska platser.
Anslut den första uppsättning delade JBOD-lagringskabinett, VHDX, iSCSI-mål eller FC SAN till servrarna på platsen Redmond.
Anslut den andra lagringsuppsättningen till servrarna på Bellevue plats.
Installera den senaste inbyggda programvaran för leverantörslagring och inneslutning, alla nödvändiga drivrutiner, HBA-drivrutiner och BIOS/UEFI-inbyggd programvara på alla fyra noderna. Starta om noderna efter behov.
Anteckning
I dokumentationen för maskinvaruleverantören finns information om hur du konfigurerar delad lagrings- och nätverksmaskinvara.
I nästa steg läggs servrarna till och konfigureras med nödvändiga roller och funktioner:
I Serverhanterarenväljer du Hanteraoch väljer sedan Lägg till servrar.
I fönstret Lägg till servrar väljer du dina servrar med hjälp av följande metoder:
AD (servrarna måste vara anslutna till domänen)
DNS- (datornamn eller IP)
Importera (från textfil)
När du har valt dina servrar importerar du dem med knappen "→" och väljer sedan OK.
På SR-SRV04 eller en fjärrhanteringsdator kör du följande kommando i ett upphöjt PowerShell-fönster:
$Servers = 'SR-SRV01','SR-SRV02','SR-SRV03','SR-SRV04' $Servers | foreach { Install-WindowsFeature -ComputerName $_ -Name Storage-Replica,Failover-Clustering,FS-FileServer -IncludeManagementTools -Restart }
Konfigurera ett Hyper-V redundanskluster eller filserverkluster
När du har konfigurerat servernoderna är nästa steg att skapa ett Hyper-V redundanskluster eller ett filserverkluster. Om noderna finns i olika undernät måste en IP-adress för den ytterligare platsen skapas med hjälp av "OR"-beroendet. Mer information finns i Konfigurera IP-adresser och beroenden för kluster med flera undernät – del III.
Om du skapar ett stretchkluster med två noder måste du lägga till all lagring innan du fortsätter. Detta är ett förväntat beteende i Windows Server 2016. Kör följande kommando för att lägga till tillgängligt lagringsutrymme:
Get-ClusterAvailableDisk -All | Add-ClusterDisk
När du använder en testserver utan skriv-I/O-belastning på en angiven källvolym bör du överväga att lägga till en arbetsbelastning eftersom Test-SRTopology
inte genererar någon användbar rapport. Du bör testa med produktionsliknande arbetsbelastningar för att se verkliga siffror och rekommenderade loggstorlekar.
Du kan också kopiera vissa filer till källvolymen under testet eller ladda ned och köra diskspd för att generera skriv-IO:er. Om du till exempel vill prova en låg I/O-arbetsbelastning för skrivning i 10 minuter på D: volym kör du följande kommando:
diskspd -c1g -d600 -W5 -C5 -b4k -t2 -o2 -r -w5 -i100 D:\Test.dat
Det finns inget alternativ för att konfigurera platskännedom med hjälp av Klusterhanteraren för felövergång i Windows Server 2016.
Anteckning
Konfigurera ett filresursvittne eller molnvittne för att ange kvorum om en webbplats slutar fungera. Windows Server innehåller nu ett alternativ för vittne baserat på Cloud (Azure) . Du kan välja det här kvorumalternativet i stället för fildelning eller diskvittne.
Mer information om kvorumkonfiguration finns i Konfigurera och hantera kvorum i en Windows Server 2012-redundansklusterguides vittneskonfiguration. För mer information om cmdletar för klusterkvorum, se moduluppsättningen FailoverClusters.
Tips
Granska nätverksrekommendationer för ett Hyper-V kluster i Windows Server 2012 för att säkerställa att klusternätverk är optimalt konfigurerade. Konfigurera klusternätverk och Active Directory för snabbare DNS-platsfelhantering. Du kan använda Hyper-V programvarudefinierade nätverk, utsträckta VLAN, nätverksabstraktionsenheter, sänkt DNS TTL och andra vanliga tekniker.
Du kan också konfigurera vm-återhämtning så att gäster inte pausar länge under nodfel. I stället redundansväxlar de till den nya lagringskällan för replikering inom 10 sekunder. Kör kommandot (Get-Cluster).ResiliencyDefaultPeriod=10
för att utföra den här åtgärden.
I Serverhanterarenväljer du Verktygoch väljer sedan Hanteraren för felövergångskluster.
I den högra rutan under Åtgärderväljer du Verifiera konfiguration för att säkerställa att du kan fortsätta.
Anteckning
Du bör förvänta dig lagringsfel från klustervalidering på grund av användning av asymmetrisk lagring.
Skapa Hyper-V beräkningsklustret med högst 15 tecken med hjälp av guiden Distribuera ett Hyper-V kluster. Följ steg 7–10 på webbplatsen Redmond för att skapa en virtuell testdator för att säkerställa att klustret fungerar normalt inom de två noder som delar lagringen på den första testplatsen.
Lägg till en disk på plats Redmond i klustrets CSV. Högerklicka på en källdisk i noden Diskar i avsnittet Storage och välj sedan Lägg till i klusterdelade volymer.
Cmdleten
Test-SRTopology
används för att avgöra om kraven för Storage Replica är uppfyllda. Utför till exempel följande steg för att verifiera två av de föreslagna stretchklusternoderna där var och en har en D: och E: volym i 30 minuter:Flytta all tillgänglig lagring till SR-SRV01.
I Klusterhanteraren för växling vid felexpanderar du ditt kluster, högerklickar på Rolleroch väljer sedan Skapa tom roll.
Lägg till onlinelagringen i den tomma rollen med namnet Ny roll.
Flytta all tillgänglig lagring till SR-SRV03.
Högerklicka på Roller igen och välj sedan Skapa tom roll.
Flytta ny roll (2) till SR-SRV03.
Lägg till onlinelagringen i den tomma rollen med namnet Ny roll (2).
Utvärdera klustret med genom att köra följande kommando:
$params = @{ SourceComputerName = 'SR-SRV01' SourceVolumeName = 'D:' SourceLogVolumeName = 'E:' DestinationComputerName = 'SR-SRV03' DestinationVolumeName = 'D:' DestinationLogVolumeName = 'E:' DurationInMinutes = 30 ResultPath = 'C:\Temp' } MD C:\Temp | Test-SRTopology @params
Granska TestSrTopologyReport–<datum>.html rapport för att säkerställa att du uppfyller kraven för Lagringsreplik och notera den initiala synkroniseringstidsförutsägelsen och loggrekommendationerna.
Returnera diskarna till Tillgängligt lagringsutrymme och ta bort de tillfälliga tomma rollerna.
Ta bort den virtuella testdatorn. Lägg till alla virtuella testdatorer som behövs för ytterligare utvärdering till en föreslagen källnod.
Konfigurera platsmedvetenhet för stretchkluster så att servrar SR-SRV01 och SR-SRV02 finns på platsen Redmond, servrar SR-SRV03 och SR-SRV04 finns på Bellevue plats. Kontrollera att Redmond är den primära noden som har ägarskap för källlagringen och de virtuella datorerna:
New-ClusterFaultDomain -Name Redmond -Type Site -Description "Primary" -Location "Redmond Datacenter" New-ClusterFaultDomain -Name Bellevue -Type Site -Description "Secondary" -Location "Bellevue Datacenter" Set-ClusterFaultDomain -Name SR-SRV01 -Parent Redmond Set-ClusterFaultDomain -Name SR-SRV02 -Parent Redmond Set-ClusterFaultDomain -Name SR-SRV03 -Parent Bellevue Set-ClusterFaultDomain -Name SR-SRV04 -Parent Bellevue (Get-Cluster).PreferredSite="Redmond"
Hantera distribuerad klusterreplikering
Du kan utföra alla steg på klusternoderna direkt eller från en fjärrhanteringsdator som innehåller RSAT. Du kan också använda Failover-klusterhanteraren för att bestämma den nuvarande källan och destinationen för replikering samt deras status. Hantering av sträckt klusterreplikering kan utföras med hjälp av GUI eller PowerShell.
Om du vill ändra replikeringskällan och målet i stretchklustret använder du följande metoder:
Om du vill flytta källreplikeringen mellan noder på samma plats högerklickar du på csv-källan, väljer Flytta lagring, väljer Välj nodoch väljer sedan en nod på samma plats. Om du använder icke-CSV-lagring för en rolltilldelad disk flyttar du rollen.
Om du vill flytta källreplikeringen från en plats till en annan högerklickar du på csv-källan, väljer Flytta lagring, väljer Välj nodoch väljer sedan en nod på en annan plats. Om du har konfigurerat en önskad plats kan du använda bästa möjliga nod för att alltid flytta källlagringen till en nod på önskad plats. Om du använder icke-CSV-lagring för en rolltilldelad disk flyttar du rollen.
För att utföra en planerad övergång av replikeringsriktningen från en webbplats till en annan, stäng av båda noderna på en webbplats med hjälp av Server Manager eller SConfig.
Om du vill utföra oplanerad redundansväxling av replikeringsriktningen från en plats till en annan stänger du av strömmen till båda noderna på en plats.
Anteckning
I Windows Server 2016 kan du behöva använda Klusterhanteraren för växling vid fel eller
Move-ClusterGroup
för att flytta tillbaka måldiskarna till den andra platsen manuellt när noderna är online igen.Storage Replica demonterar målvolymerna. Detta är avsiktligt.
Om du vill ändra loggstorleken från standardvärdet 8 GB högerklickar du på både käll- och målloggdiskarna, väljer fliken Replikeringslogg och ändrar sedan storlekarna på båda diskarna så att de matchar.
Om du vill lägga till ytterligare ett par replikerade diskar i den befintliga replikeringsgruppen måste du se till att det finns minst en extra disk i tillgängligt lagringsutrymme. Du kan sedan högerklicka på källdisken och välja Lägg till replikeringskoppling.
Anteckning
Detta behov av ytterligare en "dummy"-disk i tillgängligt lagringsutrymme beror på en regression och inte avsiktlig.
Så här tar du bort den befintliga replikeringen:
Högerklicka på CSV-källdisken och välj Replikeringoch välj sedan Ta bort. Acceptera varningsmeddelandet.
Du kan också ta bort lagringen från CSV för att returnera den till tillgänglig lagring för ytterligare testning.
Anteckning
Du kan behöva använda diskhantering eller Serverhanteraren för att lägga till enhetsbeteckningar i volymerna när de åter blir tillgängliga i lagringsutrymmet.
För att mäta replikeringsprestanda kan du använda verktyget Performance Monitor (perfmon.exe
) på både käll- och målnoderna. Mer information om prestandaövervakaren finns i Använda prestandaövervakaren och dialogrutan Lägg till räknare.
På målnoden:
Lägg till Storage Replica Statistics-objekten med alla deras prestandaräknare för datavolymen.
Granska resultaten.
På källnoden:
Lägg till objekten Storage Replica-statistik och Storage Replica Partition I/O-statistik med alla deras prestandaräknare för datavolymen (den senare är endast tillgänglig med data på den aktuella källservern).
Granska resultaten.