Windows Server Failover Clustering ausführen


Sie können einen Failovercluster mit Windows Server auf der Google Cloud Platform (GCP) erstellen. Eine Gruppe von Servern wird zusammengeschlossen, um eine höhere Verfügbarkeit (HA) für Windows-Anwendungen zu erreichen. Wenn ein Clusterknoten ausfällt, kann die Ausführung der Software von einem anderen Knoten übernommen werden. Sie können ein automatisches Failover konfigurieren (dies ist die Standardkonfiguration) oder ein Failover manuell auslösen.

Bei dieser Anleitung wird davon ausgegangen, dass Sie mit Failover-Clustering, Active Directory (AD) und der Administration von Windows Server vertraut sind.

Eine kurze Übersicht über Netzwerke in GCP finden Sie unter GCP für Experten für Rechenzentren: Netzwerk.

Architektur

In dieser Anleitung werden Sie durch das Erstellen eines Beispiel-Failoverclusters in Compute Engine geführt. Das Beispielsystem enthält die folgenden beiden Server:

  • Eine primäre Compute Engine-VM-Instanz, auf der Windows Server 2016 in Zone a ausgeführt wird.
  • Eine zweite Instanz, die so konfiguriert ist, dass sie mit der primären Instanz in Zone b übereinstimmt.

Darüber hinaus stellen Sie einen AD-Domaincontroller bereit, der im Rahmen dieser Anleitung folgende Zwecke erfüllt:

  • Windows-Domain bereitstellen
  • Hostnamen in IP-Adressen auflösen
  • Dateifreigabezeugen (File Share Witness, FSW) hosten, der als drittes "Votum" zum Erreichen des erforderlichen Quorums für den Cluster dient

Sie können den Domaincontroller in jeder beliebigen Zone erstellen. In dieser Anleitung wird Zone c verwendet. In einem Produktionssystem können Sie den Dateifreigabenzeugen an einer anderen Stelle hosten. Sie benötigen dann auch kein separates AD-System für die Unterstützung des Failoverclusters. Links zu Artikeln über die Verwendung von AD auf der GCP finden Sie unter Weitere Informationen.

Die beiden Server, die Sie zum Bereitstellen des Failoverclusters verwenden, befinden sich in verschiedenen Zonen. Damit wird sichergestellt, dass sich jeder Server auf einem anderen physischen Computer befindet. Außerdem wird so dem unwahrscheinlichen Auftreten eines Zonenfehlers vorgebeugt.

Im folgenden Diagramm wird die Architektur beschrieben, die Sie im Rahmen dieser Anleitung bereitstellen.

Architekturdiagramm mit zwei Compute Engine-VMs in einem Failovercluster

Optionen für gemeinsam genutzten Speicher

In dieser Anleitung wird nicht das Einrichten eines Dateiservers für gemeinsam genutzten Speicher mit Hochverfügbarkeit behandelt.

Google Cloud unterstützt mehrere Lösungen für gemeinsam genutzten Speicher, die Sie mit Windows Server Failover Clustering verwenden können, darunter:

Informationen zu weiteren möglichen Lösungen für gemeinsam genutzten Speicher finden Sie unter folgenden Links:

Informationen zum Netzwerkrouting

Beim Failover des Clusters müssen Anfragen an den neuen aktiven Knoten gesendet werden. Das Routing wird von der Clustering-Technologie normalerweise über ein ARP (Address Resolution Protocol) durchgeführt, das IP-Adressen MAC-Adressen zuordnet. In GCP verwendet das VPC-System (Virtual Private Cloud) softwaredefinierte Netzwerke, in denen keine MAC-Adressen zur Verfügung stehen. Das bedeutet, dass die vom ARP übertragenen Änderungen sich nicht auf das Routing auswirken. Damit das Routing funktionieren kann, benötigt der Cluster Unterstützung auf Softwareebene vom internen Load-Balancer.

In der Regel wird eingehender Netzwerk-Traffic durch das interne Load-Balancing auf mehrere VPC-interne Backend-Instanzen aufgeteilt, um die Last zu verteilen. Beim Failoverclustering wird stattdessen ein internes Load-Balancing eingesetzt, um den gesamten Traffic zu einer einzigen Instanz zu routen: dem aktuell aktiven Clusterknoten. Das interne Load-Balancing ermittelt den richtigen Knoten auf folgende Weise:

  • Jede VM-Instanz führt eine Instanz des Compute Engine-Agents aus, die ein Windows-Failoverclustering unterstützt. Die IP-Adressen für die VM-Instanz werden vom Agent nachverfolgt.
  • Das Frontend des Load-Balancers sendet die IP-Adressen für eingehenden Traffic an die Anwendung.
  • Auf dem Backend des Load-Balancers wird eine Systemdiagnose durchgeführt. Im Rahmen der Systemdiagnose werden die Agents auf den einzelnen Clusterknoten regelmäßig mit einer festen IP-Adresse der VM-Instanz über einen bestimmten Port angepingt. Der Standardport ist 59998.
  • Die Systemdiagnose bindet die IP-Adresse der Anwendung als Nutzlast in die Anfrage ein.
  • Der Agent vergleicht die IP-Adresse in der Anfrage mit der Liste der IP-Adressen für die Host-VM. Wenn der Agent eine Übereinstimmung feststellt, wird der Wert 1 zurückgegeben. Andernfalls antwortet er mit dem Wert 0.
  • Alle VMs mit bestandener Systemdiagnose werden vom Load-Balancer als fehlerfrei markiert. Die Systemdiagnose kann immer nur für eine VM zu einem bestimmten Zeitpunkt bestanden werden, da nur eine VM über die IP-Adresse für die Arbeitslast verfügt.

Was geschieht bei einem Failover?

Wenn es ein Failover im Cluster gibt, finden die folgenden Änderungen statt:

  • Der Status des aktiven Knotens wird vom Windows-Failoverclustering geändert, um anzuzeigen, dass der Knoten ausgefallen ist.
  • Beim Failoverclustering werden alle Clusterressourcen und -rollen vom ausgefallenen Knoten zu dem Knoten verschoben, der laut Quorum als am besten geeignet definiert wird. Diese Aktion umfasst auch das Verschieben der verknüpften IP-Adressen.
  • Beim Failoverclustering werden ARP-Pakete übermittelt, um hardwarebasierte Netzwerkrouter darüber zu informieren, dass die IP-Adressen verschoben wurden. In diesem Szenario ignoriert das GCP-Netzwerk diese Pakete.
  • Nach der Verschiebung ändert der Compute Engine-Agent auf der VM die Antwort an die Systemdiagnose für den ausgefallenen Knoten von 1 in 0, da die IP-Adresse, die in der Anfrage angegeben ist, nicht mehr von der VM gehostet wird.
  • Der Compute Engine-Agent auf der VM für den nun aktiven Knoten ändert entsprechend seine Antwort an die Systemdiagnose von 0 in 1.
  • Der interne Load-Balancer beendet das Traffic-Routing an den ausgefallenen Knoten und leitet den Traffic stattdessen an den nun aktiven Knoten weiter.

Ergebnis

Sie haben nun einige Konzepte kennen gelernt. Im Folgenden finden Sie Erläuterungen zum Architekturdiagramm:

  • Der Compute Engine-Agent für die VM wsfc-2 sendet den Wert 1 an die Systemdiagnose. Damit wird angegeben, dass dies der aktive Clusterknoten ist. Für wsfc-1 lautet die Antwort 0.
  • Der Load-Balancer routet Anfragen an wsfc-2, wie durch den Pfeil angegeben.
  • Der Load-Balancer und wsfc-2 haben beide die IP-Adresse 10.0.0.9. Für den Load-Balancer ist dies die angegebene Frontend-IP-Adresse. Für die VM ist es die IP-Adresse der Anwendung. Diese IP-Adresse wird vom Failovercluster als aktuell aktiver Knoten festgelegt.
  • Der Failovercluster und wsfc-2 haben beide die IP-Adresse 10.0.0.8. Die VM hat diese IP-Adresse, da sie aktuell als Host für die Clusterressourcen dient.

