Isolierte Workloads in mehreren Standorten und Zonen bereitstellen

Für dieses Lernprogramm können Kosten anfallen. Mit dem Kostenschätzer können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung generieren.

Dieses Lernprogramm führt Sie durch die Schritte zum Einrichten hoch verfügbarer und isolierter Workloads durch die Bereitstellung von IBM Cloud® Virtual Private Clouden (VPCs). Sie werden virtuelle Serverinstanzen (VSIs) in mehreren Zonen innerhalb einer Region erstellen, um die Hochverfügbarkeit der Anwendung sicherzustellen. Sie erstellen zusätzliche VSIs in einer zweiten Region und konfigurieren einen globalen Load Balancer (GLB), um eine hohe Verfügbarkeit zwischen den Regionen zu gewährleisten und die Netzwerklatenz für Benutzer in verschiedenen Regionen zu reduzieren.

Sie stellen einen IBM Cloud Internet Services-Service (CIS) als GLB aus dem Katalog bereit und einen IBM Cloud Secrets Manager-Service aus dem Katalog, um das TLS-Zertifikat (Transport Layer Security) für alle eingehenden HTTPS-Anforderungen zu verwalten.

Ziele

  • Kennenlernen der Isolation von Workloads durch Infrastrukturobjekte, die für virtuelle private Clouds verfügbar sind
  • Verwenden der Lastausgleichsfunktion zwischen Zonen in einer Region, um Datenverkehr auf virtuelle Server zu verteilen
  • Verwenden einer globalen Lastausgleichsfunktion zwischen Regionen, um Hochverfügbarkeit zu implementieren, die Ausfallsicherheit zu erhöhen und die Latenz zu verringern

des

  1. Der Administrator (DevOps) stellt VSIs in Teilnetzen unter zwei verschiedenen Zonen in einer VPC in Region 1 bereit und wiederholt die gleiche Prozedur in einer VPC, die in Region 2 erstellt wurde.
  2. Der Administrator erstellt eine Lastausgleichsfunktion mit einem Back-End-Pool von Servern in verschiedenen Zonen der Region 1 sowie einen Front-End-Listener. Er wiederholt die gleiche Prozedur in Region 2.
  3. Der Administrator richtet eine Instanz von IBM Cloud Internet Services mit einer zugeordneten angepassten Domäne ein und erstellt eine globale Lastausgleichsfunktion, die auf die Lastausgleichsfunktionen verweist, die in zwei verschiedenen VPCs erstellt wurden.
  4. Der Administrator aktiviert die HTTPS-Verschlüsselung, indem er dem Secrets Manager-Service das SSL-Zertifikat der Domäne hinzufügt.
  5. Der Benutzer stellt eine HTTP/HTTPS-Anforderung und die globale Lastausgleichsfunktion verarbeitet die Anforderung.
  6. Die Anforderung wird an die Lastausgleichsfunktionen (sowohl auf globaler als auch auf lokaler Ebene) weitergeleitet. Die Anforderung wird anschließend durch die verfügbare Serverinstanz erfüllt.

Vorbereitende Schritte

  • Überprüfen Sie die Benutzerberechtigungen. Ihr Benutzerkonto muss über ausreichende Berechtigungen zum Erstellen von Verwalten von VPC-Ressourcen verfügen. Weitere Informationen bietet die Liste der erforderlichen Berechtigungen für VPC.
  • Sie benötigen einen SSH-Schlüssel für die Herstellung einer Verbindung zu den virtuellen Servern. Wenn Sie noch keinen SSH-Schlüssel besitzen, befolgen Sie die Anweisungen zum Erstellen eines Schlüssels für VPC.

Virtuelle private Clouds, Teilnetze und virtuelle Serverinstanzen erstellen

In diesem Abschnitt erstellen Sie Ihre eigene VPC in Region 1 mit Teilnetzen, die in zwei verschiedenen Zonen von Region 1 erstellt wurden, gefolgt von der Bereitstellung von VSIs.

Virtual Private Cloud erstellen

  1. Navigieren Sie zur Seite Virtuelle private Clouds und klicken Sie auf Erstellen.
  2. Wählen Sie im Abschnitt Standort eine Geografie und eine Region aus, z. B. Europe und London.
  3. Geben Sie vpc-region1 für den Namen Ihrer VPC ein, wählen Sie eine Ressourcengruppe und fügen Sie optional Tags hinzu, um Ihre Ressourcen zu organisieren.
  4. Wählen Sie SSH zulassen und Ping zulassen in der Standardsicherheitsgruppe ab. Der SSH-Zugriff wird später einer Wartungssicherheitsgruppe hinzugefügt. Die Wartungssicherheitsgruppe wird einer Instanz hinzugefügt, um SSH-Zugriff über einen Bastionsserver zu ermöglichen. Der Ping-Zugriff ist für dieses Lernprogramm nicht erforderlich.
  5. Lassen Sie die Option Zugriff auf klassische Ressourcen aktivieren inaktiviert und wählen Sie Standardpräfix für jede Zone erstellen aus.
  6. Ändern Sie unter Teilnetze den Namen des Teilnetzes der Zone 1. Klicken Sie auf das Stiftsymbol:
    • Geben Sie vpc-region1-zone1-subnet als eindeutigen Namen Ihres Teilnetzes ein.
    • Wählen Sie dieselbe Ressourcengruppe aus wie die VPC-Ressourcengruppe.
    • Übernehmen Sie die Standardwerte in den anderen Werten.
    • Klicken Sie auf Speichern.
  7. Ändern Sie unter Teilnetze den Namen des Teilnetzes der Zone 2. Klicken Sie auf das Stiftsymbol:
    • Geben Sie vpc-region1-zone2-subnet als eindeutigen Namen Ihres Teilnetzes ein.
    • Wählen Sie dieselbe Ressourcengruppe aus wie die VPC-Ressourcengruppe.
    • Übernehmen Sie die Standardwerte in den anderen Werten.
    • Klicken Sie auf Speichern.
  8. Löschen Sie unter Teilnetze das Teilnetz in Zone 3. Klicken Sie auf das Minussymbol.
  9. Klicken Sie auf Virtuelle private Cloud erstellen, um die Instanz bereitzustellen.

