Implementieren Sie eine Applikation über den Google Cloud Console Marketplace
In diesem Abschnitt wird beschrieben, wie Sie eine Applikation mithilfe der Google Cloud Console On-Premises in Ihrem Anthos GKE Cluster implementieren.
Voraussetzungen
-
Ein Anthos Cluster kann lokal implementiert und bei der Google Cloud Console registriert werden
-
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 Anwendung mit den damit verbundenen Kosten auswählen (optional)
Implementieren einer Applikation
Für diesen Anwendungsfall stellen wir mit der Google Cloud Console eine einfache WordPress-Anwendung auf einen unserer Anthos-Cluster bereit. Bei der Implementierung wird persistenter Storage verwendet, der von NetApp ONTAP in einer vordefinierten storageclass bereitgestellt wird. Wir demonstrieren dann zwei verschiedene Methoden, um den Standardservice für Anwendungen so zu ändern, dass der MetalLB Load Balancer ihn mit einer IP-Adresse versorgt und der Welt zugänglich macht.
Um eine Anwendung auf diese Weise bereitzustellen, führen Sie folgende Schritte aus:
-
Vergewissern Sie sich, dass der zu implementierende Cluster in der Google Cloud Console verfügbar ist.
-
Wählen Sie im linken Menü die Option Anwendungen aus, wählen Sie oben das Optionsmenü mit drei Punkten aus, und wählen Sie aus dem Marketplace die Option Bereitstellen aus. Dort wird ein neues Fenster geöffnet, in dem Sie eine Anwendung aus dem 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 in unserem Fall Demo-Cluster den zu implementierenden Cluster auswählen. Wählen oder erstellen Sie einen neuen Namespace und einen Namen für die Anwendungsinstanz, und wählen Sie aus, welche Storage-Klassen und persistente Volume-Größen Sie sowohl für die WordPress-Anwendung als auch für die von MariaDB unterstützten Datenbank benötigen. In beiden Fällen haben wir uns für die Storage-Klasse ONTAP-NAS-CSI entschieden.
Wählen Sie keinen öffentlichen IP-Zugriff aktivieren aus. Dadurch wird ein Service vom Typ NodePort erstellt, der von einer lokalen Anthos-Implementierung nicht zugänglich ist. -
Nachdem Sie auf die Schaltfläche Bereitstellen geklickt haben, erhalten Sie eine Seite mit Anwendungsdetails. Sie können diese Seite aktualisieren oder sich mithilfe der CLI beim Cluster anmelden, um den Status der Bereitstellung zu überprüfen.
-
Die CLI kann dazu verwendet werden, den Status der Applikation während ihrer Bereitstellung zu überprüfen, indem der Befehl zum Abrufen von POD-Informationen in unserem Applikations-Namespace ausgeführt wird:
kubectl get pods -n anthos-wp
.Beachten Sie in diesem Screenshot, dass ein Pod im Fehlerzustand vorhanden ist. Dies ist normal. Dieser POD ist ein Helfer-Pod, der von der Google Cloud Console verwendet wird, um die Anwendung bereitzustellen, die selbst beendet wird, wenn die anderen Pods ihren Initialisierungsprozess begonnen haben. -
Stellen Sie nach wenigen Augenblicken sicher, dass Ihre Anwendung ausgeführt wird.
Die Anwendung offenlegen
Nach der Bereitstellung der Anwendung stehen Ihnen zwei Methoden zur Verfügung, um ihr eine weltweit erreichbare IP zuzuweisen.
Verwenden der Google Cloud Console
Sie können die Anwendung über die Google Cloud Console anzeigen und die YAML-Ausgabe für die Dienste in einem Browser bearbeiten, um eine öffentlich zugängliche IP festzulegen. Um das zu tun, führen Sie folgende Schritte aus:
-
Klicken Sie in der Google Cloud Console im linken Menü auf Services und Ingress.
-
Klicken Sie auf das
wordpress-wordpress-svc
Service: Daraufhin wird der Bildschirm Servicedetails geöffnet. Klicken Sie oben auf die Schaltfläche Bearbeiten. -
Die Seite „Service-Details bearbeiten“ wird geöffnet, die die YAML-Informationen für den Dienst enthält. Scrollen Sie nach unten, bis Sie das sehen
spec:
Und dertype:
Wert, der auf festgelegt istClusterIP
. Ändern Sie diesen Wert inLoadBalancer
Und klicken Sie auf die Schaltfläche Speichern. -
Wenn Sie zur Seite Service-Details zurückkehren, wird die angezeigt
Type:
Now-ListenLoadBalancer
Und dasExternal endpoints:
Feld zeigt eine zugewiesene IP-Adresse aus dem MetalLB-Pool und den Port an, über den die Anwendung zugänglich ist.
Patching the Service with kubectl
Sie können die Anwendung über die CLI und die freigeben kubectl patch
Befehl zum Ändern der Bereitstellung und Festlegen einer öffentlich zugänglichen IP. Um das zu tun, führen Sie folgende Schritte aus:
-
Führen Sie die Services an, die mit den Pods in Ihrem Namespace mit dem verbunden sind
kubectl get services -n anthos-wp
Befehl. -
Ändern Sie den Servicetyp von
ClusterIP
Nach TypLoadbalancer
Verwenden des folgenden Befehls:kubectl patch svc wordpress-wordpress-svc -p '{"spec": {"type": "LoadBalancer"}}' -n anthos-wp'.
Diesem neuen Servicetyp wird automatisch eine verfügbare IP-Adresse aus dem MetalLB-Pool zugewiesen.
Besuchen Sie die Anwendung an der freiliegenden externen IP
Nun, da Sie die Anwendung mit einer öffentlich zugänglichen IP-Adresse ausgesetzt haben, können Sie Ihre WordPress-Instanz mit einem Browser besuchen.