Hinweise zum Durcharbeiten dieser Anleitung

Diese Anleitung enthält viele Einzelschritte. An einigen Stellen werden Sie aufgefordert, Anweisungen in externen Dokumenten (z. B. in der Microsoft-Dokumentation) zu befolgen. Beachten Sie unbedingt die Hinweise in diesem Dokument, die spezielle Informationen für die Befolgung der externen Anweisungen enthalten.

In dieser Anleitung wird die Cloud Shell in der Google Cloud Console verwendet. Es ist auch möglich, Failoverclustering über die Google Cloud Console CLI oder das Cloud SDK einzurichten. In dieser Anleitung wird dazu der Einfachheit halber jedoch hauptsächlich die Cloud Shell verwendet. Auf diese Weise können Sie die Anleitung schneller durcharbeiten. Wo es sinnvoll ist, wird für einige Schritte stattdessen die Google Cloud Console eingesetzt.

Cloud Shell

Es empfiehlt sich, zwischendurch Snapshots des nichtflüchtigen Speichers von Compute Engine zu erstellen. Wenn Probleme auftreten, können Sie auf einen Snapshot zurückgreifen und müssen nicht mehr ganz von vorne anfangen. In dieser Anleitung werden geeignete Zeitpunkte für das Erstellen von Snapshots genannt.

Wenn Sie feststellen, dass ein Vorgang nicht wie erwartet funktioniert, gibt es dafür möglicherweise Anweisungen in dem Abschnitt, den Sie gerade lesen. Lesen Sie anderenfalls den Abschnitt Fehlerbehebung.

Ziele

  • Netzwerk erstellen
  • Windows Server 2016 auf zwei Compute Engine-VMs installieren
  • Active Directory auf einer dritten Instanz von Windows Server installieren und konfigurieren
  • Failovercluster einrichten, einschließlich eines Dateifreigabenzeugen für das Quorum und einer Rolle für die Arbeitslast
  • Internen Load-Balancer einrichten
  • Failover-Vorgang testen, um sicherzustellen, dass der Cluster ordnungsgemäß ausgeführt wird

Kosten

In dieser Anleitung werden Compute Engine-Images verwendet, die Windows Server-Lizenzen enthalten. Das bedeutet, dass die Kosten für die Durcharbeitung dieser Anleitung sehr hoch sein können, wenn Sie die VMs weiter ausführen. Es empfiehlt sich, die VMs zu beenden, wenn Sie sie nicht verwenden.

Eine Schätzung der Kosten für die Durcharbeitung dieser Anleitung finden Sie im Preisrechner.

Hinweis

  1. Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
  2. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  3. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  4. Compute Engine API aktivieren.

    Aktivieren Sie die API

  5. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  6. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  7. Compute Engine API aktivieren.

    Aktivieren Sie die API

  8. Starten Sie eine Instanz der Cloud Shell.
    Zu Cloud Shell

Netzwerk erstellen

Der Cluster erfordert ein benutzerdefiniertes Netzwerk. Verwenden Sie ein VPC, um ein benutzerdefiniertes Netzwerk und ein Subnetzwerk zu erstellen und führen Sie dazu gcloud-Befehle in der Cloud Shell aus.

  1. Erstellen Sie das Netzwerk:

    gcloud compute networks create wsfcnet --subnet-mode custom
    

    Der Name des erstellten Netzwerks lautet wsfcnet.

  2. Erstellen Sie ein Subnetzwerk. Ersetzen Sie [YOUR_REGION] durch eine GCP-Region in Ihrer Nähe:

    gcloud compute networks subnets create wsfcnetsub1 --network wsfcnet --region [YOUR_REGION] --range 10.0.0.0/16
    

    Der Name des erstellten Subnetzwerks lautet wsfcnetsub1.

Der CIDR-Bereich für IP-Adressen in diesem Subnetzwerk lautet 10.0.0.0/16. Dies ist ein Beispielbereich, der für diese Anleitung verwendet wird. Sprechen Sie sich in Produktionssystemen mit den Netzwerkadministratoren ab, um geeignete IP-Adressbereiche für Ihre Systeme zuzuweisen.

Firewallregeln erstellen

Standardmäßig ist das Netzwerk für externen Traffic gesperrt. Sie müssen Ports in der Firewall öffnen, um Remoteverbindungen zu den Servern zu ermöglichen. Erstellen Sie die Regeln mit gcloud-Befehlen in Cloud Shell.

  1. Öffnen Sie für diese Anleitung Port 3389 im Hauptnetzwerk, um RDP-Verbindungen zu ermöglichen. Ersetzen Sie im folgenden Befehl [YOUR_IPv4_ADDRESS] durch die IP-Adresse des Computers, auf dem Sie eine Verbindung zu den VM-Instanzen herstellen. In einem Produktionssystem können Sie einen IP-Adressbereich oder eine Reihe von Adressen angeben.

    gcloud compute firewall-rules create allow-rdp --network wsfcnet --allow tcp:3389 --source-ranges [YOUR_IPv4_ADDRESS]
    
  2. Erlauben Sie im Subnetzwerk alle Protokolle an allen Ports, damit die Server miteinander kommunizieren können. In Produktionssystemen öffnen Sie gegebenenfalls nur bestimmte Ports nach Bedarf.

    gcloud compute firewall-rules create allow-all-subnet --network wsfcnet --allow all --source-ranges 10.0.0.0/16
    

    Achten Sie darauf, dass der Wert source-ranges mit dem CIDR-Bereich übereinstimmt, mit dem Sie das Subnetzwerk erstellt haben.

  3. Zeigen Sie die Firewallregeln an:

    gcloud compute firewall-rules list
    

    Die Ausgabe sollte in etwa so aussehen:

    NAME              NETWORK  DIRECTION  PRIORITY  ALLOW            DENY  DISABLED
    allow-all-subnet  wsfcnet  INGRESS    1000      all                    False
    allow-rdp         wsfcnet  INGRESS    1000      tcp:3389               False

Failoverclustering in Compute Engine aktivieren

Um das Failoverclustering im Compute Engine-Agent zu aktivieren, müssen Sie den VM-Definitionen das Flag enable-wsfc=true hinzufügen. Dafür geben Sie das Flag entweder als benutzerdefinierte Metadaten für die VM an oder erstellen auf jeder VM eine Konfigurationsdatei, wie unter Compute Engine-Dokumentation beschrieben.

In dieser Anleitung wird das Flag als benutzerdefinierte Metadaten definiert, wenn die VMs erstellt werden. Dies wird im nächsten Abschnitt beschrieben. Die Anleitung basiert auch auf dem Standardverhalten für wsfc-addrs und wsfc-agent-port. Sie müssen diese Werte also nicht festlegen.

Server erstellen

Erstellen Sie als Nächstes die 3 Server. Verwenden Sie den Befehl gcloud in der Cloud Shell.

Ersten Clusterknotenserver erstellen

Erstellen Sie eine neue Compute Engine-Instanz. Konfigurieren Sie die Instanz so:

  • Geben Sie der Instanz den Namen wsfc-1.
  • Setzen Sie das Flag --zone auf eine Zone in Ihrer Nähe. Beispiel: us-central1-a
  • Legen Sie das Flag --machine-type auf n1-standard-2. fest.
  • Legen Sie das Flag --image-project auf windows-cloud fest.
  • Legen Sie das Flag --image-family auf windows-2016 fest.
  • Legen Sie das Flag --scopes auf https://www.googleapis.com/auth/compute fest.
  • Legen Sie das Flag --can-ip-forward fest, um die IP-Weiterleitung zu aktivieren.
  • Legen Sie das Flag --private-network-ip auf 10.0.0.4 fest.
  • Legen Sie für das Netzwerk wsfcnet und für das Subnetzwerk wsfcnetsub1 fest.
  • Verwenden Sie den Parameter --metadata, um enable-wsfc=true anzugeben.