Sicherheitsgruppe erstellen, um eingehenden Datenverkehr zu Ihrer Anwendung zu ermöglichen

Aktivieren Sie die Eingangsregeln für HTTP (80)- und HTTPS (443)-Ports für die Anwendung, indem Sie Regeln in einer Sicherheitsgruppe definieren. In späteren Schritten fügen Sie der Sicherheitsgruppe VSIs hinzu.

  1. Navigieren Sie zur Seite Sicherheitsgruppen und klicken Sie auf Create.

  2. Geben Sie vpc-region1-sg als Namen ein und wählen Sie dieselbe Ressourcengruppe als VPC-Ressourcengruppe aus.

  3. Wählen Sie die zuvor erstellte virtuelle private Cloud vpc-region1 aus.

  4. Fügen Sie dieselben Eingangsregeln wie in der folgenden Tabelle hinzu und klicken Sie dann auf Sicherheitsgruppe erstellen.

    Regeln für eingehenden Datenverkehr
    Protokoll Quellentyp Quelle Wert
    TCP Any 0.0.0.0/0 Ports 80-80
    TCP Any 0.0.0.0/0 Ports 443-443

Richten Sie virtuelle Serverinstanzen ein:

  1. Navigieren Sie zur Seite Teilnetze.
  2. Überprüfen Sie, ob der Status für alle Teilnetze Verfügbar lautet.
  3. Klicken Sie auf vpc-region1-zone1-subnet, gefolgt von Attached resources, und klicken Sie dann unter Attached instances auf Create.
    1. Geben Sie vpc-region1-zone1-vsi als eindeutigen Namen Ihres virtuellen Servers ein.
    2. Überprüfen oder legen Sie die Felder Virtuelle private Cloud, Ressourcengruppe, Position und Zone fest.
  4. Klicken Sie im Abschnitt Bild und Profil auf Bild ändern.
  5. Geben Sie im Feld Elemente suchen Ubuntu ein, wählen Sie eine beliebige Version des Bildes aus und klicken Sie auf Speichern.
  6. Klicken Sie im Abschnitt Profil auf Profil ändern.
  7. Wählen Sie Berechnen mit 2 vCPUs und 4 GB RAM als Profil aus und klicken Sie auf Speichern.
  8. Legen Sie für SSH-Schlüssel den SSH-Schlüssel fest, den Sie zuvor erstellt haben.
  9. Klicken Sie unter Netzanhänge mit virtueller Netzschnittstelle auf das Stiftsymbol in der Zeile für die Schnittstelle eth0.
    • Klicken Sie auf Weiter.
    • Aktivieren Sie vpc-region1-sg und inaktivieren Sie die Sicherheitsgruppe VPC default.
    • Klicken Sie mehrmals auf Weiter und anschließend auf Speichern.
  10. Klicken Sie auf Virtuellen Server erstellen.
  11. Wiederholen Sie die oben beschriebenen Schritte, um einen virtuellen vpc-region1-zone2-vsi-Server im vpc-region1-zone2-subnet-Teilnetz bereitzustellen.

Ressourcen an einer anderen Position erstellen

Wiederholen Sie die obigen Schritte aus Schritt 1, um eine neue VPC mit Teilnetzen und virtuellen Serverinstanzen in einer anderen Region bereitzustellen, z. B. Frankfurt. Befolgen Sie die gleichen Namenskonventionen wie oben und ersetzen Sie region2 durch region1.

Web-Server auf den virtuellen Serverinstanzen installieren und konfigurieren

Führen Sie die im Abschnitt Sicherer Zugriff auf ferne Instanzen mit einem Bastionshost beschriebenen Schritte für die sichere Wartung der Server aus. Verwenden Sie einen Bastionshost, der als jump-Server und Wartungssicherheitsgruppe für die zuvor bereitgestellten VSIs fungiert. In jeder VPC ist ein Bastionshost erforderlich.

