Anleitung: Dienste mit GKE Enterprise verwalten


Anthos Service Mesh bietet GKE Enterprise-Nutzern Tools zum Überwachen und Verwalten zuverlässiger, mikrodienstbasierter Anwendungen. In dieser Anleitung wird die Beispielbereitstellung der Bank of Anthos in Google Cloud verwendet, um Ihnen einige der Dienstverwaltungsfeatures von Anthos Service Mesh durch die Definition eines Service Level Objective (SLO) vorzustellen. Im Beispiel wird eine echte GKE Enterprise-Umgebung mit einem GKE-Cluster, Service Mesh und einer Bank of Anthos-Anwendung mit mehreren Mikrodiensten bereitgestellt.

Was ist ein SLO?

Gemäß dem SRE-Buch (Site Reliability Engineering) von Google:

Es ist unmöglich, einen Dienst richtig zu verwalten, ohne zu verstehen, welche Verhaltensweisen für diesen Dienst wirklich von Bedeutung sind und wie sie gemessen und bewertet werden. Aus diesem Grund möchten wir für unsere Nutzer ein bestimmtes Service-Level definieren und gewährleisten. Dabei spielt es keine Rolle, ob sie eine interne API oder ein öffentliches Produkt verwenden.

Google SRE-Teams verwenden Service Level Indicators (SLIs), Service Level Objectives (SLOs) und Service Level Agreements (SLAs), um die Messwerte für ihre Arbeit zu strukturieren und zu steuern. Ein SLI ist ein quantitativer Messwert für die Leistung Ihres Dienstes, z. B. seine Latenz oder Verfügbarkeit, während ein SLO ein Zielwert ist (dieser sollte x% der Zeit betragen) der Dienstebene), die von einem SLI gemessen wird. Mit Anthos Service Mesh können Sie SLOs für Ihre eigenen Dienste einfach definieren und optimieren. Sie erhalten die Informationen, die Sie benötigen, um entsprechende SLIs und SLOs zu identifizieren, und werden benachrichtigt, wenn Ihr Dienst seine SLOs nicht erfüllt.

Weitere Informationen zu SLOs und SLIs in Anthos Service Mesh finden Sie in der SLO-Übersicht und unter SLOs entwerfen.

Lernziele

In dieser Anleitung erhalten Sie eine Einführung in die Verwaltung von Diensten mit Anthos Service Mesh in GKE Enterprise anhand der folgenden Aufgaben:

  • Service Level Indicator (SLI) für einen Dienst identifizieren

  • Mit einem Service Level Objective (SLO) auf unerwartetes Verhalten überwachen.

Kosten

Für die Bereitstellung der Bank of Anthos-Anwendung fallen „Pay as you go“-Gebühren für GKE Enterprise in Google Cloud an, wie auf unserer Preisseite aufgeführt, es sei denn, Sie haben bereits ein Abo erworben.

Außerdem müssen Sie für andere Google Cloud-Kosten verantwortlich sein, die beim Ausführen der Bank of Anthos-Anwendung anfallen, z. B. Gebühren für Compute Engine-VMs und Load-Balancer.

Wir empfehlen, nach Abschluss der Anleitung ein Clean-up durchzuführen, um weitere Kosten zu vermeiden.

Hinweise

Diese Anleitung ist eine Ergänzung zur Anleitung zu GKE Enterprise. Bevor Sie mit dieser Anleitung beginnen, folgen Sie der Anleitung auf dieser Seite, um Ihr Projekt einzurichten und Bank of Anthos bereitzustellen.

SLIs identifizieren

Anthos Service Mesh macht das Sammeln von SLIs und das Definieren Ihrer SLOs einfach. In diesem Beispiel beschließen Sie, zuerst ein SLO für den ledgerwriter-Dienst der Bank of Anthos zu definieren.

Ermitteln Sie zuerst mit Anthos Service Mesh Informationen, die Sie zur Identifizierung eines SLI für den Dienst nutzen können.

  1. Rufen Sie die Seite Anthos Service Mesh in dem Projekt auf, in dem Sie Bank of Anthos installiert haben.

    Zur Seite "Anthos Service Mesh"

    Der obere Teil dieser Ansicht zeigt den aktuellen Status der Dienste Ihrer Anwendung sowie die Benachrichtigungsanzeige und SLOs, einschließlich der Anzahl der Dienste ohne SLOs. Derzeit sind alle Dienste unterKeine SLOs festgelegt, um die Option zu aktivieren. Darüber hinaus haben in der Spalte Status alle Dienste eine schwarze Kreisanzeige. Wenn Sie den Mauszeiger über diesen Indikator für einen Dienst halten, werden Sie darüber informiert, dass für den Dienst kein SLO festgelegt ist.

  2. Beachten Sie den Wert in ms für 99% Latenz für ledgerwriter. Möglicherweise müssen Sie nach unten scrollen, um ihn zu sehen. Dieser Messwert bedeutet, dass bei jeder 100. Anfrage diese Verzögerung auftritt. Sie benötigen diesen Wert im nächsten Abschnitt.

SLO erstellen