Führen Sie den folgenden Befehl aus. Ersetzen Sie dabei [YOUR_ZONE_1] durch den Namen der ersten Zone:

gcloud compute instances create wsfc-1 --zone [YOUR_ZONE_1] --machine-type n1-standard-2 --image-project windows-cloud --image-family windows-2016 --scopes https://www.googleapis.com/auth/compute --can-ip-forward --private-network-ip 10.0.0.4 --network wsfcnet --subnet wsfcnetsub1 --metadata enable-wsfc=true

Zweiten Clusterknotenserver erstellen

Führen Sie für den zweiten Server bis auf die folgenden Ausnahmen dieselben Schritte aus:

  • Legen Sie als Instanznamen wsfc-2 fest.
  • Setzen Sie das Flag --zone auf eine andere als die Zone, die Sie für den ersten Server verwendet haben. Beispiel: us-central1-b
  • Legen Sie das Flag --private-network-ip auf 10.0.0.5 fest.

Ersetzen Sie [YOUR_ZONE_2] durch den Namen der zweiten Zone:

gcloud compute instances create wsfc-2 --zone [YOUR_ZONE_2] --machine-type n1-standard-2 --image-project windows-cloud --image-family windows-2016 --scopes https://www.googleapis.com/auth/compute --can-ip-forward --private-network-ip 10.0.0.5 --network wsfcnet --subnet wsfcnetsub1  --metadata enable-wsfc=true

Dritten Server für Active Directory erstellen

Führen Sie für den Domänencontroller bis auf die folgenden Ausnahmen dieselben Schritte aus:

  • Legen Sie als Instanznamen wsfc-dc fest.
  • Geben Sie für das Flag --zone eine Zone an, die Sie noch nicht für die anderen Server verwendet haben. Beispiel: us-central1-c
  • Legen Sie das Flag --private-network-ip auf 10.0.0.6 fest.
  • Lassen Sie --metadata enable-wsfc=true aus.

Ersetzen Sie [YOUR_ZONE_3] durch den Namen der Zone:

gcloud compute instances create wsfc-dc --zone [YOUR_ZONE_3] --machine-type n1-standard-2 --image-project windows-cloud --image-family windows-2016 --scopes https://www.googleapis.com/auth/compute --can-ip-forward --private-network-ip 10.0.0.6 --network wsfcnet --subnet wsfcnetsub1

Instanzen auflisten

Sie können die Details zu den erstellten Instanzen auflisten.

gcloud compute instances list

Es wird eine Ausgabe angezeigt, die in etwa so aussieht:

NAME     ZONE           MACHINE_TYPE  PREEMPTIBLE INTERNAL_IP  EXTERNAL_IP     STATUS
wsfc-1   us-central1-a  n1-standard-2             10.0.0.4     35.203.131.133  RUNNING
wsfc-2   us-central1-b  n1-standard-2             10.0.0.5     35.203.130.194  RUNNING
wsfc-dc  us-central1-c  n1-standard-2             10.0.0.6     35.197.27.2     RUNNING

Verbindung zu VMs herstellen

Wenn Sie eine Verbindung zu einer Windows-basierten VM herstellen möchten, müssen Sie zuerst ein Passwort für die VM generieren. Sie können dann mit RDP eine Verbindung zur VM herstellen.

Passwörter generieren

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.

    Zu „VM-Instanzen“

  2. Klicken Sie auf den Namen der VM-Instanz, für die Sie ein neues Passwort benötigen.

  3. Klicken Sie auf der Seite mit den Instanzdetails auf die Schaltfläche Windows-Passwort festlegen. Ein Passwort wird für Sie generiert. Kopieren Sie das Passwort und speichern Sie es an einem sicheren Ort.

Über RDP verbinden

Die Compute Engine-Dokumentation enthält ausführliche Informationen darüber, wie Sie eine RDP-Verbindung mit den Windows-VM-Instanzen herstellen. Sie haben folgende Möglichkeiten:

  • Verwenden Sie einen vorhandenen Client.
  • Fügen Sie ein Chrome-RDP-Plug-in in den Browser ein und stellen Sie dann eine Verbindung über die Google Cloud Console her.

Wenn Sie in dieser Anleitung dazu aufgefordert werden, eine Verbindung mit einer Windows-Instanz herzustellen, verwenden Sie dazu Ihre bevorzugte RDP-Verbindung.

Windows-Netzwerk konfigurieren

Die internen IP-Adressen, die Sie beim Erstellen der VMs zugewiesen haben, sind statisch. Um sicherzustellen, dass Windows die IP-Adressen als statisch behandelt, müssen Sie sie zusammen mit den IP-Adressen des Standardgateways und des DNS-Servers zur Netzwerkkonfiguration von Windows Server hinzufügen.

Verwenden Sie RDP, um eine Verbindung zu wsfc-1, wsfc-2 und wsfc-dc herzustellen. Wiederholen Sie dabei die folgenden Schritte für jede Instanz:

  1. Wählen Sie im Server-Manager im linken Bereich Lokaler Server aus.
  2. Klicken Sie im Eintrag Ethernet des Fensters Eigenschaften auf Mittels DHCP zugewiesene IPv4-Adresse, IPv6 aktiviert.
  3. Klicken Sie mit der rechten Maustaste auf Ethernet und wählen Sie Eigenschaften aus.
  4. Doppelklicken Sie auf Internetprotokoll Version 4 (TCP/IPv4).
  5. Wählen Sie Folgende IP-Adresse verwenden aus.
  6. Geben Sie die IP-Adresse ein, die Sie der VM beim Erstellen zugewiesen haben.

    • Geben Sie unter wsfc-1 den Wert "10.0.0.4" ein.
    • Geben Sie unter wsfc-2 den Wert "10.0.0.5" ein.
    • Geben Sie unter wsfc-dc den Wert "10.0.0.6" ein.
  7. Geben Sie unter Subnetzmaske den Wert "255.255.0.0" ein.

  8. Geben Sie unter Standardgateway die IP-Adresse des Gateways (10.0.0.1) ein, die beim Erstellen des Subnetzes wsfcnetsub1 automatisch für das Standardgateway reserviert wurde.

    Die IP-Adresse für das Standardgateway ist immer die zweite Adresse im primären IP-Bereich eines Subnetzes. Siehe Nicht verwendbare Adressen in IPv4-Subnetzbereichen.

  9. Nur für wsfc-1 und wsfc-2:

    1. Klicken Sie auf Folgende DNS-Serveradressen verwenden.

    2. Geben Sie unter Bevorzugter DNS-Server den Wert "10.0.0.6" ein.

  10. Schließen Sie alle Dialogfelder.

    Die RDP-Verbindung wird getrennt, da der virtuelle Netzwerkadapter für die VM-Instanz nach diesen Änderungen zurückgesetzt wird.

  11. Schließen Sie die RDP-Sitzung und stellen Sie dann wieder eine Verbindung mit der Instanz her. Wenn noch ein Dialogfeld aus dem vorherigen Schritt geöffnet ist, schließen Sie es.

  12. Prüfen Sie im Abschnitt "Eigenschaften" des lokalen Servers, ob die Einstellung Ethernet der IP-Adresse des lokalen Servers (10.0.0.4, 10.0.0.5, oder 10.0.0.6) entspricht. Ist dies nicht der Fall, öffnen Sie das Dialogfeld Internetprotokoll Version 4 (TCP/IPv4) noch einmal und aktualisieren Sie die Einstellung.

An dieser Stelle wird empfohlen, Snapshots von wsfc-1 und wsfc-2 zu erstellen.

Active Directory einrichten