Nachdem Sie erfolgreich SSHed in den Server ausgeführt haben, der im Teilnetz von Zone 1 von Region 1 bereitgestellt wurde,

  1. Führen Sie an der Eingabeaufforderung die folgenden Befehle aus, um Nginx als Web-Server zu installieren.
    sudo apt-get update
    sudo apt-get install nginx
    
  2. Prüfen Sie den Status des Nginx-Service mit dem folgenden Befehl:
    sudo systemctl status nginx
    
    Die Ausgabe sollte zeigen, dass der Nginx-Service aktiv (active) ist und ausgeführt wird.
  3. Überprüfen Sie optional, ob Nginx wie erwartet funktioniert. curl localhost. Daraufhin sollte die standardmäßige Nginx-Begrüßungsseite angezeigt werden.
  4. Zum Aktualisieren der HTML-Seite mit den Regions- und Zonendetails führen Sie den nachfolgenden Befehl aus:
    nano /var/www/html/index.nginx-debian.html
    
    Hängen Sie die Region und Zone an die h1 Tag-Anführungszeichen Welcome to nginx! an, um jetzt Welcome to nginx! server running in **zone 1 of region 1** zu lesen, und speichern Sie die Änderungen.
  5. Überprüfen Sie die Änderungen mit dem Befehl curl localhost.
  6. Wiederholen Sie die obigen Schritte, um den Webserver auf den VSI in den Teilnetzen aller Zonen zu installieren und zu konfigurieren, und vergessen Sie nicht, die HTML-Datei zu aktualisieren, um die entsprechenden Regions- und Zoneninformationen aufzunehmen.

Datenverkehr mit Lastausgleichsfunktionen auf die Zonen verteilen

In diesem Abschnitt erstellen Sie zwei Lastausgleichsfunktionen. Eine in der Region, um Datenverkehr auf mehrere Serverinstanzen unter den entsprechenden Teilnetzen in verschiedenen Zonen zu verteilen.

Erstellen Sie eine Sicherheitsgruppe, um eingehenden und ausgehenden Datenverkehr über die Lastausgleichsfunktionen zuzulassen.

Damit der Datenverkehr zur Anwendung zugelassen wird, müssen Sie Eingangs- und Ausgangsregeln für die Ports HTTP (80) und HTTPS (443) aktivieren. In späteren Schritten werden Sie beim Erstellen von Lastausgleichsfunktionen diese zu der Sicherheitsgruppe hinzufügen, die diese Regeln definiert.

  1. Navigieren Sie zur Seite Sicherheitsgruppen und klicken Sie auf Create.

  2. Wählen Sie die zuvor erstellte virtuelle private Cloud vpc-region1 aus.

  3. Geben Sie vpc-lb-sg als Namen ein und wählen Sie dieselbe Ressourcengruppe als VPC-Ressourcengruppe aus.

  4. Fügen Sie dieselben Eingangsregeln wie in der folgenden Tabelle hinzu.

    Regeln für eingehenden Datenverkehr
    Protokoll Quellentyp Quelle Wert
    TCP Any 0.0.0.0/0 Ports 80-80
    TCP Any 0.0.0.0/0 Ports 443-443
  5. Fügen Sie dieselben Ausgangsregeln wie in der folgenden Tabelle hinzu und klicken Sie anschließend auf Sicherheitsgruppe erstellen.

    Regeln für ausgehenden Datenverkehr
    Protokoll Quellentyp Quelle Wert
    TCP Any 0.0.0.0/0 Ports 80-80
    TCP Any 0.0.0.0/0 Ports 443-443
  6. Wiederholen Sie die obigen Schritte in Region 2.

Lastausgleichsfunktionen konfigurieren

  1. Navigieren Sie zur Seite Lastausgleichsfunktionen und klicken Sie auf Erstellen.
  2. Wählen Sie Application Load Balancer (ALB) als Typ der Lastausgleichsfunktion aus.
  3. Wählen Sie im Abschnitt Position dieselbe Geografie und Region aus, die Sie für die zuvor erstellte virtuelle private vpc-region1 Cloud verwendet haben.
  4. Geben Sie vpc-lb-region1 als Namen ein und wählen Sie dieselbe Ressourcengruppe als VPC-Ressourcengruppe aus.
  5. Wählen Sie die zuvor erstellte virtuelle private Cloud vpc-region1 aus.
  6. Wählen Sie die Teilnetze vpc-region1-zone1-subnet und vpc-region1-zone2-subnet.
  7. Klicken Sie auf Pool erstellen, um einen neuen Back-End-Pool von VSIs zu erstellen, die als gleichwertige Peers fungieren, um den an den Pool geleiteten Datenverkehr gemeinsam zu verarbeiten. Legen Sie die Parameter mit den unten stehenden Werten fest und klicken Sie anschließend auf Erstellen.
    • Name: region1-pool
    • Protokoll: HTTP
    • Sitzungsattraktivität: None
    • Proxyprotokoll: Disabled
    • Methode: Round robin
    • Pfad für Statusprüfung: /
    • Statusprotokoll: HTTP
    • Statusport: Leer lassen
    • Intervall (Sek.): 15
    • Zeitlimit (Sek.): 5
    • Max. Wiederholungen: 2
    • Klicken Sie auf Erstellen.
  8. Klicken Sie auf Server zuordnen, um Serverinstanz zum Pool hinzuzufügen.
    • Wählen Sie in der Dropdown-Liste Teilnetze vpc-region1-zone1-subnet und vpc-region1-zone2-subnet aus.
    • Wählen Sie die Instanzen aus, die Sie erstellt haben, und legen Sie 80 als Port fest.
    • Klicken Sie auf Zuordnen, um die Erstellung eines Back-End-Pools abzuschließen.
  9. Klicken Sie auf Listener erstellen, um einen neuen Front-End-Listener zu erstellen. Ein Listener ist ein Prozess, der auf Verbindungsanforderungen prüft.
    • Back-End-Pool: region1-pool
    • Protokoll: HTTP
    • Proxy-Protokoll: nicht ausgewählt
    • Port: 80
    • Maximale Anzahl Verbindungen: Lassen Sie das Feld leer und klicken Sie auf Erstellen.
  10. Aktivieren Sie unter Sicherheitsgruppen die Option vpc-lb-sg und inaktivieren Sie die Standardsicherheitsgruppe.
  11. Klicken Sie auf Load Balancer erstellen, um den Load Balancer bereitzustellen.
  12. Wiederholen Sie die obigen Schritte in Region 2. Benennen Sie diesmal die Lastausgleichsfunktion vpc-lb-region2 und den Back-End-Pool region2-pool.