Erstellen Sie nun ein SLO für einen Latenz-SLI für den Dienst. Um zu sehen, was passiert, wenn ein Dienst das Fehlerbudget überschreitet, können Sie einen Grenzwert festlegen, der aufgrund der Informationen aus dem vorherigen Abschnitt eindeutig gering ist. Bei einem echten Produktionsdienst würden Sie versuchen, einen Schwellenwert für den Latenzwert festzulegen, der nicht niedriger als erforderlich ist, damit die Nutzer eine gute Erfahrung mit Ihrer Anwendung erreichen.

  1. Klicken Sie in der Tabellenansicht von Anthos Service Mesh auf ledgerwriter, um zur Seite mit der Dienstübersicht zu gelangen.

  2. Klicken Sie unter Dienststatus auf SLO erstellen.

  3. Wählen Sie in der Liste SLI-Typ die Option Latenz aus.

  4. Behalten Sie die Standardmethode Anfragebasierte Bewertung bei und klicken Sie auf Weiter.

  5. Setzen Sie den Latenzgrenzwert auf einen beliebig niedrigen Wert, z. B. 10 ms (etwas niedriger als der Wert von 99% Latenz, den Sie zuvor gesehen haben), und klicken Sie noch einmal auf Weiter.

  6. Legen Sie im Compliance-Zeitraum für Zeitraumtyp den Wert Rolling und für Zeitraumlänge den Wert 1 Day fest.

  7. Legen Sie unter SLO-Ziel das Compliance-Ziel auf 90% fest. Anthos Service Mesh berechnet anhand dieses Werts das Fehlerbudget, das Sie für dieses SLO haben. Das heißt, der maximale Prozentsatz der Anfragen, die den angegebenen Latenzschwellenwert überschreiten sollten. In einer Vorschau sehen Sie, welche Leistung das SLO im letzten Tag bisher erzielt hätte. Klicken Sie auf Weiter.

  8. Im Abschnitt SLO benennen finden Sie einen Standardnamen für das neue SLO: Sie können den empfohlenen Standardwert übernehmen oder einen neuen Namen angeben. Klicken Sie zum Erstellen des SLO und zur Weiterleitung zur Seite Health (Systemdiagnose) für ledgerwriter auf Create SLO.

Klicken Sie auf den Drop-down-Pfeil, um weitere Details zum SLO anzuzeigen. Das SLO sollte nun dem Out of Error Budget entsprechen, das von Ihren Einstellungen abhängt. Sie können das SLO auch in dieser Ansicht bearbeiten oder löschen.

Screenshot der Systemdiagnose des Anthos Service Mesh

SLO und Benachrichtigungsindikatoren noch einmal prüfen

  1. Klicken Sie auf der Seite "Serviceübersicht" auf den Zurückpfeil, um zur Tabellenansicht zurückzukehren. Sie sehen, dass die Anzahl der Dienste für No SLOs set (Kein SLO festgelegt) um eins reduziert wurde und SLOs of Error budget nicht mehr 0 ist.

  2. Wenn Sie nach unten ledgerwriter scrollen, sehen Sie, dass sich der Nebenbezeichner in einem orangefarbenen Warndreieck geändert hat. Wenn Sie den Mauszeiger über diesen Indikator halten, werden Sie aufgefordert, die Zuverlässigkeit des Dienstes zu überprüfen. Wenn Sie darauf klicken, gelangen Sie zurück zur Seite "Status" des Dienstes, mit der Sie Ihre SLO-Details prüfen können. Derselbe Indikator wird auch für Ihren Dienst in der Topologieansicht angezeigt.

Screenshot der Anthos Service Mesh-Dienstliste mit SLO-Warnung

Weitere Informationen zum Deployment

In GKE Enterprise gibt es mit unserer Bereitstellung noch viel mehr zu sehen und zu tun. Sie können gerne eine andere Anleitung ausprobieren oder sich selbst mit der Bank of Anthos-Bereitstellung in Google Cloud vertraut machen, bevor Sie die Anleitung zur Bereinigung im nächsten Abschnitt befolgen.

Bereinigen

Nachdem Sie sich mit der Bank of Anthos-Anwendung vertraut gemacht haben, können Sie die in Google Cloud erstellten Ressourcen bereinigen, damit sie keine kostenpflichtigen Kontingente verbrauchen.

  • Option 1: Sie können das Projekt löschen. Wenn Sie das Projekt jedoch behalten möchten, können Sie das Deployment mit Option 2 löschen.

  • Option 2: Wenn Sie Ihr aktuelles Projekt behalten möchten, können Sie die Beispielanwendung und den Beispielcluster mit terraform destroy löschen.

Projekt löschen (Option 1)

Kosten lassen sich am einfachsten vermeiden, wenn Sie das für diese Anleitung erstellte Projekt löschen.

  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.

Bereitstellung löschen (Option 2)

Bei diesem Ansatz werden die Bank of Anthos-Anwendung und der Cluster gelöscht, das Projekt wird jedoch nicht gelöscht. Führen Sie in Cloud Shell die folgenden Befehle aus:

  1. Wechseln Sie in das Verzeichnis, in dem die Installationsskripts gehostet werden:

    cd bank-of-anthos/iac/tf-anthos-gke
    
  2. Löschen Sie das Beispiel und den Cluster:

    terraform destroy
    
  3. Geben Sie die Projekt-ID ein, wenn Sie dazu aufgefordert werden.

Wenn Sie eine erneute Bereitstellung planen, prüfen Sie, ob alle Anforderungen erfüllt sind, wie im Abschnitt Vorbereitung beschrieben.

Nächste Schritte

In unserer GKE Enterprise-Dokumentation gibt es noch viel mehr zu entdecken.

Weitere Anleitungen ausprobieren

  • Entdecken Sie mit der Bank of Anthos die GKE Enterprise-Sicherheitsfeatures in Secure GKE Enterprise.

  • Referenzarchitekturen, Diagramme und Best Practices zu Google Cloud kennenlernen. Weitere Informationen zu Cloud Architecture Center

Weitere Informationen zu GKE Enterprise