Richten Sie nun den Domänencontroller ein.

  1. Stellen Sie eine RDP-Verbindung mit dem Server wsfc-dc her.
  2. Legen Sie mit der Desktop-App "Windows Computer Management" ein Passwort für das lokale Administratorkonto fest.
  3. Aktivieren Sie das lokale Administratorkonto.
  4. Befolgen Sie die Schritte in den Microsoft-Anweisungen unten, um den Domänencontroller einzurichten, und beachten Sie die folgenden zusätzlichen Hinweise. Für die meisten Einstellungen können Sie Standardwerte verwenden.

    • Klicken Sie auf das Kästchen für die DNS-Serverrolle. Dieser Schritt ist in der Anleitung nicht enthalten.
    • Klicken Sie auf das Kästchen Zielserver bei Bedarf automatisch neu starten.
    • Stufen Sie den Dateiserver zu einem Domänencontroller hoch.
    • Geben Sie der Domain im Schritt Neue Gesamtstruktur hinzufügen den Namen "WSFC.TEST".
    • Legen Sie als NetBIOS-Domainnamen "WSFC" (Standardeinstellung) fest.

    Microsoft-Anleitung

An dieser Stelle empfiehlt es sich, einen Snapshot von wsfc-dc zu erstellen.

Domänenbenutzerkonto erstellen

Es kann einige Zeit dauern, bis wsfc-dc neu gestartet ist. Melden Sie sich über RDP bei wsfc-dc an, um sicherzustellen, dass der Domaincontroller ausgeführt wird, bevor Sie die Domain um Server erweitern.

Sie benötigen einen Domänenbenutzer mit Administratorberechtigungen für die Clusterserver. Gehen Sie so vor:

  1. Klicken Sie im Domaincontroller (wsfc-dc) auf Starten und geben Sie dsa ein, um die Anwendung "Active Directory-Benutzer und -Computer" zu ermitteln und zu öffnen.
  2. Klicken Sie mit der rechten Maustaste auf WSFC.TEST, zeigen Sie auf Neu und klicken Sie dann auf Nutzer.
  3. Geben Sie unter Vollständiger Name und Benutzeranmeldename den Wert cluster-admin ein.
  4. Klicken Sie auf Weiter.
  5. Geben Sie ein Passwort für den Nutzer ein und bestätigen Sie es. Wählen Sie die Passwortoptionen im Dialogfeld aus. Sie können beispielsweise festlegen, dass das Passwort nicht ablaufen soll.
  6. Prüfen Sie die Einstellungen und klicken Sie dann auf Fertigstellen.
  7. Legen Sie cluster-admin als Administrator für wsfc-dc fest:

    • Klicken Sie mit der rechten Maustaste auf cluster-admin und wählen Sie Einer Gruppe hinzufügen... aus.
    • Geben Sie Administratoren ein und klicken Sie auf OK.

In dieser Anleitung wird das Konto WSFC.TEST\cluster-admin als Administratorkonto verwendet, wenn ein solches Konto benötigt wird. Befolgen Sie in einem Produktionssystem die üblichen Sicherheitsmaßnahmen für die Zuweisung von Konten und Berechtigungen. Weitere Informationen finden Sie in der Übersicht über Active Directory-Konten, die von einem Failovercluster benötigt werden.

Server mit der Domain verbinden

Fügen Sie der Domain WSFC.TEST die zwei Clusterknotenserver hinzu. Führen Sie für jeden Clusterknotenserver (wsfc-1 und wsfc-2) die folgenden Schritte aus:

  1. Klicken Sie unter Server-Manager > Lokaler Server im Bereich Attribute auf Arbeitsgruppe.
  2. Klicken Sie auf Ändern.
  3. Wählen Sie Domain aus und geben Sie dann "WSFC.TEST" ein.
  4. Klicken Sie auf OK.
  5. Geben Sie die Anmeldedaten für WSFC.TEST\cluster-admin ein, um der Domain beizutreten.
  6. Klicken Sie auf OK.
  7. Schließen Sie die Dialogfelder und befolgen Sie die Anweisungen, um den Server neu zu starten.
  8. Legen Sie cluster-adminunter Server-Manager als Administrator für wsfc-1 und wsfc-2 fest. Alternativ können Sie Administratorberechtigungen mithilfe einer Gruppenrichtlinie verwalten.

    • Wählen Sie im Menü Tools die Option Computerverwaltung > Lokale Benutzer und Gruppen > Gruppen > Administratoren aus und klicken Sie auf Hinzufügen.
    • Geben Sie "cluster-admin" ein und klicken Sie auf Namen überprüfen.
    • Klicken Sie auf OK.

Dies ist ein guter Zeitpunkt, um Snapshots von allen drei VMs zu erstellen.

Failoverclustering einrichten

IP-Adresse für den Cluster in Compute Engine reservieren

Beim Erstellen des Failoverclusters weisen Sie eine IP-Adresse zu, um einen administrativen Zugriffspunkt zu erstellen. In einer Produktionsumgebung können Sie eine IP-Adresse aus einem separaten Subnetz verwenden. In dieser Anleitung reservieren Sie jedoch eine IP-Adresse aus dem Subnetz, das Sie bereits erstellt haben. Durch Reservieren der IP-Adresse werden Konflikte mit anderen IP-Zuweisungen verhindert.

  1. Öffnen Sie ein Terminal auf einer Host-VM oder öffnen Sie Cloud Shell.

    Zu Cloud Shell

  2. Reservieren Sie eine IP-Adresse. Verwenden Sie für diese Anleitung 10.0.0.8:

    gcloud compute addresses create cluster-access-point --region [YOUR_REGION] --subnet wsfcnetsub1 --addresses 10.0.0.8
  3. So bestätigen Sie die Reservierung der IP-Adresse:

    gcloud compute addresses list

Cluster erstellen

So erstellen und konfigurieren Sie den Failovercluster:

  1. Stellen Sie eine RDP-Verbindung zu wsfc-1 und wsfc-2 her.
  2. Folgen Sie den Schritten in der Microsoft-Anleitung unten. Beachten Sie die folgenden zusätzlichen Hinweise:

    • Installieren Sie Failoverclustering auf wsfc-1 und wsfc-2. Installieren Sie auf wsfc-dc kein Failoverclustering.
    • Führen Sie die Anwendung "Failovercluster-Manager" als Domainnutzer WSFC.TEST\cluster-admin aus. Andernfalls können Berechtigungsprobleme auftreten. Es wird empfohlen, Failovercluster-Manager immer auf diese Weise auszuführen oder eine Verbindung zu einem Server wie cluster-admin herzustellen, um dafür zu sorgen, dass Sie die erforderlichen Berechtigungen haben.
    • Fügen Sie dem Cluster wsfc-1 und wsfc-2 als Knoten hinzu.
    • Gehen Sie bei der Validierung der Konfiguration so vor:

      • Wählen Sie auf der Seite Testoptionen die Option Nur ausgewählte Tests ausführen aus und klicken Sie dann auf Weiter.
      • Entfernen Sie auf der Seite Testauswahl​ das Häkchen bei Speicher, da die Option Speicher​ nicht in Compute Engine oder auf einem separaten eigenständigen physischen Server verwendet werden kann.

        Bei der Clustervalidierung kann es zu folgenden Problemen kommen:

        • Nur eine Netzwerkschnittstelle zwischen Replikaten vorhanden: Sie können diesen Fehler ignorieren, da er nicht auf cloudbasierte Konfigurationen zutrifft.
        • Windows Updates unterscheidet sich auf beiden Replikaten: Wenn Sie für die Windows-Instanzen die automatische Anwendung von Aktualisierungen konfiguriert haben, können auf einem Knoten bereits Aktualisierungen vorgenommen worden sein, die von anderen Knoten noch nicht heruntergeladen wurden. Achten Sie darauf, dass die Konfigurationen auf beiden Servern identisch sind.
        • Neustart ausstehend: Sie haben Änderungen auf einem Server vorgenommen. Dieser muss nun neu gestartet werden, damit die Änderungen übernommen werden. Diese Meldung sollte nicht ignoriert werden.
        • Nicht alle Server haben die gleiche Domainrolle: Diese Meldung können Sie ignorieren.
        • Nicht alle Server befinden sich in derselben Organisationseinheit: In dieser Anleitung werden keine Organisationseinheiten verwendet. In einem Produktionssystem sollten Sie den Cluster aber in eine eigene Organisationseinheit aufnehmen. Diese Best Practice wird in der Microsoft-Anleitung beschrieben.
        • Unsignierte Treiber gefunden: Diese Meldung können Sie ignorieren.
    • Auf der Seite Zusammenfassung können Sie Cluster jetzt unter Verwendung der überprüften Knoten erstellen auswählen und mit der Erstellung des Clusters fortfahren, statt den Assistenten zu schließen und wieder zu öffnen.

    • Öffnen Sie im Cluster-Erstellungsassistenten die Seite Zugriffspunkt:

      • Geben Sie dem Cluster den Namen "testcluster".
      • Geben Sie im Feld Adresse die IP-Adresse ein, die Sie zuvor reserviert haben: 10.0.0.8.

    Microsoft-Anleitung

