Anwendung über eine IDE bereitstellen und aktualisieren


Wenn Sie Anwendungen zur Ausführung in Google Kubernetes Engine entwickeln, können Sie eine IDE und das Cloud Code-Plug-in verwenden, um wichtige Entwicklungsaufgaben wie das lokale Testen und Debuggen sowie die Bereitstellung für einen Test zu vereinfachen. Cluster.

Lernziele

Es wird hier gezeigt, wie Sie die folgenden Entwicklungsaufgaben im Cloud Shell-Editor, einer Online-Demo-IDE, ausführen:

  1. Kubernetes-Beispielanwendung erstellen.

  2. Führen Sie Logs für die Anwendung in Ihrer lokalen Umgebung aus und aktualisieren und rufen sie auf.

  3. Anwendung in einem GKE-Cluster bereitstellen.

Sie können einen vergleichbaren Prozess in Ihrer eigenen IDE ausführen, wenn Sie Cloud Code installieren.


Klicken Sie auf Anleitung, um eine detaillierte Anleitung für diese Aufgabe direkt in der Google Cloud Console aufzurufen.

Anleitung


Kosten

In diesem Dokument verwenden Sie die folgenden kostenpflichtigen Komponenten von Google Cloud:

Mit dem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung vornehmen. Neuen Google Cloud-Nutzern steht möglicherweise eine kostenlose Testversion zur Verfügung.

Nach Abschluss der in diesem Dokument beschriebenen Aufgaben können Sie weitere Kosten vermeiden, indem Sie die erstellten Ressourcen löschen. Weitere Informationen finden Sie unter Bereinigen.

Hinweise

Kubernetes-Cluster erstellen Cluster erstellen und Arbeitslast bereitstellen

Google Cloud-Projekt und -Cluster auswählen

Wenn Sie Ihre Anwendung später in dieser Anleitung in GKE bereitstellen, müssen Sie ein Google Cloud-Projekt und einen GKE-Cluster angeben.

  1. Zur GKE-Clusterseite.

    Zu den Clustern

  2. Wählen Sie ein Projekt aus, das einen GKE-Cluster enthält.

  3. Notieren Sie sich den Namen des Projekts und des Clusters.

    Sie benötigen diese Informationen später.

Anwendung im Cloud Shell-Editor erstellen

  1. Öffnen Sie Cloud Shell in der Google Cloud Console. Klicken Sie dazu in der Taskleiste auf Cloud Shell.

  2. Klicken Sie auf Editor öffnen.

  3. Warten Sie, bis der Cloud Shell-Editor initialisiert wurde.

  4. Klicken Sie im Cloud Shell-Editor auf Ansicht > Befehlspalette.

  5. Suchen Sie nach Cloud Code: Neue Anwendung und klicken Sie darauf.

  6. Wählen Sie Kubernetes-Anwendung und dann Go: Hello World aus.

    Jedes Sprach-Framework bietet ein wenig andere Features. In dieser Anleitung werden die für Go verfügbaren Features erläutert.

  7. Klicken Sie im Dialogfeld „Speichern“ auf Neue Anwendung erstellen.

    Der Cloud Shell-Editor wird aktualisiert und die Quelldateien der Anwendung werden in der Explorer-Ansicht angezeigt.

Die Anwendung besteht aus:

  • Einer einfachen go-hello-world-Webanwendung (main.go), die die Vorlagenantwort „It's running!“ an alle eingehenden Anfragen zurückgibt.

  • Eine Kubernetes-Deployment-Spezifikation: hello.deployment.yaml.

  • Eine Kubernetes-Dienstspezifikation, die einen Load Balancer für die Anwendung hello.service.yaml definiert.

  • Eine Skaffold-Datei, die den Workflow für die Erstellung und das Deployment der Anwendung skaffold.yaml steuert.

Führen Sie die Anwendung in Ihrer Entwicklungsumgebung aus.

Führen Sie Anwendungen nach Möglichkeit in Ihrer lokalen Umgebung aus, bevor Sie sie in GKE bereitstellen. Sie können so mögliche Probleme ermitteln, ohne das Google Cloud-Kontingent in Anspruch zu nehmen.

So führen Sie die Anwendung in der Cloud Shell-Editor-Umgebung aus:

  1. Klicken Sie im Cloud Shell-Editor auf Terminal > Neues Terminal.

  2. Starten Sie einen Cluster mit folgendem Befehl:

    minikube start
    

    minikube ist eine einfache Kubernetes-Implementierung, die eine VM in Ihrer lokalen Umgebung erstellt sowie einen einfachen Cluster mit nur einem Knoten bereitstellt.

    Es kann einen Moment dauern, bis der minikube-Cluster eingerichtet ist.

  3. Wenn Sie zur Autorisierung von Cloud Shell aufgefordert werden, um Cloud API-Anrufe auszuführen, klicken Sie auf Autorisieren.

    Wenn der minikube-Cluster eingerichtet ist, wird eine Meldung wie die folgende angezeigt:

    Done! kubectl is now configured to
    use "minikube" cluster...
    