Lastausgleichsfunktionen testen

  1. Warten Sie, bis sich der Status der Lastausgleichsfunktion in Aktiv ändert.
  2. Öffnen Sie Hostname in einem Web-Browser.
  3. Aktualisieren Sie die Seite mehrmals und stellen Sie fest, dass der Load Balancer bei jeder Aktualisierung Ergebnisse aus verschiedenen Zonen oder virtuellen Serverinstanzen zurückgibt.
  4. Speichern Sie die Adresse für die zukünftige Verwendung.

Möglicherweise haben Sie festgestellt, dass die Anforderungen nicht verschlüsselt sind und nur HTTP unterstützen. Sie werden im nächsten Abschnitt ein SSL-Zertifikat konfigurieren und HTTPS aktivieren.

Lastausgleich an mehreren Standorten konfigurieren

Ihre Anwendung läuft jetzt in zwei Regionen, aber es fehlt eine Komponente, damit die Benutzer von einem einzigen Einstiegspunkt aus transparent auf die Anwendung zugreifen können.

In diesem Abschnitt konfigurieren Sie IBM Cloud Internet Services (CIS), um die Arbeitslast auf die beiden Regionen zu verteilen. CIS stellt Globale Lastausgleichsfunktion (GLB), Caching, Web Application Firewall (WAF) und Seitenregel bereit, um Ihre Anwendungen zu schützen und gleichzeitig die Zuverlässigkeit und Leistung Ihrer Cloudanwendungen sicherzustellen.

Um eine globale Lastausgleichsfunktion zu konfigurieren, müssen Sie:

  • mit einer angepassten Domäne auf CIS-Namensserver verweisen,
  • IP-Adressen oder Hostnamen der VPC-Lastausgleichsfunktionen abrufen
  • Statusprüfungen konfigurieren, um die Verfügbarkeit Ihrer Anwendungen zu überprüfen
  • Ursprungspools definieren, die auf die VPC-Lastausgleichsfunktionen verweisen

Angepasste Domäne zu IBM Cloud Internet Services hinzufügen

Der erste Schritt besteht darin, eine Instanz von CIS zu erstellen und Ihre angepasste Domäne auf CIS-Namensserver zu verweisen.

  1. Wenn Sie keine eigene Domäne besitzen, können Sie eine bei einer Registrierungsstelle kaufen.

  2. Navigieren Sie zu IBM Cloud Internet Services im Katalog IBM Cloud.

  3. Wählen Sie einen Plan aus, legen Sie den Servicenamen und die Ressourcengruppe fest und klicken Sie auf Erstellen, um eine Instanz des Service zu erstellen.

  4. Wenn die Serviceinstanz bereitgestellt wurde, klicken Sie auf Domäne hinzufügen.

  5. Geben Sie Ihren Domänennamen ein und klicken Sie auf Weiter.

  6. Die Konfiguration Ihrer DNS-Datensätze in ein optionaler Schritt und kann bei diesem Lernprogramm übersprungen werden. Klicken Sie auf Weiter.

  7. Wenn die Namensserver zugeordnet sind, konfigurieren Sie Ihren Registrator oder Domänennamenprovider so, dass die aufgelisteten Namensserver verwendet werden.

  8. An diesem Punkt können Sie auf Abbrechen klicken, um zur Hauptseite zurückzukehren. Nachdem Sie Ihren Registrator oder den DNS-Provider konfiguriert haben, kann es bis zu 24 Stunden lang dauern, bis die Änderungen wirksam werden.

    Wenn sich der Domänenstatus auf der Übersichtsseite von Anstehend in Aktiv ändert, können Sie mit dem Befehl dig <your_domain_name> ns überprüfen, ob die neuen Namensserver wirksam wurden.

Statusprüfung für globale Lastausgleichsfunktion konfigurieren