Clusteradministrator hinzufügen

Wenn Sie ein Domänenkonto als Administrator für den Cluster hinzufügen, können Sie über Tools wie Windows PowerShell Aktionen für den Cluster ausführen. Fügen Sie das Domainkonto cluster-admin als Clusteradministrator hinzu.

  1. Wählen Sie im Failovercluster-Manager im Clusterknoten, in dem die Clusterressourcen gehostet werden, den Cluster im linken Bereich aus und klicken Sie dann im rechten Bereich auf Attribute.
  2. Wählen Sie den Tab Clusterberechtigungen aus.
  3. Klicken Sie auf Hinzufügen und fügen Sie anschließend cluster-admin hinzu.
  4. Wählen Sie in der Liste Gruppen- oder Nutzernamen den Eintrag cluster-admin und im Bereich Berechtigungen die Option Vollzugriff aus.
  5. Klicken Sie auf Übernehmen und auf OK.

An dieser Stelle empfiehlt es sich, Snapshots zu erstellen.

Dateifreigabenzeuge erstellen

Sie haben einen Failovercluster mit zwei Knoten, vom Cluster wird jedoch über einen Abstimmungsmechanismus entschieden, welcher Knoten der aktive Knoten sein soll. Sie können einen Dateifreigabenzeugen hinzufügen, um ein Quorum zu erreichen.

In dieser Anleitung wird dem Domänencontrollerserver einfach ein freigegebener Ordner hinzugefügt. Wenn dieser Server offline geht, während einer der Clusterknoten neu startet, wird der gesamte Cluster nicht mehr ordnungsgemäß ausgeführt, da der verbleibende Server nicht alleine abstimmen kann. In dieser Anleitung wird davon ausgegangen, dass die Features der GCP-Infrastruktur wie Live-Migration und automatischer Neustart genügend Zuverlässigkeit bieten, um den Ausfall des freigegebenen Ordners zu verhindern.

Wenn Sie einen Dateifreigabenzeugen mit einer höheren Verfügbarkeit erstellen möchten, haben Sie dazu folgende Möglichkeiten:

  • Verwenden Sie einen Windows Server-Cluster, um die Freigabe mithilfe von Storage Spaces Direct (Direkte Speicherplätze) bereitzustellen. Über dieses Feature von Windows Server 2016 ist eine Freigabe mit hoher Verfügbarkeit für den Quorumzeugen möglich. Sie können beispielsweise einen Cluster für den Active Directory-Domänencontroller (Domaincontroller) erstellen, um sowohl Domaindienste mit Hochverfügbarkeit als auch den Dateifreigabenzeugen bereitzustellen.
  • Verwenden Sie Datenreplikationssoftware wie SIOS Datakeeper mit Windows Server-Failoverclustering für synchrone oder asynchrone Replikation.

Gehen Sie so vor, um die Dateifreigabe für den Zeugen zu erstellen:

  1. Stellen Sie eine Verbindung mit wsfc-dc her. Auf diesem Server wird die Dateifreigabe erstellt.
  2. Navigieren Sie in Explorer zu Laufwerk C.
  3. Klicken Sie in der Titelleiste auf die Schaltfläche Neuer Ordner.
  4. Geben Sie dem neuen Ordner den Namen shares.
  5. Doppelklicken Sie auf den Ordner shares, um ihn zu öffnen.
  6. Fügen Sie einen neuen Ordner mit dem Namen clusterwitness-testcluster hinzu.

Freigabe für den Dateifreigabenzeugen konfigurieren

Sie müssen Berechtigungen für den Ordner des Dateifreigabenzeugen festlegen, damit er vom Cluster verwendet werden kann.

  1. Klicken Sie in Explorer mit der rechten Maustaste auf den Ordner clusterwitness-testcluster und wählen Sie Eigenschaften aus.
  2. Klicken Sie auf dem Tab Freigabe auf Erweiterte Freigabe.
  3. Wählen Sie Diesen Ordner freigeben aus.
  4. Klicken Sie auf Berechtigungen und dann auf Hinzufügen.
  5. Klicken Sie auf Objekttypen, wählen Sie Computer aus und klicken Sie dann auf OK.
  6. Fügen Sie das Computerkonto testcluster$ hinzu.
  7. Gewähren Sie die Berechtigung Vollzugriff für testcluster$.
  8. Klicken Sie auf Übernehmen und schließen Sie dann alle Dialogfelder.

Dateifreigabenzeugen dem Failovercluster hinzufügen

Konfigurieren Sie nun im Failovercluster die Verwendung des Dateifreigabenzeugen als Quorumvotum.

  1. Öffnen Sie den Failovercluster-Manager auf dem Computer, auf dem die Clusterressourcen gehostet werden (wsfc-1).
  2. Klicken Sie im linken Bereich mit der rechten Maustaste auf den Namen des Clusters (testcluster.WSFC.TEST), zeigen Sie auf Weitere Aktionen und klicken Sie dann auf Clusterquorumeinstellungen konfigurieren.
  3. Klicken Sie im Feld Quorumkonfigurationsoption auswählen auf die Option Quorumzeugen auswählen.
  4. Wählen Sie im Feld Quorumzeuge auswählen die Option Dateifreigabenzeugen konfigurieren aus.
  5. Geben Sie unter Dateifreigabepfad den Pfad zum freigegebenen Ordner ein, z. B. \\wsfc-dc\clusterwitness-testcluster.
  6. Prüfen Sie die Einstellungen und klicken Sie dann auf Fertigstellen.

Failovercluster testen

Der Windows Server-Failover-Cluster ist nun einsatzbereit. Sie können ihn manuell testen, indem Sie Clusterressourcen von einer Instanz zur anderen verschieben. Vor der endgültigen Bereitstellung ist es sinnvoll, zu prüfen, ob alle bisherigen Einstellungen wie gewünscht funktionieren.

  1. Notieren Sie sich auf wsfc-1 den Namen unter Aktueller Hostserver im Failovercluster-Manager.
  2. Führen Sie Windows PowerShell als cluster-admin aus.
  3. Führen Sie in PowerShell den folgenden Befehl aus, um den aktuellen Hostserver zu ändern:

    Move-ClusterGroup -Name "Cluster Group"
    

Der Name des aktuellen Hostservers sollte sich in den Namen der anderen VM ändern.

Wenn dies nicht der Fall ist, lesen Sie die vorherigen Schritte, um zu prüfen, ob Sie etwas übersehen haben. Am häufigsten besteht das Problem darin, dass eine Firewallregel fehlt und deshalb der Zugriff auf das Netzwerk gesperrt ist. Weitere Punkte, die geprüft werden können, finden Sie im Abschnitt Fehlerbehebung.

