Bereitstellen einer Anwendung aus dem Google Cloud Console Marketplace
In diesem Abschnitt wird detailliert beschrieben, wie Sie mithilfe der Google Cloud Console eine Anwendung in Ihrem Anthos GKE-Cluster vor Ort bereitstellen.
Voraussetzungen
-
Ein vor Ort bereitgestellter und bei der Google Cloud Console registrierter Anthos-Cluster
-
Ein in Ihrem Anthos-Cluster konfigurierter MetalLB-Load Balancer
-
Ein Konto mit Berechtigungen zum Bereitstellen von Anwendungen im Cluster
-
Ein Abrechnungskonto bei Google Cloud, wenn Sie eine kostenpflichtige Anwendung wählen (optional)
Bereitstellen einer Anwendung
Für diesen Anwendungsfall stellen wir mithilfe der Google Cloud Console eine einfache WordPress-Anwendung auf einem unserer Anthos-Cluster bereit. Die Bereitstellung verwendet persistenten Speicher, der von NetApp ONTAP in einer vordefinierten Speicherklasse bereitgestellt wird. Anschließend demonstrieren wir zwei verschiedene Methoden zum Ändern des Standarddienstes der Anwendung, sodass der MetalLB-Lastenausgleich ihr eine IP-Adresse zuweist und sie der Welt zugänglich macht.
Um eine Anwendung auf diese Weise bereitzustellen, führen Sie die folgenden Schritte aus:
-
Stellen Sie sicher, dass der Cluster, in dem Sie bereitstellen möchten, in der Google Cloud Console zugänglich ist.
-
Wählen Sie im Menü auf der linken Seite „Anwendungen“, wählen Sie oben das Optionsmenü mit den drei Punkten und wählen Sie „Vom Marketplace bereitstellen“. Daraufhin wird ein neues Fenster geöffnet, in dem Sie eine Anwendung vom Google Cloud Marketplace auswählen können.
-
Suchen Sie nach der Anwendung, die Sie installieren möchten, in diesem Fall WordPress.
-
Nachdem Sie die WordPress-Anwendung ausgewählt haben, wird ein Übersichtsbildschirm angezeigt. Klicken Sie auf die Schaltfläche Konfigurieren.
-
Auf der nächsten Seite müssen Sie den Cluster auswählen, in dem die Bereitstellung erfolgen soll, in unserem Fall Demo-Cluster. Wählen oder erstellen Sie einen neuen Namespace und Anwendungsinstanznamen und wählen Sie aus, welche Speicherklassen und persistenten Volumegrößen Sie sowohl für die WordPress-Anwendung als auch für die zugrunde liegende MariaDB-Datenbank benötigen. In beiden Fällen haben wir uns für die Speicherklasse ONTAP-NAS-CSI entschieden.
Wählen Sie „Öffentlichen IP-Zugriff aktivieren“ nicht aus. Dadurch wird ein Dienst vom Typ NodePort erstellt, auf den von einer lokalen Anthos-Bereitstellung aus nicht zugegriffen werden kann. -
Nachdem Sie auf die Schaltfläche „Bereitstellen“ geklickt haben, wird eine Seite mit Anwendungsdetails angezeigt. Sie können diese Seite aktualisieren oder sich über die CLI bei Ihrem Cluster anmelden, um den Status der Bereitstellung zu überprüfen.
-
Mit der CLI können Sie den Status der Anwendung während der Bereitstellung überprüfen, indem Sie den Befehl zum Abrufen von Pod-Informationen in unserem Anwendungsnamespace ausführen:
kubectl get pods -n anthos-wp
.Beachten Sie in diesem Screenshot, dass sich ein Deployer-Pod in einem Fehlerzustand befindet. Das ist normal. Dieser Pod ist ein Hilfspod, der von der Google Cloud Console zum Bereitstellen der Anwendung verwendet wird und sich selbst beendet, nachdem die anderen Pods mit ihrem Initialisierungsprozess begonnen haben. -
Überprüfen Sie nach einigen Augenblicken, ob Ihre Anwendung ausgeführt wird.
Verfügbarmachen der Anwendung
Nachdem die Anwendung bereitgestellt wurde, haben Sie zwei Möglichkeiten, ihr eine weltweit erreichbare IP zuzuweisen.
Verwenden der Google Cloud Console
Sie können die Anwendung verfügbar machen, indem Sie die Google Cloud Console verwenden und die YAML-Ausgabe für die Dienste in einem Browser bearbeiten, um eine öffentlich erreichbare IP festzulegen. Führen Sie dazu die folgenden Schritte aus:
-
Klicken Sie in der Google Cloud Console im linken Menü auf „Dienste und Ingress“.
-
Klicken Sie auf das
wordpress-wordpress-svc
Service. Dadurch wird der Bildschirm „Servicedetails“ geöffnet. Klicken Sie oben auf die Schaltfläche „Bearbeiten“. -
Die Seite „Dienstdetails bearbeiten“ wird geöffnet und enthält die YAML-Informationen für den Dienst. Scrollen Sie nach unten, bis Sie das
spec:
Abschnitt und dietype:
Wert, der aufClusterIP
. Ändern Sie diesen Wert inLoadBalancer
und klicken Sie auf die Schaltfläche Speichern. -
Wenn Sie zur Seite „Servicedetails“ zurückkehren, wird die
Type:
listet jetztLoadBalancer
und dieExternal endpoints:
Das Feld listet eine zugewiesene IP-Adresse aus dem MetalLB-Pool und den Port auf, über den auf die Anwendung zugegriffen werden kann.
Patchen des Dienstes mit Kubectl
Sie können die Anwendung mithilfe der CLI und der kubectl patch
Befehl, um Ihre Bereitstellung zu ändern und eine öffentlich erreichbare IP festzulegen. Führen Sie dazu die folgenden Schritte aus:
-
Listen Sie die mit den Pods in Ihrem Namespace verknüpften Dienste mit dem
kubectl get services -n anthos-wp
Befehl. -
Ändern Sie den Diensttyp von
ClusterIP
tippenLoadbalancer
mit dem folgenden Befehl:kubectl patch svc wordpress-wordpress-svc -p '{"spec": {"type": "LoadBalancer"}}' -n anthos-wp'.
Diesem neuen Diensttyp wird automatisch eine verfügbare IP-Adresse aus dem MetalLB-Pool zugewiesen.
Besuchen Sie die Anwendung unter der freigegebenen externen IP
Nachdem Sie die Anwendung nun mit einer öffentlich erreichbaren IP-Adresse verfügbar gemacht haben, können Sie Ihre WordPress-Instanz über einen Browser aufrufen.