Zustandslose Arbeitslasten prüfen

In diesem Dokument wird beschrieben, wie Sie vorhandene zustandslose Arbeitslasten prüfen, die in einem GDC-Kubernetes-Cluster (Google Distributed Cloud) mit Air Gap ausgeführt werden. Mit zustandslosen Arbeitslasten können Sie Ihre Anwendungsbereitstellung ausführen, ohne Daten oder den Anwendungsstatus speichern zu müssen. Sie können Ihre zustandslosen Arbeitslasten mit der GDC Console oder der kubectl CLI aufrufen, um die Ressourcennutzung und den Zustand der Arbeitslast zu überwachen.

Dieses Dokument richtet sich an Entwickler in der Gruppe der Anwendungsoperatoren, die für die Verwaltung von Anwendungsarbeitslasten für ihre Organisation verantwortlich sind. Weitere Informationen finden Sie unter Dokumentation zu Zielgruppen für GDC mit Air Gap.

Hinweis

Zum Ausführen der Aufgaben in diesem Dokument müssen Sie die erforderlichen Berechtigungen anfordern und Ihre Umgebung vorbereiten.

IAM-Rollen anfordern

Sie benötigen bestimmte Rollen, um die Berechtigungen zu erhalten, die zum Aufrufen und Prüfen zustandsloser Arbeitslasten erforderlich sind. Die erforderlichen Rollen hängen davon ab, ob Sie in einem organisationsbezogenen freigegebenen Cluster oder einem projektbezogenen Standardcluster arbeiten. Weitere Informationen finden Sie unter Kubernetes-Clusterkonfigurationen.

Rollen für freigegebene Cluster

Bitten Sie Ihren Projekt-IAM-Administrator, Ihnen die folgenden Rollen in Ihrem Projekt-Namespace zuzuweisen, je nachdem, welche Aufgabe ausgeführt werden soll:

  • Arbeitslastbetrachter (workload-viewer): Alle Arbeitslasten ansehen, die in einem freigegebenen Cluster bereitgestellt wurden.
  • Namespace-Administrator (namespace-admin): Arbeitslasten in einem Projekt-Namespace eines freigegebenen Clusters erstellen, löschen, bearbeiten oder ansehen.

Diese Rollen sind an Ihren Projekt-Namespace gebunden.

Rollen für Standardcluster

Wenn Sie Arbeitslasten in einem Standardcluster erstellen, löschen, bearbeiten oder ansehen möchten, bitten Sie Ihren Projekt-IAM-Administrator, Ihnen die Rolle Cluster Developer (cluster-developer) zuzuweisen. Diese Rolle ist an Ihren Projekt-Namespace gebunden.

Umgebung vorbereiten

Wenn Sie Befehle für einen Kubernetes-Cluster mit der API ausführen möchten, benötigen Sie die folgenden Ressourcen:

  • Suchen Sie den Namen des Kubernetes-Clusters oder fragen Sie ein Mitglied der Gruppe der Plattformadministratoren nach dem Clusternamen.

  • Melden Sie sich an und generieren Sie die kubeconfig-Datei für den Kubernetes-Cluster.

  • Ersetzen Sie in dieser Anleitung KUBERNETES_CLUSTER_KUBECONFIG durch den kubeconfig-Pfad des Kubernetes-Clusters.

Containerarbeitslasten eines Projekts ansehen

So rufen Sie die Containerarbeitslasten Ihres Projekts auf:

Console

  • Wählen Sie im Navigationsmenü Kubernetes Engine > Arbeitslasten aus.

    Sie können Details zu Ihren Containerarbeitslasten ansehen, z. B.:

    • Name
    • Typ
    • Anzahl der Pods
    • Kubernetes-Cluster
    • Datum der letzten Änderung

    Die Containerarbeitslasten sind nach dem Kubernetes-Cluster organisiert, zu dem sie gehören. Wählen Sie das Drop-down-Menü Cluster aus, um den Clusterkontext zu ändern.