Wenn alles funktioniert, können Sie nun damit fortfahren, den internen Load-Balancer einzurichten. Er wird benötigt, um den Netzwerk-Traffic an den aktuellen Hostserver im Cluster zu leiten.

An dieser Stelle empfiehlt es sich, Snapshots zu erstellen.

Dem Failovercluster eine Rolle hinzufügen

Beim Windows-Failoverclustering werden Arbeitslasten von Rollen gehostet. Sie können die IP-Adresse, die von Ihrer Anwendung verwendet wird, mit einer Rolle im Cluster angeben. In dieser Anleitung fügen Sie der Testarbeitslast eine Rolle hinzu. Dabei handelt es sich um den IIS-Webserver (Internet Information Services). Anschließend weisen Sie der Rolle eine IP-Adresse zu.

IP-Adresse für die Rolle in Compute Engine reservieren

Reservieren Sie die IP-Adresse für die Rolle, um IP-Adressenkonflikte in Ihrem Subnetz in Compute Engine zu vermeiden.

  1. Öffnen Sie ein Terminal auf einer Host-VM oder öffnen Sie Cloud Shell.

    Zu Cloud Shell

  2. Reservieren Sie eine IP-Adresse. Verwenden Sie für diese Anleitung 10.0.0.9:

    gcloud compute addresses create load-balancer-ip --region [YOUR_REGION] --subnet wsfcnetsub1 --addresses 10.0.0.9
  3. So bestätigen Sie die Reservierung der IP-Adresse:

    gcloud compute addresses list

Rolle hinzufügen

Gehen Sie so vor:

  1. Wählen Sie im Failovercluster-Manager im Bereich Aktionen die Option Rolle konfigurieren aus.
  2. Wählen Sie auf der Seite Rolle auswählen die Option Anderer Server aus.
  3. Geben Sie auf der Seite Clientzugriffspunkt den Namen IIS ein.
  4. Legen Sie als Adresse 10.0.0.9 fest.
  5. Überspringen Sie Speicher auswählen und Ressourcentypen auswählen.
  6. Prüfen Sie die Einstellungen und klicken Sie dann auf Fertigstellen.

Bestätigungsdialogfeld mit Einstellungen für Rolle

Internen Load-Balancer erstellen

Erstellen und konfigurieren Sie nun den internen Load-Balancer. Dieser wird benötigt, um Netzwerk-Traffic an den aktiven Clusterhostknoten weiterzuleiten. Dazu verwenden Sie die Google Cloud Console, da Sie über die Nutzeroberfläche Einblick in die Organisation des internen Load-Balancing erhalten.

Sie erstellen auch eine Compute Engine-Instanzgruppe für jede Zone im Cluster, die der Load-Balancer zum Verwalten der Clusterknoten verwendet.

Instanzgruppen erstellen

Erstellen Sie eine Instanzgruppe in jeder Zone, die einen Clusterknoten enthält. Fügen Sie dann jeden Knoten der Instanzgruppe in ihrer Zone hinzu. Fügen Sie den Domaincontroller wsfc-dc keiner Instanzgruppe hinzu.

  1. Erstellen Sie für jede Zone im Cluster eine Instanzgruppe. Ersetzen sie dabei [ZONE_1] durch den Namen der ersten Zone und [ZONE_2] durch den Namen der zweiten Zone:

    gcloud compute instance-groups unmanaged create wsfc-group-1 --zone=[ZONE_1]
    gcloud compute instance-groups unmanaged create wsfc-group-2 --zone=[ZONE_2]
  2. Fügen Sie den Server in jeder Zone der Instanzgruppe für diese Zone hinzu:

    gcloud compute instance-groups unmanaged add-instances wsfc-group-1 --instances wsfc-1 --zone [ZONE_1]
    gcloud compute instance-groups unmanaged add-instances wsfc-group-2 --instances wsfc-2 --zone [ZONE_2]
  3. Prüfen Sie, ob die Instanzgruppen erstellt wurden und jede Gruppe eine Instanz enthält:

    gcloud compute instance-groups unmanaged list
      NAME          ZONE           NETWORK  NETWORK_PROJECT   MANAGED  INSTANCES
      wsfc-group-1  us-central1-a  wsfcnet  exampleproject    No       1
      wsfc-group-2  us-central1-b  wsfcnet  exampleproject    No       1

Load-Balancer erstellen

  1. Rufen Sie in der Google Cloud Console die Seite Load-Balancing auf.

    Load-Balancing aufrufen

  2. Klicken Sie auf Load-Balancer erstellen.

  3. Klicken Sie auf der Karte Network-Load-Balancer (TCP/SSL) auf Konfiguration starten.

  4. Wählen Sie Nur zwischen meinen VMs aus und klicken Sie dann auf Weiter.

  5. Geben Sie unter Name den Namen "wsfc-lb" ein.

Klicken Sie noch nicht auf Erstellen.

Back-End konfigurieren

Denken Sie daran, dass der aktive Knoten vom internen GCP-Load-Balancer über eine regelmäßige Systemdiagnose ermittelt wird. Bei der Systemdiagnose wird der auf dem aktiven Clusterknoten ausgeführte Compute Engine-Clusterhostagent angepingt. Die Nutzlast der Systemdiagnose ist die IP-Adresse der Anwendung, die von der geclusterten Rolle dargestellt wird. Der Agent antwortet mit dem Wert 1, wenn der Knoten aktiv ist, oder mit dem Wert 0, wenn dies nicht der Fall ist.

  1. Klicken Sie auf Backend-Konfiguration.
  2. Wählen Sie Ihre aktuelle Region aus.
  3. Wählen Sie wsfcnet als Netzwerk aus.
  4. Fügen Sie unter Back-Ends alle erstellten Instanzgruppen hinzu. Wählen Sie dazu den jeweiligen Namen aus und klicken Sie auf Fertig.
  5. Erstellen Sie eine Systemdiagnose.

    • Geben Sie unter Name den Namen "wsfc-hc" ein.
    • Akzeptieren Sie die Standardeinstellung TCP für Protokoll und ändern Sie den Port für Antworten vom Clusterhostagenten in "59998".
    • Geben Sie unter Anfrage den Wert "10.0.0.9" ein.
    • Geben Sie unter Antwort den Wert "1" ein.
    • Geben Sie unter Überprüfungsintervall den Wert "2" ein.
    • Geben Sie unter Zeitlimit den Wert "1" ein.
    • Klicken Sie auf Speichern und fortfahren.

Frontend konfigurieren

In der Frontend-Konfiguration wird eine Weiterleitungsregel erstellt, die definiert, wie eingehende Anfragen vom Load-Balancer verarbeitet werden. In dieser Anleitung testen Sie das System der Einfachheit halber, indem Sie Anfragen zwischen den VMs im Subnetzwerk senden.

In Ihrem Produktionssystem müssen Sie das System möglicherweise für externen Traffic wie Internet-Traffic öffnen. Dazu können Sie einen Bastion Host erstellen, der externen Traffic akzeptiert und an das interne Netzwerk weiterleitet. Die Verwendung eines Bastion Hosts wird in dieser Anleitung nicht behandelt.

  1. Klicken Sie im mittleren Bereich auf Frontend-Konfiguration.
  2. Geben Sie unter Name den Namen "wsfc-lb-fe" ein.
  3. Wählen Sie das Subnetzwerk aus (wsfcnetsub1).
  4. Wählen Sie unter Interne IP-Adresse den Wert load-balancer-ip (10.0.0.9) aus. Dies ist dieselbe IP-Adresse, die Sie für die Rolle festgelegt haben.
  5. Geben Sie unter Ports den Wert "80" ein.
  6. Klicken Sie auf Fertig.

Prüfen und abschließen

  1. Klicken Sie für eine Zusammenfassung der Einstellungen des internen Load-Balancers im mittleren Bereich auf Prüfen und abschließen. Die Zusammenfassung wird im rechten Bereich eingeblendet.
  2. Klicken Sie auf Erstellen. Es dauert einen Moment, den Load-Balancer zu erstellen.

    Google Cloud Console mit endgültigen Einstellungen für internes Load-Balancing