Erstellen Sie nach der Einrichtung von minikube Ihre Anwendung und führen Sie sie aus:

  1. Klicken Sie in der Statusleiste des Cloud Shell-Editors auf Cloud Code.

  2. Wählen Sie Auf Kubernetes ausführen aus.

  3. Wenn Sie dazu aufgefordert werden, bestätigen Sie, dass Sie den aktuellen minikube-Kontext verwenden möchten.

    Der Cloud Shell-Editor erstellt Ihre Anwendung und stellt sie im Minikube-Cluster bereit.

  4. Prüfen Sie den Deployment-Status in der Ansicht Development Sessions.

    Wenn das Deployment abgeschlossen ist, wird neben Portforward URLs ein grünes Häkchen angezeigt. Das sich drehende Symbol wird neben Stream Application Logs dargestellt.

  5. Gehen Sie zur Anzeige Ihrer Anwendung zum Bereich Development Sessions und suchen Sie nach Portforward URLs > Dienst.

  6. Bewegen Sie den Mauszeiger auf go-hello-world-external und klicken Sie auf URL öffnen.

Anwendung bearbeiten

Wenn Sie eine Quelldatei in Ihrer Anwendung ändern, erstellt der Cloud Shell-Editor die Anwendung automatisch neu und stellt sie in dem Cluster bereit, mit dem Sie derzeit verbunden sind. In diesem Fall sind Sie mit dem minikube-Cluster verbunden.

So bearbeiten Sie die Anwendung und stellen sie noch einmal im lokalen minikube-Cluster bereit:

  1. Ändern Sie die Datei main.go so, dass sie „It's redeployed!“ ausgibt. Die Datei wird automatisch gespeichert.

  2. Rufen Sie die Ansicht Development Sessions auf, wenn Ihre Anwendung neu erstellt und bereitgestellt wird.

  3. Sehen Sie sich die neu bereitgestellte Anwendung wie zuvor an:

    1. Suchen Sie im Bereich Development Sessions die Option Port Forward URLs > Dienst.

    2. Bewegen Sie den Mauszeiger auf go-hello-world-external und klicken Sie auf URL öffnen.

Anwendungslogs ansehen

  1. Wählen Sie in der Menüleiste des Cloud Shell-Editors Ansicht > Befehlspalette aus.

  2. Suchen Sie nach Cloud Code: Logs ansehen und klicken Sie darauf.

    Die Loganzeige wird geöffnet.

  3. Wählen Sie unter Deployment die Option go-hello-world aus.

    Dadurch wird die Loganzeige so gefiltert, dass nur Logs für die Anwendung go-hello-world angezeigt werden.

  4. Wechseln Sie zum Tab Ihrer Anwendung, auf dem „It's redeployed!“ angezeigt wird. Aktualisieren Sie die Seite im Browser und wechseln Sie dann wieder zum Tab „Cloud Shell“.

  5. Zum Aufrufen der neu generierten Logs in der Loganzeige klicken Sie auf Aktualisieren.

Anwendung in einem GKE-Cluster bereitstellen

  1. Fügen Sie den GKE-Cluster der Liste der Cluster hinzu, auf denen bereitgestellt werden kann:

    1. Klicken Sie in der Ansicht Kubernetes auf KubeConfig ein Cluster hinzufügen.

    2. Klicken Sie im Dialogfeld Plattform auswählen auf Google Kubernetes Engine.

    3. Wenn Sie aufgefordert werden, die Google Cloud API zu aktivieren, klicken Sie auf Ja.

    4. Warten Sie, bis der Cloud Shell-Editor die Cluster in Ihrem Google Cloud-Projekt gefunden hat.

    5. Wählen Sie im Dialogfeld GKE-Cluster erstellen oder auswählen den Namen des von Ihnen erstellten Clusters aus, hello-world-cluster.

  2. Klicken Sie in der Statusleiste des Cloud Shell-Editors auf Cloud Code und wählen Sie Auf Kubernetes ausführen aus.

  3. Wenn Sie aufgefordert werden, einen Kontext für Ihre Deployment-Anfrage auszuwählen, wählen Sie Aktuellen Kontext verwenden aus. Dieser ist auf Ihren GKE-Cluster festgelegt.

  4. Wählen Sie im Dialogfeld Image-Repository auswählen die Option gcr.io/PROJECT_NAME aus.

    Im Cloud Shell-Editor wird Ihre Anwendung in einem Container erstellt und der Container im ausgewählten Repository gespeichert.

  5. Rufen Sie die Ansicht Development Sessions auf, wenn Ihre Anwendung neu erstellt und bereitgestellt wird.

  6. Zur Anzeige detaillierter Logmeldungen für das Deployment Ihrer Anwendung in GKE klicken Sie in der Ansicht Development Sessions auf den Knoten Im Cluster bereitstellen.

  7. So sehen Sie sich die ausgeführte App an:

    1. Schließen Sie die Ansicht. Klicken Sie dazu auf die Überschrift Development Sessions.

    2. Öffnen Sie die Ansicht Kubernetes.

    3. Maximieren Sie den GKE-Cluster.

    4. Gehen Sie zu Namespaces > Standard > Dienste > go-hello-world-external > Externe IP-Adressen.

    5. Bewegen Sie den Mauszeiger auf die IP-Adresse und klicken Sie auf URL öffnen.

Sie haben nun eine GKE-Anwendung über eine IDE erstellt und bereitgestellt.

Nächste Schritte