in Deel 1 van deze serie, heb ik je laten zien hoe je je multi-site cluster voor te bereiden, met inbegrip van het opzetten van het knooppunt en File Share Majority Quorum. In Deel 2 zagen we een videovoorbeeld van de integratie van SteelEye DataKeeper, een van de beschikbare clusterreplicatieoplossingen, met failover clustering om een multi-site Hyper-V failovercluster te configureren. In Deel 3 zullen we onderzoeken hoe Microsoft SQL Server 2008 kan worden geconfigureerd in een multi-site cluster met Windows Server 2008 Failover Clustering en SteelEye DataKeeper Cluster Edition.
Ten Eerste, waarom zou u een multi-site SQL server cluster willen implementeren? SQL Server wordt geleverd met een verscheidenheid aan opties voor hoge beschikbaarheid, waaronder log verzending, replicatie (transactionele, samenvoegen, snapshot), database mirroring en failover clusters. Er is een geweldig artikel dat spreekt over de hoge beschikbaarheid opties in SQL Server 2008, dus Ik zal niet opnieuw uitvinden het wiel hier. Als u meer wilt weten over alle opties, bekijk dan dit artikel van Ross Mistry, opties voor hoge beschikbaarheid in SQL Server 2008.
Als u het artikel leest, maakt Ross’ samenvatting de volgende verklaring…
“het is duidelijk dat failover clustering de beste keuze is om de uitvaltijd van het systeem te verminderen en een hogere beschikbaarheid van toepassingen te bieden voor het hele exemplaar van SQL Server binnen een site; een failovercluster biedt echter geen bescherming tegen schijffalen en vereist een SAN.”
wat als je alle voordelen zou kunnen hebben die Ross schetst en ook beschermen tegen disk falen en de noodzaak voor een SAN elimineren? Goed, het goede nieuws is dat is precies wat je kunt doen door het implementeren van een Microsoft SQL Server 2008 multi-site cluster op Windows Server 2008. SQL Server 2008 multi-site cluster kan een beetje een verkeerde benaming. Het hoeft niet per se over geografisch verspreide locaties te worden verspreid. De servers kunnen zich in hetzelfde rack, dezelfde kamer, hetzelfde gebouw of over continenten bevinden; het maakt echt niet uit. Het belangrijkste is dat u het elimineren van uw opslag als een enkel punt van storing en als u ervoor kiest om uw clusterknooppunten te lokaliseren op verschillende fysieke locaties dan heb je ook ingebouwde site veerkracht.
een van de meest voorkomende vragen en punten van verwarring over SQL Server 2008 en Windows Server 2008 failover clustering is ondersteuning voor falen tussen subnetten. Ja, Windows Server 2008 Failover Clustering ondersteunt fouten tussen subnetten voor de meeste toepassingen, maar SQL Server 2008 is niet een van die toepassingen. Voor zover ik weet, zal SQL Server 2008 R2 ook niet ondersteunen falen tussen subnetten wanneer het wordt vrijgegeven. Ik heb begrepen dat het sql-team werkt aan ondersteuning voor cross-subnet failover, maar het zal worden ondersteund ergens nadat SQL Server 2008 R2 is vrijgegeven. Dus, voor het moment, moet u uw subnet overspannen als u wilt uw knooppunten geografisch te scheiden.
Nu u hebt besloten om een multi-node SQL server cluster te implementeren, zijn hier de stappen die u moet volgen.
configureer uw basiscluster
Volg de stappen in Deel 1 van deze serie om een basiscluster met 2 knooppunten te configureren met een Quorum voor de meerderheid van knooppunten en Bestandsdelen.
configureer uw replicatie
het implementeren van een multi-site cluster vereist dat u tijdens dit deel van de configuratie zeer nauw samenwerkt met uw replicatieleverancier. Elke leverancier krijgt zeer specifieke instructies over het instellen van de replicatie en het maken van de opslagbronnen die in uw cluster moeten worden gebruikt. Ten behoeve van deze demonstratie, zal ik SteelEye DataKeeper Cluster Edition gebruiken om de e-schijf van de server met de naam primaire te repliceren naar de server met de naam secundaire. De e-aandrijving op primaire en secundaire zijn slechts lokale aangesloten volumes en geen onderdeel van een SAN. Zolang de e-schijf verschijnt als een lokale aangesloten schijf, kan DataKeeper het repliceren van de ene server naar de andere. U kunt mixen en matchen SAS, iSCSI, SAN, VHD, of een ander opslagtype als DataKeeper is opslag agnostisch.
nadat u uw basiscluster hebt geconfigureerd zoals beschreven in Deel 1 van mijn serie, voert u de DataKeeper setup uit.exe om SteelEye DataKeeper Cluster Edition te installeren op beide knooppunten van het cluster. U wordt gevraagd om uw licentiesleutel in te voeren aan het einde van de installatie. Voer uw licentie in en herstart uw servers wanneer daarom wordt gevraagd. Je bent nu klaar om je spiegel te maken. Start de DataKeeper GUI en volg de onderstaande instructies om uw spiegelserver te maken.
klik op “Verbinden Met Server”.
Voer de naam van de eerste server in. Klik Op Verbinden.
Voer de naam van de tweede server in, klik op Verbinden
klik nu op Taak maken. Hiermee wordt de wizard taak maken gestart.
geef uw vacature een naam en beschrijving. Dit kan alles zijn wat je wilt.
Kies de volgende:
- Bron de Server waar de gegevens worden gerepliceerd van
- netwerkadapter – het netwerk waar de replicatie verkeer reist
- Volume – het volume dat u wilt repliceren
Klik Volgende om verder te gaan.
Kies het volgende:
- doelserver-waar de gegevens zullen worden gerepliceerd naar
- netwerkadapter – het netwerk waar het replicatieverkeer zal reizen
- Volume-het volume dat u wilt repliceren
klik op Volgende om verder te gaan.
Kies het volgende:
- compressieniveau: als u een 100 Mbps of sneller netwerk hebt voor replicatie, laat het dan op geen staan. Als u een WAN die minder dan 100 Mbps, kunt u profiteren van het inschakelen van compressie. Instellingen ergens in het midden hebben de neiging om u de beste prestaties van compressie vs.CPU overhead geassocieerd met het inschakelen van compressie.
- asynchrone vs. Synchrone-asynchrone replicatie is over het algemeen aanvaardbaar in de meeste omgevingen en is zeker vereist in WAN-omgevingen met hoge latentie. Ik schreef een hele blog post over dit onderwerp, dus als je vragen hebt, bekijk mijn artikel over asynchrone vs.synchrone replicatie.
- maximale bandbreedte-je kunt dit zien als een” poor man ‘ s ” QOS. Als u ervoor wilt zorgen dat replicatie nooit een bepaalde drempel van uw WAN-capaciteit overschrijdt, kunt u een begrenzer instellen op de hoeveelheid bandbreedte die deze kan verbruiken. Tenzij je een goede reden hebt om het in te stellen, is het beter om het op 0 te laten staan.
klik op Gereed om uw spiegelserver te maken.
als u nu uw DataKeeper GUI bekijkt, ziet deze er ongeveer als volgt uit.
zodra u uw spiegelserver hebt aangemaakt, moet u uw spiegelserver beschikbaar maken in het Microsoft Cluster “beschikbare opslagruimte”. Er zijn een paar manieren om dit te doen, maar de meest eenvoudige manier is om de Windows PowerShell CLI te gebruiken. Hieronder is een voorbeeld dat laat zien hoe de bestaande spiegel die we net aangemaakt hebben op de E-schijf op en voeg het toe aan het cluster “Opslag”, verplaats het naar de PRIMAIRE node en breng het in-service
Import-Module FailoverClusters
Add-ClusterResource -Naam “DataKeeper Volume E” -ResourceType “DataKeeper Volume” -Groep “Opslag”
Get-ClusterResource “DataKeeper Volume E” | Set-ClusterParameter VolumeLetter E
Verplaats-ClusterGroup “Opslag” -Knooppunt primaire
Start-ClusterResource “DataKeeper Volume E”
Voor meer informatie over PowerShell en de beschikbare commando ‘ s voor gebruik met Failover Clustering, bekijk deze geweldige blogpost van Symon Perriman van het Microsoft Failover Clustering Team.
http://blogs.msdn.com/clustering/archive/2008/12/20/9243367.aspx
u gaat nu de bovenstaande stappen herhalen om extra spiegels toe te voegen die u in uw cluster wilt gebruiken. In ons geval gaan we een spiegel van de F-schijf maken en deze gebruiken om de MSDTC te clusteren. Nadat je je extra spiegels hebt toegevoegd en ze hebt toegevoegd aan de beschikbare opslagruimte, zou je DataKeeper GUI er ongeveer zo uit moeten zien.
en uw GUI voor Failoverclusterbeheer ziet er zo uit.
belangrijke opmerking-Er is een hotfix nodig om DTC met externe schijfbronnen te ondersteunen. Zie het volgende KB-artikel en pas de howfix toe op alle clusterknooppunten. http://support.microsoft.com/kb/978476
SQL 2008 is sterk afhankelijk van MSDTC, dus het wordt ten zeerste aanbevolen dat u de MSDTC-bron clustert voordat u uw SQL-bron clustert. De volgende artikelen worden verstrekt voor uw referentie voor de configuratie en het beheer van uw MSDTC-bron.
http://technet.microsoft.com/en-us/library/cc770748(WS.10).aspx
http://technet.microsoft.com/en-us/library/cc771540(WS.10).aspx
u begint met het openen van de GUI voor Failoverclusterbeheer en kiest vervolgens “een Service of toepassing configureren”.
u kiest dan “Distributed Transaction Coordinator” en klik op Volgende
Geef de MSDTC-bron een naam en een uniek IP-adres. Deze moeten uniek zijn voor MSDTC en niet hetzelfde als u later zal gebruiken wanneer u uw SQL resource aanmaakt.
Kies het volume waarin u de gegevens voor de MSDTC-bron wilt opslaan. In ons geval kiezen we de gerepliceerde F-schijf.
bevestig uw gegevens en klik op Volgende om verder te gaan.
configureren Gefeliciteerd, u hebt de DTC-bron met succes geconfigureerd. Klik Op Voltooien.
we zijn bijna klaar om te beginnen met de installatie van het eerste knooppunt van het SQL Server-Cluster, maar er is één ding dat we moeten doen in voorbereiding-Slip Stream SQL 2008 SP1 op de SQL Server 2008 RTM-installatiemedia.
SLIP STREAM SQL SP1 op uw SQL 2008 installatiemedium
wat ik heb ontdekt is dat SQL Server 2008 niet op Windows Server 2008 R2 zal installeren zonder eerst SQL Server 2008 SP1 op uw SQL 2008 installatiemedium te slipstreamen. Hier is een geweldig artikel dat beschrijft hoe slipstream SQL Server 2008 RTM en Service Pack 1. Nadat ik dat artikel gelezen en met succes slipstream SP1 op SQL 2008 RTM, vond ik het volgende Microsoft KB artikel dat dezelfde procedure beschrijft. U kunt een fout krijgen die er als volgt uitziet als u SQL probeert te installeren zonder eerst slipstreaming SP1 op de media.
er is een fout opgetreden bij het instellen van privé-eigendom ‘RequireKerberos’ op waarde ‘1’
ik volgde de instructies in het eerste artikel en gekopieerd mijn SQL 2008 met SP1 installeren naar de C:\ drive van beide knooppunten in mijn cluster. In de onderstaande instructies zal ik de installatie doen vanaf de lokale schijf van elk clusterknooppunt.
het installeren van uw eerste clusterknooppunt
Nu u uw SQL Server 2008 SP1 installatiemedia klaar hebt, bent u klaar om uw eerste SQL-knooppunt te installeren. Er is een belangrijke “gotcha” als het gaat om het installeren van SQL op een multi-node cluster. Als u SQL op een cluster met meerdere knooppunten wilt installeren, moet u eerst het failovercluster validate-proces van Windows Server 2008 passeren. Helaas, een multi-site cluster is vrijgesteld van het passeren van de opslag gerelateerde test, zodat je nooit in staat zijn om daadwerkelijk “passeren” de validatie voor zover SQL betreft. Het kostte een beetje onderzoek van mijn kant, maar wat ik ben gekomen om te vinden is dat er een command line parameter die u toelaat om de validatie test op de SQL 2008 installatie overslaan. Hier is de commandoregel.
Setup /SkipRules=Cluster_VerifyForErrors / Action=InstallFailoverCluster
om de SQL setup te starten, open een opdrachtvenster, blader naar uw SQL 2008 met SP1 install directory en typ het commando zoals hieronder getoond.
als alles gaat zoals gepland, moet u het scherm hieronder te zien. Klik op OK om verder te gaan.
Voer uw productcode in en klik op Volgende
Accepteer de licentieovereenkomst en klik op Volgende
Klik op Installeren om de installatie van de Setup Support Files
Aan het einde van de Installatie voor de Ondersteuning van Bestanden krijgt u een waarschuwing. Klik op Details tonen en u ziet het bericht hieronder. U kunt op Volgende klikken en dit bericht negeren omdat het wordt verwacht in een cluster met meerdere sites of niet-gedeelde opslag.
kies de functies die u wilt installeren en klik op Volgende. Laat de map “Shared Feature” ingesteld op het C-station omdat de SQL-binaire bestanden niet op het gerepliceerde volume moeten worden geïnstalleerd.
op het volgende scherm kiest u een netwerknaam voor uw SQL Server. Dit zal de naam zijn waarmee alle clients verbinding zullen maken. Ervan uitgaande dat dit de standaard instantie is, laat de instantie ID en instantie root directory ingesteld op de standaardinstellingen. Verplaats de hoofdmap van de instantie niet naar het gerepliceerde volume.
het wordt aanbevolen dat u aparte domeinaccounts hebt voor SQLServer en SQLAgent. U kunt de tijd nemen om deze accounts nu aan te maken als u dit nog niet hebt gedaan. Deze accounts vereisen geen speciale machtigingen, omdat dit installatieproces hen de machtigingen geeft die ze nodig hebben.
bevestig dat je genoeg schijfruimte hebt en klik op Volgende om verder te gaan.
kies de standaardinstellingen om een nieuwe clusterbrongroep met de naam “SQL Server (MSSQLSERVER)” te maken.
Kies een gerepliceerd volume dat nog beschikbaar is, in ons geval het station E:\. Klik op Volgende om verder te gaan.
nu kiest u het IP-adres dat u wilt koppelen aan de SQL-clusterbron. Je kunt het instellen om DHCP te gebruiken als je wilt.
Kies uw beveiligingsinstellingen en klik op Volgende
Voeg een SQL Server-beheerders en kies uw authenticatie-modus en klik vervolgens op Volgende
Kies uw Fout en het Gebruik van Rapportage-opties en klik op Volgende
U zal wederom een aantal waarschuwingen in verband met het validatie proces. U kunt deze berichten negeren zoals ze te verwachten zijn in een multi-site SQL Server cluster.
klik op Installeren om het installatieproces te starten
als alles wordt geïnstalleerd zoals verwacht, moet u de volgende schermen te zien. Klik op Volgende en sluit om de installatie te voltooien.
Gefeliciteerd, u hebt het eerste knooppunt van uw multi-site SQL Server Cluster met succes geïnstalleerd. Nu zullen we het tweede knooppunt van het cluster installeren.
het tweede clusterknooppunt installeren
het tweede clusterknooppunt installeren is vergelijkbaar met het eerste knooppunt installeren. We moeten SQL Setup opnieuw uitvoeren vanaf de opdrachtregel, zodat we het valideren proces kunnen overslaan. Zo, vanaf het 2e knooppunt, open uw command prompt en voer de volgende opdracht.
-
installeer SQL 2008 SP1 (samengevoegde instellingen) op de 2e node met het volgende commando:
Setup / SkipRules=Cluster_VerifyForErrors / Action =AddNode / INSTANCENAME= “MSSQLSERVER”
*Opmerking: dit veronderstelt dat u de standaard instantie op het 1e knooppunt hebt geïnstalleerd
dat zal de installatiewizard starten zoals hieronder getoond. Klik op OK om verder te gaan.
Voer uw productcode in en klik op Volgende.
accepteer de licentievoorwaarden en klik op Volgende
klik op Installeren om de Installatiehulpbestanden te installeren.
u kunt opnieuw de waarschuwing negeren dat sommige clustervalidatietests zijn overgeslagen. Dit is te verwachten in een multi-site cluster en niet-gedeelde opslag clusters.
Controleer of u het knooppunt aan de rechter instantie toevoegt en klik op Volgende.
voeg de wachtwoorden toe aan de serviceaccounts en klik op Volgende
Kies uw opties voor fout-en gebruiksrapportage en klik op Volgende
nogmaals, negeer de waarschuwing over de overgeslagen bewerkingen.
klik op Installeren om het installatieproces te starten.
als alles gaat zoals verwacht, moet u het volgende scherm te zien.
nu dat je een volledig functionele twee knooppunt cluster, je waarschijnlijk moet testen dingen uit door het doen van een aantal handmatige switchovers. Klik met de rechtermuisknop op de bron en kies “verplaatsen naar knooppunt secundaire”.
als alles correct is geconfigureerd, moet de GUI van het failovercluster er als volgt uitzien.
conclusie
ik geloof dat SQL clusters met gerepliceerde opslag veel zin hebben. Opslag is altijd een enkel punt van mislukking van traditionele clusters geweest. U kunt dat enkele foutpunt elimineren door een SQL Server-cluster te implementeren met gerepliceerde opslag van SteelEye of een andere Microsoft Multi-Site Clusterreplicatiepartner. Ik hoop dat je dit artikel informatief gevonden. Als u vragen of suggesties heeft, voeg dan uw opmerkingen toe!