Eine Statusprüfung hilft Ihnen dabei, Einblick in die Verfügbarkeit von Pools zu erhalten, damit der Datenverkehr an die Pools in einwandfreiem Zustand weitergeleitet werden kann. Diese Prüfungen senden regelmäßig HTTP/HTTPS-Anforderungen und überwachen die Antworten.

  1. Navigieren Sie im IBM Cloud Internet Services-Dashboard zu Zuverlässigkeit > Globale Lastausgleichsfunktionen.

  2. Wählen Sie Statusprüfungen aus und klicken Sie auf Erstellen.

  3. Name auf nginx setzen.

  4. Wählen Sie HTTP als Monitortyp aus.

  5. Setzen Sie Port auf 80.

  6. Pfad auf / setzen.

  7. Klicken Sie auf Erstellen.

    Wenn Sie Ihre eigenen Anwendungen erstellen, können Sie einen speziellen Zustandsendpunkt wie /health definieren, über den Sie den Zustand der Anwendung melden.

Ursprungspools definieren

Ein Pool ist eine Gruppe von Ursprungs-VSIs oder Load Balancern, an die der Datenverkehr auf intelligente Weise weitergeleitet wird, wenn sie an einen globalen Load Balancer angeschlossen sind. Mit VPC-Lastausgleichsfunktionen in zwei Regionen können Sie standortbezogene Pools definieren und CIS so konfigurieren, dass Benutzer abhängig vom Standort der Benutzeranforderungen an die nächstgelegene VPC-Lastausgleichsfunktion weitergeleitet werden.

Ursprungspool für die VPC-Lastausgleichsfunktion

  1. Wählen Sie die Option für Ursprungspools aus und klicken Sie auf Erstellen.
  2. Geben Sie einen Namen für den Pool ein: region-1-pool.
  3. Legen Sie den Ursprungsnamen auf region-1 fest.
  4. Setzen Sie Absenderadresse auf den Hostnamen der VPC-Lastausgleichsfunktion für region1. Sehen Sie sich die Übersichtsseite der VPC-Lastausgleichsfunktion an.
  5. Wählen Sie eine Vorhandene Statusprüfung und die zuvor erstellte Statusprüfung aus.
  6. Wählen Sie eine Region für Statusprüfung in der Nähe der Standortregion 1 aus.
  7. Klicken Sie auf Speichern.
  8. Wiederholen Sie die obigen Schritte für Region 2.

Erstellen Sie die globale Lastausgleichsfunktion

Wenn die ursprünglichen Pools definiert sind, können Sie die Konfiguration der Lastausgleichsfunktion abschließen.

  1. Wählen Sie die Option für Lastausgleichsfunktionen aus und klicken Sie auf Erstellen.

  2. Behalten Sie die Standardwerte Aktivieren: On und Proxy: Off bei.

  3. Geben Sie den Namen für den globalen Load Balancer ein, lb, dieser Name wird die Anfangsbuchstaben der Subdomain für den Zugriff auf die Anwendung sein.http://lb``<your_domain_name>).

  4. Klicken Sie auf Route hinzufügen.

  5. Wählen Sie Region: Default aus.

  6. Wählen Sie die soeben erstellten Ursprungspools aus, d. h. region-1-pool und region-2-pool.

  7. Klicken Sie auf Hinzufügen.

  8. Erweitern Sie den Abschnitt Geo-Routen, um den Datenverkehr basierend auf der Ursprungsregion zu verteilen.

    Sie können weitere Routen auf der Basis von Geografien und direktem Datenverkehr zum nächsten Pool hinzufügen. Klicken Sie auf Route hinzufügen, wählen Sie eine globale Load Balancer-Region, z. B. Westeuropa, und wählen Sie den gewünschten Pool, z. B. region-2-pool, und klicken Sie auf Hinzufügen. Wenn eine Anfrage mit keiner der definierten Routen übereinstimmt, wird sie an die Standard-Ursprungspools weitergeleitet. Benutzer in der von Ihnen definierten globalen Load Balancer-Region werden an die nächstgelegenen Load Balancer/VSIs weitergeleitet.

  9. Klicken Sie auf Erstellen.

Sicherheit mit HTTPS

Für die HTTPS-Verschlüsselung müssen signierte Zertifikate sowohl vom globalen Load Balancer CIS als auch von den VPC-Load Balancern zugänglich sein. Das IBM Cloud Secrets Manager wird verwendet, um das Zertifikat für Ihre Domain zu bestellen oder zu importieren und dann zu verwalten. Die Berechtigung für den IAM-Service (Identity and Access Management) wird dann so konfiguriert, dass Lesezugriff auf das Zertifikat des gewünschten Service ermöglicht wird.