kubectl

  • Führen Sie den folgenden Befehl aus, um alle Pods in Ihrem Projekt aufzulisten:

    kubectl get pods -n PROJECT_NAMESPACE
    

    Die Ausgabe sieht etwa so aus:

    NAME                        READY   STATUS    RESTARTS   AGE
    nginx-workload-ah-aa-1228   1/1     Running   0          12h
    nginx-workload-ah-ab-6784   1/1     Running   0          11h
    nginx-workload-ah-ac-0045   1/1     Running   0          12h
    

Bereitstellung prüfen

Wenn Sie detailliertere Informationen zu den Komponenten einer Deployment-Ressource anfordern möchten, führen Sie Befehle aus, die direkt auf die zu prüfende Entität ausgerichtet sind.

Informationen zum Deployment-Objekt abrufen

Führen Sie den folgenden Befehl aus, um detaillierte Informationen zum Deployment-Objekt abzurufen:

kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
    describe deployment DEPLOYMENT_NAME

Ersetzen Sie Folgendes:

  • KUBERNETES_CLUSTER_KUBECONFIG: die kubeconfig-Datei für den Cluster, in dem die Bereitstellung ausgeführt wird.

  • NAMESPACE: der Namespace. Bei freigegebenen Clustern muss dies ein Projekt-Namespace sein. Bei Standardclustern kann es ein beliebiger Namespace sein.

  • DEPLOYMENT_NAME: der Name des Deployment-Objekts.

Livekonfiguration im YAML-Format anzeigen

Führen Sie den folgenden Befehl aus, um das Manifest eines Deployment-Objekts aufzurufen:

kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
    get deployments DEPLOYMENT_NAME -o yaml

Dieser Befehl zeigt die Livekonfiguration des Deployment-Objekts im YAML-Format an.

Pods auflisten

Führen Sie den folgenden Befehl aus, um die von der Bereitstellung erstellten Pod-Objekte aufzulisten:

kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
    get pods -l KEY=VALUE

Hier listet das Flag -l alle Pod-Objekte mit dem angegebenen Schlüssel/Wert-Paar-Label im angegebenen Cluster auf.

Ersetzen Sie Folgendes:

  • KUBERNETES_CLUSTER_KUBECONFIG: die kubeconfig-Datei für den Cluster, in dem die Bereitstellung ausgeführt wird.

  • NAMESPACE: der Namespace. Bei freigegebenen Clustern muss dies ein Projekt-Namespace sein. Bei Standardclustern kann es ein beliebiger Namespace sein.

  • KEY: der Schlüssel für das in der Bereitstellung festgelegte Schlüssel/Wert-Paar-Label. Wenn beispielsweise im Feld .template.metadata.labels das app: myapp Label konfiguriert ist, lautet der Schlüssel app.

  • VALUE: der Wert für das in der Bereitstellung festgelegte Schlüssel/Wert-Paar-Label. Wenn beispielsweise im Feld .template.metadata.labels das Label app: myapp konfiguriert ist, lautet der Wert my-app.

Wenn Sie das Deployment-Objekt beispielsweise mit app: my-app gelabelt haben, führen Sie den folgenden Befehl aus, um Pod-Objekte mit diesem Label aufzurufen:

kubectl --kubeconfig /tmp/kubeconfig.yaml -n my-namespace \
    get pods -l app=my-app

Bestimmte Pod-Informationen abrufen

Führen Sie den folgenden Befehl aus, um Informationen zu einem bestimmten Pod-Objekt abzurufen:

kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
    describe pod POD_NAME

Ersetzen Sie Folgendes:

  • KUBERNETES_CLUSTER_KUBECONFIG: die kubeconfig-Datei für den Cluster, in dem die Bereitstellung ausgeführt wird.

  • NAMESPACE: der Namespace. Bei freigegebenen Clustern muss dies ein Projekt-Namespace sein. Bei Standardclustern kann es ein beliebiger Namespace sein.

  • POD_NAME: der Name des Pods, der von der Bereitstellung verwaltet wird.

Nächste Schritte