Wenn man vCenter Heartbeat physisch to physisch installiert, gibt es eine schnelle Variante, die ich hier beschreiben möchte.
Mit Windows 2012 gibt's doch einige Probleme mit dem Windows Backup und Restore. (Mehr dazu auch bei Jörg&Christians Blog unter http://www.vcoportal.de/2013/12/vmware-vcenter-server-heartbeat-restore-on-a-second-node-a-journey/ Außerdem dauert der Weg über Backup und Restore der HB Konfiguration eine ganze Weile. Hat man physische vCenter Server, die Festplatten in RAID 1 Konfiguration verwenden, beschreibe ich hier einen schnelleren Weg, der aber mehr Handarbeit benötigt
Die Idee ist, nach der Installation des primären Knotens einfach den RAID 1 Spiegel aufzubrechen. D.h. die zweite Harddisk des Primären Knoten wird zur ersten Harddisk des Sekundären HeartBeat Knotens. Danach wir sowohl im primären, wie auch im sekundäre Knoten das RAID 1 wiederhergestellt. Während dieser Wiederherstellungszeit kann man bereits den sekundären Knoten weiterkonfigurieren.
sysprep
starten und den Server zum Hostnamen des zweiten Knotens umbenennen.\R2\bin
das Setup mit setup -installSecondary
starten.Das sieht auf dem ersten Blick nach mehr Handarbeit aus. Jedoch ist man um Längen schneller und weiß was man konfiguriert hat
Seit Jahren zieht sich ein “Bug” durch vCenter Hearbeat.
Konfiguriert man den SQLServer so, dass er unter Domänennutzeraccount läuft, gibt es mit
setSPN.exe
ein Problem
In der HeartBeat Konfiguration setzt man den Account unter dem setSPN aufgerufen wird.
Dies muss ein Domänennutzer sein. Jetzt das Problem: setSPN erwartet den Nutzer in der Notation
Domäne\Nutzername
. Jedoch egal wie der Nutzer konfiguriert wird, wird dieser von HB immer
in der Form Nutzername@Domäne
an setSPN übergeben, was dann natürlich zum Fehler führt.
Der Workaround von VMware ist eine Wrapper Batchdatei, die setSPN.exe mit den richtigen Parameter aufruft. Dafür muss man den beiden Knoten in der Domäne entsprechende Rechte geben.
"...Thank you for your patience with us. We realize that some changes will need to be made to the existing KB 2017530 - Performing a Least Privilege Installation of vCenter Server Heartbeat when protecting SQL Server. Until this gets address in a future release of the vCenter server heartbeat, the workaround for now is as follows: 1. On the Domain Controller, navigate to Active Directory Users and Computers. 2. Under the View menu ensure Advanced Features is ticked. 3. Select the computer account of the server running vCenter Server Heartbeat. 4. On the Primary computer account (Primary Management Name): 1. Navigate to the Security tab and click Advanced. 2. On the Permissions, tab click Add. 3. Select the user to run the SetSPN command (this can be the same user that runs SQL Server ie. 2a-net\sqlservervc). 4. Assign the Allow permission for Write all properties and Apply to this object and all child objects. 5. Click OK. 5. On the Secondary computer account (Secondary Management Name): 1. Navigate to the Security tab and click Advanced. 2. On the Permissions tab, click Add. 3. Select the user to run the SetSPN command (this can be the same user that runs SQL Server ie. 2a-net\sqlservervc). 4. Assign the Allow permission for Write all properties and Apply to this object and all child objects. 5. Click OK."
Mit Windows 2012 gibt es da noch ein Problem - eine etwas strengere Handhabung mit registered Services.
Was heißt das?
Wenn man von Knoten A auf Knoten B umschaltet, muss man den SQLService vom Knoten A deregistrieren und bei Knoten B registrieren.
Das führt dann zu separaten Scripten für beide Knoten:
setspn.exe -D MSSQLSvc/<FQDNCLUSTERNAME>:MSSQLSERVER <SHORT_NODE_NAME_B> ping -n 10 0 >NUL setspn.exe -a MSSQLSvc/<FQDNCLUSTERNAME>:MSSQLSERVER <SHORT_NODE_NAME_A>
setspn.exe -D MSSQLSvc/<FQDNCLUSTERNAME>:MSSQLSERVER <SHORT_NODE_NAME_A> ping -n 10 0 >NUL setspn.exe -a MSSQLSvc/<FQDNCLUSTERNAME>:MSSQLSERVER <SHORT_NODE_NAME_B>