Secrets Manager-Instanz erstellen und autorisieren

  1. Wenn Sie über eine vorhandene Secrets Manager-Instanz verfügen, können Sie sie für dieses Lernprogramm verwenden oder bei Bedarf eine neue erstellen, indem Sie die unter Secrets Manager-Serviceinstanz erstellen beschriebenen Schritte ausführen.

  2. Erstellen Sie eine Berechtigung, die dem VPC-Lastausgleichsservice Zugriff auf die Secrets Manager-Instanz gewährt, die das SSL-Zertifikat enthält.

    • Navigieren Sie zu Identitäts- und Zugriffsberechtigungen.
    • Klicken Sie auf Erstellen und wählen Sie VPC-Infrastrukturservices als Quellenservice aus.
    • Wählen Sie Bestimmte Ressourcen, Ressourcentyp und dann Lastausgleichsfunktion für VPC aus.
    • Secrets Manager als Zieldienst.
    • Ordnen Sie die Servicezugriffsrolle Schreibberechtigter zu.
    • Die Instanz des Zieldienstes kann "Alle Ressourcen" oder, falls gewünscht, Ihre spezifische Instanz Secrets Manager sein. Wählen Sie jetzt die Option Alle Ressourcen aus.
    • Klicken Sie auf Autorisieren.
  3. Erstellen Sie auf der Seite " Berechtigungen verwalten" eine Berechtigung, die dem Secrets Manager Zugriff auf CIS gibt:

    • Klicken Sie auf Erstellen und wählen Sie Secrets Manager als Quellenservice aus.
    • Wählen Sie Alle Ressourcen oder nur die zuvor erstellten Secrets Manager.
    • Internet-Services als Zielservice.
    • Wählen Sie Alle Ressourcen oder nur die zuvor erstellten CIS.
    • Weisen Sie die Servicezugriffsrolle Manager zu.
    • Klicken Sie auf Autorisieren.

    Wenn Ihre CIS-Instanz mehrere Domänen unterstützt, können Sie der CIS-Instanz auch die Rolle Leser und Manager der Domäne zuordnen, die Sie für Ihre Lösung verwenden. Weitere Informationen finden Sie im Abschnitt Servicezugriff auf bestimmte Domänen erteilen.

IBM CIS unterstützt das Proxying für globale Lastausgleichsfunktionen. Wenn eine Lastausgleichsfunktion als Proxy ausgeführt wird, bedeutet dies, dass ihr Datenverkehr direkt über CIS ausgeführt wird. Lastausgleichsfunktionen unterstützen sowohl den reinen DNS- als auch den HTTP-Proxy-Modus. Ziehen Sie in Betracht, welche der beiden folgenden Alternativen Ihrem Anwendungsfall am besten entsprechen, bevor Sie fortfahren, da sich das Verhalten der Datenverkehrsweiterleitung wie folgt unterscheidet:

  • Alternative 1: Datenverkehr, der über einen Proxy geleitet wird, fließt durch CIS.
  • Alternative 2: Datenverkehr ohne Proxy (nur DNS-Modus) fließt direkt vom Client zum Ursprung. Im reinen DNS-Modus werden keine der CIS, Leistungs- und Zuverlässigkeitsfunktionen angewendet.

Datenfluss
Datenfluss

Weitere Informationen finden Sie im Abschnitt Proxying für DNS-Datensätze und globale Lastausgleichsfunktionen.

Alternative 1: Proxy, Datenverkehr fließt durch CIS

Diese erste Alternative erstellt ein Wildcard-Zertifikat für eine benutzerdefinierte Domäne und stellt es dann im IBM Cloud Internet ServicesCIS), wodurch Sie die Vorteile der branchenführenden Sicherheits-, Schutz- und Leistungsfunktionen nutzen können. Ersetzen Sie example.com in den folgenden Schritten durch Ihren angepassten Domänennamen.

Wenn Sie derzeit Zertifikate bestellen, indem Sie Let's Encrypt verwenden, können Sie dem Abschnitt Unterstützte Zertifizierungsstellen für Aktualisierungen folgen. Für die Verwendung von Let's Encrypt ist ein ACME-Konto erforderlich. Befolgen Sie die Schritte, die im Thema Zertifizierungsstellen anderer Anbieter verbinden beschrieben sind, um Ihr Konto zu erstellen oder zu registrieren. Außerdem müssen Sie einen DNS-Provider hinzufügen, wie im Abschnitt DNS-Provider verbinden beschrieben. Für dieses Lernprogramm müssen Sie CIS als DNS-Provider hinzufügen.