Firewallregeln für die Systemdiagnose erstellen

Sie haben vielleicht bemerkt, dass Sie von der Google Cloud Console eine Meldung erhalten haben. Diese besagt, dass für die Systemdiagnose eine Firewallregel benötigt wird, damit die Ziele erreicht werden können. In diesem Abschnitt richten Sie die Firewallregel ein.

  1. Rufen Sie in der Google Cloud Console Cloud Shell auf.

    Zu Cloud Shell

  2. Führen Sie den folgenden Befehl aus, um die Firewallregel zu erstellen:

    gcloud compute firewall-rules create allow-health-check --network wsfcnet --source-ranges 130.211.0.0/22,35.191.0.0/16 --allow tcp:59998
    

Windows-Firewall öffnen

Erstellen Sie auf jedem Clusterknoten (wsfc-1 und wsfc-2) eine Firewallregel in der Windows-Firewall, um dem Load-Balancer Zugriff auf jedes Windows-System zu gewähren.

  1. Öffnen Sie die App "Windows-Firewall mit erweiterter Sicherheit".

  2. Wählen Sie im linken Navigationsbereich Eingehende Regeln aus.

  3. Wählen Sie im rechten Navigationsbereich Neue Regel aus.

  4. Wählen Sie im Bereich Regeltyp die Option Benutzerdefiniert aus und klicken Sie auf Weiter.

  5. Übernehmen Sie im Bereich Programm die Standardeinstellung und klicken Sie auf Weiter.

  6. Im Bereich Protokoll und Ports:

    1. Wählen Sie im Feld Protokolltyp: die Option TCP aus.
    2. Wählen Sie im Feld Lokaler Port: die Option Bestimmte Ports aus und geben Sie 59998 ein.
  7. Im Feld Bereich unter Für welche Remote-IP-Adressen gilt diese Regel?:

    1. Wählen Sie Diese IP-Adressen: aus.
    2. Fügen Sie in das Feld Diese IP-Adresse oder Subnetz jede der folgenden IP-Adressen ein, indem Sie auf Hinzufügen klicken:

      • 130.211.0.0/22
      • 35.191.0.0/16
    3. Klicken Sie auf Weiter.

  8. Übernehmen Sie im Bereich Aktion die Option Verbindung zulassen und klicken Sie auf Weiter.

  9. Übernehmen Sie im Bereich Profil die Standardeinstellungen und klicken Sie auf Weiter.

  10. Geben Sie einen Namen für die Firewallregel ein und klicken Sie auf Fertig stellen.

Load-Balancer prüfen

Sobald der interne Load-Balancer ausgeführt wird, können Sie seinen Status überprüfen, um sicherzustellen, dass er eine intakte Instanz finden kann, und danach das Failover noch einmal testen.

  1. Rufen Sie in der Google Cloud Console die Seite Load-Balancing auf.

    Load-Balancing aufrufen

  2. Klicken Sie auf den Namen des Load-Balancers (wsfc-lb).

    Im Abschnitt Backend (Back-End) der Übersicht werden die Instanzgruppen angezeigt.

    In der folgenden Abbildung der Detailseite des wsfc-lb-Load-Balancers enthält die Instanzgruppe wsfc-group-1 den aktiven Knoten, wie durch 1 / 1 in der Spalte Fehlerfrei angegeben. Die Instanzgruppe wsfc-group-2 enthält den inaktiven Knoten, wie durch 0 / 1 angegeben.

    Der Status des Load-Balancers wird mit 1 / 1 fehlerfreie Instanzen in Instanzgruppe wsfc-group-1 angegeben. Dies bedeutet, dass sie den aktiven Knoten enthält.

    Wenn beide Instanzgruppen 0 / 1 anzeigen, wird der Load-Balancer möglicherweise noch mit den Knoten synchronisiert. Es kann erforderlich sein, mindestens eine Failover-Aktion auszuführen, damit die IP-Adresse vom Load-Balancer ermittelt wird.

  3. Erweitern Sie im Failovercluster-Manager den Clusternamen und klicken Sie auf Rollen. Geben Sie in der Spalte Besitzerknoten den Servernamen für die Rolle IIS an.

  4. Starten Sie ein Failover. Klicken Sie dazu mit der rechten Maustaste auf die Rolle IIS und wählen Sie Verschieben > Bestmöglicher Knoten aus. Durch diese Aktion wird die Rolle zum neuen Knoten verschoben, der in der Spalte Besitzerknoten aufgeführt ist:

    Feld "Besitzerknoten" im Failovercluster-Manager

  5. Warten Sie, bis Wird ausgeführt für Status angezeigt wird.

  6. Kehren Sie zur Seite Details zum Load-Balancer zurück, klicken Sie auf Aktualisieren und prüfen Sie, ob die Werte 1 / 1 und 0 / 1 in der Spalte Fehlerfrei die Instanzgruppen gewechselt haben.

    Status des Load-Balancers wird mit 1 intakten Instanz von 2 angegeben.

gcloud compute backend-services get-health wsfc-lb --region=[REGION]

Die Ausgabe sieht in etwa so aus:

backend: https://compute.googleapis.com/compute/v1/projects/exampleproject/zones/us-central1-a/instanceGroups/wsfc-group-1
status:
  healthStatus:
  - healthState: HEALTHY
    instance: https://compute.googleapis.com/compute/v1/projects/exampleproject/zones/us-central1-a/instances/wsfc-1
    ipAddress: 10.0.0.4
    port: 80
  kind: compute#backendServiceGroupHealth
---
backend: https://compute.googleapis.com/compute/v1/projects/exampleproject/zones/us-central1-b/instanceGroups/wsfc-group-2
status:
  healthStatus:
  - healthState: UNHEALTHY
    instance: https://compute.googleapis.com/compute/v1/projects/exampleproject/zones/us-central1-b/instances/wsfc-2
    ipAddress: 10.0.0.5
    port: 80
  kind: compute#backendServiceGroupHealth

Anwendung installieren

Da Sie nun über einen Cluster verfügen, können Sie die Anwendung auf jedem Knoten einrichten und für die Ausführung in einer Clusterumgebung konfigurieren.

Für diese Anleitung müssen Sie eine Anwendung einrichten, die zeigt, dass der Cluster tatsächlich mit dem internen Load-Balancer funktioniert. Richten Sie auf jeder VM IIS ein, um eine einfache Webseite bereitzustellen.

Sie richten IIS nicht für hohe Verfügbarkeit im Cluster ein. Sie erstellen separate IIS-Instanzen, die jeweils eine andere Webseite bereitstellen. Nach einem Failover stellt der Webserver seinen eigenen Inhalt und keinen freigegebenen Inhalt bereit.

Die Einrichtung von hoher Verfügbarkeit für Ihre Anwendung oder IIS wird in dieser Anleitung nicht behandelt.

IIS einrichten

  1. Installieren Sie IIS auf jedem Clusterknoten.

    • Achten Sie darauf, dass auf der Seite Rollendienste auswählen unter Allgemeine HTTP-Features die Option Standarddokument ausgewählt ist.
    • Klicken Sie auf der Seite Bestätigung auf das Kästchen, das den automatischen Neustart des Zielservers aktiviert.
  2. Achten Sie darauf, dass alle Webserver ordnungsgemäß ausgeführt werden.

    1. Stellen Sie eine RDP-Verbindung zur VM wsfc-dc her.
    2. Klicken Sie im Navigationsbereich im Server-Manager auf der linken Seite des Fensters auf Lokaler Server.
    3. Deaktivieren Sie oben im Abschnitt Eigenschaften die Option Verstärkte Sicherheitskonfiguration für IE.
    4. Öffnen Sie Internet Explorer.
    5. Rufen Sie die IP-Adressen der einzelnen Server auf.

      http://10.0.0.4/
      http://10.0.0.5/