Anfänglich wird HTTPS vom Benutzer nur für Secrets Manager konfiguriert.

  1. Zertifikat in Secrets Manager bestellen
    • Öffnen Sie den Secrets Manager-Service und wählen Sie links Geheime Schlüssel aus.
    • Klicken Sie auf Hinzufügen.
    • Wenn Sie eine neue Secrets Manager-Instanz verwenden, müssen Sie sie konfigurieren, bevor Sie Ihr Zertifikat bestellen. Führen Sie die unter Bestellung öffentlicher Zertifikate vorbereiten beschriebenen Schritte aus.
    • Klicken Sie auf Public certificate und anschließend auf Next.
    • Füllen Sie das Formular aus:
      • Name - Geben Sie einen Namen ein, den Sie sich merken können.
      • Beschreibung - Geben Sie eine Beschreibung Ihrer Wahl ein.
      • Klicken Sie auf Weiter.
      • Wählen Sie unter Zertifizierungsstelle Ihre konfigurierte Let's Encrypt- Zertifizierungsstellenengine aus.
      • Wählen Sie unter Schlüsselalgorithmus Ihren bevorzugten Algorithmus aus.
      • Bundlezertifikate - leer lassen
      • Automatische Zertifikatrotation - leer lassen
      • Wählen Sie unter DNS-Provider Ihre konfigurierte DNS-Providerinstanz aus.
      • Klicken Sie auf Domänen auswählen und kreuzen Sie Mit Platzhalterzeichen auswählen an, lassen Sie die Domäne selbst inaktiviert und klicken Sie dann auf Fertig.
    • Klicken Sie auf Weiter.
    • Überprüfen Sie Ihre Auswahl und klicken Sie auf Hinzufügen.
    • Sie müssen nicht warten, bis die Aktivierung abgeschlossen ist, um den nächsten Schritt auszuführen, aber Sie müssen warten, bis sie abgeschlossen ist, bevor Sie den Erfolg überprüfen.
  2. Konfigurieren Sie HTTPS von den Client-Web-Browsern zum CIS-Endpunkt. Konfigurieren Sie in CIS die TLS-Sicherheit:
    • Öffnen Sie die Anzeige Sicherheit und wählen Sie TLS aus.
    • Wählen Sie als Modus die Option Client-to-edge aus. Dies bewirkt die Beendigung der HTTPS-Verbindungen für die globale Lastausgleichsfunktion und den Wechsel zu HTTP-Verbindungen für die VPC-Lastausgleichsfunktion.
  3. Konfigurieren Sie in CIS die globale Lastausgleichsfunktion für die Verwendung von TLS:
    • Öffnen Sie die Anzeige Zuverlässigkeit und wählen Sie Globale Lastausgleichsfunktionen aus.
    • Suchen Sie die zuvor erstellte globale Lastausgleichsfunktion und aktivieren Sie den Proxy.
  4. Öffnen Sie in einem Browser https://lb.example.com, um den Erfolg zu überprüfen.

Konfigurieren Sie als nächsten Schritt HTTPS für die Verbindung zwischen CIS und der VPC-Lastausgleichsfunktion.

Fügen Sie einen HTTPS-Listener zu den VPC-Lastausgleichsfunktionen hinzu:

  1. Navigieren Sie zu VPC, dann Lastausgleichsfunktionen und klicken Sie auf vpc-lb-region1.

  2. Wählen Sie Front-End-Listener aus.

  3. Klicken Sie auf Listener erstellen.

  4. Wählen Sie Standard-Back-End-Pool: region1-pool oder region2-pool aus.

  5. Wählen Sie HTTPS und geben Sie für Port den Wert 443 ein.

  6. Wählen Sie die Secrets Manager-Instanz aus, die Sie zuvor erstellt haben. In der Dropdown-Liste für SSL-Zertifikate wird das Zertifikat Name angezeigt, das Sie zuvor über Ihre Secrets Manager - Instanz von Let's Encrypt bestellt haben. Klicken Sie auf Erstellen.

    Wenn die Dropdown-Liste für SSL-Zertifikate nicht example.com enthält, haben Sie möglicherweise den obigen Autorisierungsschritt übersehen, der dem VPC-Loadbalancer Zugriff auf den Dienst Secrets Manager gewährt. Überprüfen Sie, ob der Dienst Secrets Manager ein Zertifikat für example.com besitzt.

  7. Wiederholen Sie die obigen Schritte für die vpc-lb-region2-Lastausgleichsfunktion.

Das erstellte Wildcard-Zertifikat ermöglicht den Zugriff auf Domänennamen wie vpc-lb-region1 .example.com. Öffnen Sie die Registerkarte Übersicht des VPC Lastauchgleichsfunktion vpc-lb-region1 und beachten Sie, dass der Hostname 'xxxxxxx-REGION.lb.appdomain.cloud' lautet. Das Platzhalterzertifikat ist nicht funktionsfähig. Dieses Problem kann behoben werden, indem Sie einen Aliasnamen erstellen und anschließend die Konfiguration aktualisieren.

  1. Ein DNS CNAME-Eintrag kann erstellt werden, damit Clients nach vpc-lb-region1 .example.com suchen und xxxxxxx-REGION.lb.appdomain.cloud auflösen können.

    • Öffnen Sie im CIS die Anzeige Zuverlässigkeit und wählen Sie DNS aus.
    • Blättern Sie nach unten zu den DNS-Datensätzen und erstellen Sie einen Datensatz des Typs CNAME mit dem Namen vpc-lb-region1, der TTL-Einstellung Automatisch und dem Aliasdomänennamen VPC load balancer Hostname.
    • Fügen Sie einen DNS-CNAME-Datensatz für vpc-lb-region2 hinzu.
  2. Passen Sie nun die globale Lastausgleichsfunktion an, um die neuen CNAME-Datensätze zu verwenden.

    • Öffnen Sie die Anzeige Zuverlässigkeit und wählen Sie Globale Lastausgleichsfunktionen aus.
    • Find and edit the Herkunft Pools to change the Ursprünge Herkunft Adresse to vpc-lb-region1.example.com.
    • Wiederholen Sie die obigen Schritte für vpc-lb-region2.example.com.
  3. Aktivieren Sie End-to-End-Sicherheit.

    • Öffnen Sie die Anzeige Sicherheit und wählen Sie TLS aus.
    • Wählen Sie als Modus die Option für End-to-end-CA (signiert) aus. Dabei werden HTTPS-Verbindungen zum globalen Load Balancer und HTTPS-Verbindungen zum VPC Load Balancer verwendet.

Öffnen Sie in einem Browser https://lb.example.com, um den Erfolg zu überprüfen

Alternative 2: Reiner DNS-Modus, Datenverkehr fließt direkt vom Client zu den VPC-Lastausgleichsfunktionen

Bei dieser Alternative bestellen Sie ein SSL-Zertifikat für lb.example.com von Let's Encrypt über Secrets Manager und konfigurieren die globale Lastausgleichsfunktion.

Es ist momentan nicht möglich, ein Zertifikat direkt für eine globale Lastausgleichsfunktion für CIS zu bestellen. Es ist aber möglich, eine Lastausgleichsfunktion für einen NAME-Eintrag (CNAME) zu bestellen. Daher wird ein CNAME erstellt, um das Zertifikat zu bestellen.

  1. Öffnen Sie den zuvor erstellten CIS-Service. Sie finden ihn in der Ressourcenliste

  2. Navigieren Sie unter Zuverlässigkeit zu Globale Lastausgleichsfunktionen und klicken Sie auf DNS.

  3. Blättern Sie abwärts zum Abschnitt "DNS-Datensätze" und erstellen Sie einen neuen Datensatz:

    • Typ: CNAME
    • Name: lb
    • TTL: default (Automatic)
    • Aliasdomänenname: zzz.example.com
    • Klicken Sie auf Datensatz hinzufügen.
  4. Zertifikat in Secrets Manager bestellen

    • Öffnen Sie den Secrets Manager-Service und wählen Sie links Geheime Schlüssel aus.
    • Klicken Sie auf Add und anschließend auf Public certificate. Klicken Sie auf Weiter.
    • Füllen Sie das Formular aus:
      • Name - lb-alias.
      • Beschreibung - Geben Sie eine Beschreibung Ihrer Wahl ein.
      • Klicken Sie auf Weiter.
      • Wählen Sie unter Zertifizierungsstelle Ihre konfigurierte Let's Encrypt- Zertifizierungsstellenengine aus.
      • Wählen Sie unter Schlüsselalgorithmus select RSA4096 aus.
      • Bundlezertifikate - leer lassen
      • Automatische Zertifikatrotation - leer lassen
      • Wählen Sie unter DNS-Provider Ihre konfigurierte DNS-Providerinstanz aus.
      • Klicken Sie auf Domänen auswählen
      • Erweitern Sie die aufgelistete Domäne, um die Liste der Subdomänen anzuzeigen, aktivieren Sie das Kontrollkästchen neben lb.example.com und klicken Sie auf " Fertig".
    • Klicken Sie auf Weiter.
    • Überprüfen Sie Ihre Auswahl und klicken Sie auf Hinzufügen.

Erstellen Sie einen HTTPS-Listener:

  1. Navigieren Sie zu der Seite mit den VPC-Lastausgleichsfunktionen.

  2. Wählen Sie vpc-lb-region1 aus.

  3. Klicken Sie unter Front-End-Listener auf Erstellen.

    • Protokoll: HTTPS
    • Port: 443
    • Back-End-Pool: POOL in derselben Region
    • Wählen Sie die aktuelle Region als Ihre SSL-Region aus.
    • Wählen Sie den SSL-Zertifikatsauftragsnamen, den Sie gerade für lb.example.com erstellt haben
  4. Klicken Sie auf Speichern, um einen HTTPS-Listener zu konfigurieren.

Wiederholen Sie die obigen Schritte in der Lastausgleichsfunktion von Region 2.

Öffnen Sie in einem Browser lb.example.com, um den Erfolg zu überprüfen

Failovertest

Sie sollten jetzt gesehen haben, dass Sie die meiste Zeit auf die Server in Region 1 zugreifen, da ihnen im Vergleich zu den Servern in Region 2 eine höhere Wertigkeit zugeordnet ist. Einführung eines Fehlers bei der Statusprüfung im Ursprungspool der Region 1.

  1. Navigieren Sie zur Liste Virtuelle Serverinstanzen.

  2. Klicken Sie auf die drei Punkte (...) neben dem Server oder neben den Servern, die in zone 1 von region 1 ausgeführt werden, und klicken Sie auf Stoppen.

  3. Wiederholen Sie dies für Server, die in Zone 2 von Region 1 aktiv sind.

  4. Kehren Sie zu CIS (GLB) unter 'CIS-Service' zurück und warten Sie, bis sich der Status der Statusprüfung in Kritisch ändert.

  5. Wenn Sie jetzt Ihre Domänen-URL aktualisieren, sollten Sie immer auf den Servern in region 2 landen.

    Vergessen Sie nicht, die Server in Zone 1 und Zone 2 von Region 1 zu starten.

Ressourcen entfernen

  • Entfernen Sie die globale Lastausgleichsfunktion, die Ursprungspools und die Statusprüfungen unter dem CIS-Service.
  • Entfernen Sie die Zertifikate im Secrets Manager-Service.
  • Entfernen Sie die Lastausgleichsfunktionen, VSIs, Teilnetze und VPCs.
  • Löschen Sie in der Ressourcenliste die Services, die in diesem Lernprogramm verwendet wurden.