In beiden Fällen wird die Seite Willkommen geöffnet. Dies ist die IIS-Standardwebseite.

Standardwebseiten bearbeiten

Ändern Sie die einzelnen Standardwebseiten, um einfach erkennen zu können, von welchem Server die Seite aktuell bereitgestellt wird.

  1. Stellen Sie eine RDP-Verbindung zur VM wsfc-1 her.
  2. Führen Sie den Editor als Administrator aus.
  3. Öffnen Sie C:\inetpub\wwwroot\iisstart.htm im Editor. Denken Sie daran, Alle Dateien auszuwählen und nicht nur nach Textdateien zu suchen.
  4. Ersetzen Sie den Text im Element <title> durch den Namen des aktuellen Servers. Beispiel:

        <title>wsfc-1</title>
    
  5. Speichern Sie die HTML-Datei.

  6. Wiederholen Sie diese Schritte für wsfc-2 und legen Sie dabei für das Element <title> den Namen wsfc-2 fest.

Wenn Sie nun eine Webseite aufrufen, die von einem dieser Server bereitgestellt wird, wird der Name des Servers als Titel im Internet Explorer-Tab aufgeführt.

Failover testen

  1. Stellen Sie eine RDP-Verbindung zur VM wsfc-dc her.
  2. Öffnen Sie Internet Explorer.
  3. Navigieren Sie zur IP-Adresse der Rolle des Load-Balancers.

    http://10.0.0.9/
    

    Die Seite Willkommen wird mit dem Namen des aktuellen Servers im Titel des Tabs aufgeführt.

  4. Beenden Sie den aktuellen Server, um einen Ausfall zu simulieren. Führen Sie in Cloud Shell den folgenden Befehl aus. Ersetzen Sie dabei [INSTANCE_NAME] durch den Namen des aktuellen Servers, der im vorherigen Schritt angezeigt wurde, z. B. durch wsfc-1:

    gcloud compute instances stop [INSTANCE_NAME] --zone=[ACTIVE_ZONE]
    
  5. Wechseln Sie zur RDP-Verbindung zu wsfc-dc.

    Es kann einige Zeit dauern, bis der Wechsel vom Load-Balancer erkannt wird und es den Traffic umleitet.

  6. Aktualisieren Sie die Seite in Internet Explorer nach etwa 30 Sekunden.

    Der Name des neuen aktiven Knotens sollte nun im Titel des Tabs aufgeführt werden. Wenn beispielsweise zu Beginn wsfc-1 aktiv war, wird nun wsfc-2 im Titel angegeben. Wenn Sie die Änderung nicht gleich sehen können oder der Fehler "Seite nicht gefunden" angezeigt wird, aktualisieren Sie den Browser noch einmal.

Glückwunsch! Es wird nun ein funktionierender Windows Server 2016-Failover-Cluster in GCP ausgeführt.

Fehlerbehebung

Wenn der Vorgang nicht erfolgreich war, prüfen Sie die folgenden häufigen Probleme.

Systemdiagnose wird durch GCP-Firewallregeln blockiert

Wenn die Systemdiagnose nicht funktioniert, prüfen Sie, ob die eingerichtete Firewallregel eingehenden Traffic von den IP-Adressen 130.211.0.0/22 und 35.191.0.0/16 zulässt, die von der Systemdiagnose verwendet werden.

Systemdiagnose wird durch Windows-Firewall blockiert

Achten Sie darauf, dass Port 59998 in der Windows-Firewall für jeden Clusterknoten geöffnet ist. Weitere Informationen finden Sie unter Windows-Firewall öffnen.

Clusterknoten verwenden DHCP

Es ist wichtig, dass jede VM im Cluster eine statische IP-Adresse hat. Wenn für eine VM die Verwendung von DHCP in Windows konfiguriert wurde, ändern Sie die Netzwerkeinstellungen in Windows so, dass die IPv4-Adresse mit der IP-Adresse der VM in der Google Cloud Console übereinstimmt. Legen Sie außerdem die Gateway-IP-Adresse so fest, dass diese der Adresse des Subnetzwerkgateways in der GCP-VPC entspricht.

GCP-Netzwerktags in Firewallregeln

Wenn Sie Netzwerktags in den Firewallregeln verwenden, achten Sie darauf, dass für jede VM-Instanz die richtigen Tags gesetzt wurden. In dieser Anleitung werden keine Tags verwendet, wenn Sie sie jedoch gesetzt haben, müssen sie konsistent verwendet werden.

Bereinigen

Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, löschen Sie entweder das Projekt, das die Ressourcen enthält, oder Sie behalten das Projekt und löschen die einzelnen Ressourcen.

Nachdem Sie die Anleitung abgeschlossen haben, können Sie die erstellten Ressourcen bereinigen, damit sie keine Kontingente mehr verwenden und keine Gebühren mehr anfallen. In den folgenden Abschnitten erfahren Sie, wie Sie diese Ressourcen löschen oder deaktivieren.

Projekt löschen

Am einfachsten vermeiden Sie weitere Kosten, wenn Sie das zum Ausführen der Anleitung erstellte Projekt löschen.

So löschen Sie das Projekt:

  1. Wechseln Sie in der Google Cloud Console zur Seite Ressourcen verwalten.

    Zur Seite „Ressourcen verwalten“

  2. Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen.
  3. Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Shut down (Beenden), um das Projekt zu löschen.

Ressourcen bereinigen, ohne das Projekt zu löschen

Wenn Sie Ihr Projekt beibehalten müssen, können Sie die in der Anleitung verwendeten Ressourcen einzeln löschen, um sie zu bereinigen.

Instanzen löschen

So löschen Sie eine Compute Engine-Instanz:

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.

    Zu Seite „VM-Instanzen“

  2. Klicken Sie auf das Kästchen für die Die Instanz, die Sie löschen möchten.
  3. Klicken Sie zum Löschen der Instanz auf Weitere Aktionen, dann auf Löschen, und folgen Sie dann der Anleitung.

Instanzgruppen löschen

  1. Rufen Sie in der Google Cloud Console die Seite Instanzgruppen auf.

    Zu den Instanzgruppen

  2. Klicken Sie auf das Kästchen für ist die Instanzgruppe, die Sie löschen möchten.
  3. Klicken Sie zum Löschen der Instanzgruppe auf Löschen.

Load-Balancer löschen

So löschen Sie einen Load-Balancer:

  1. Rufen Sie in der Google Cloud Console die Seite Load-Balancing auf.

    Load-Balancing aufrufen

  2. Aktivieren Sie das Kästchen neben dem Namen des Load-Balancers, den Sie löschen möchten.

  3. Klicken Sie oben auf der Seite auf Löschen.

VPC-Netzwerk löschen

So löschen Sie ein VPC-Netzwerk:

  1. Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerke auf.

    Zur Seite VPC-Netzwerke

  2. Klicken Sie auf den Namen des Netzwerks, das Sie löschen möchten.

  3. Klicken Sie oben auf der Seite auf VPC-NETZWERK LÖSCHEN.

Reservierte IP-Adressen freigeben

Verwenden Sie Cloud Shell, um die reservierten IP-Adressen freizugeben:

  1. Rufen Sie in der Google Cloud Console Cloud Shell auf.

    Zu Cloud Shell

  2. Geben Sie die reservierten IP-Adressen frei.

    gcloud compute addresses delete cluster-access-point load-balancer-ip

Nichtflüchtige Speicher löschen

So löschen Sie nichtflüchtige Speicher:

  1. Rufen Sie in der Google Cloud Console die Seite Laufwerke auf.

    Zur Seite „Laufwerke“

  2. Wählen Sie das Kästchen neben dem zu löschenden Laufwerk aus.

  3. Klicken Sie oben auf der Seite auf Löschen.

Weitere Informationen