In diesem Dokument wird beschrieben, wie Sie vorhandene zustandsorientierte Arbeitslasten aktualisieren, die in einem GDC-Kubernetes-Cluster (Google Distributed Cloud) mit Air Gap ausgeführt werden. Wenn sich Ihre Anwendung aufgrund von Ressourcennutzung und Konfigurationsoptimierungen weiterentwickelt, müssen Sie die zugrunde liegende Pod-Spezifikation im Kubernetes-Cluster aktualisieren, um diese Änderungen an der Arbeitslast zu berücksichtigen. Weitere Informationen zum Planen von Updates für zustandsorientierte Arbeitslasten finden Sie in der Kubernetes-Dokumentation unter Aktualisierungsstrategien.
Dieses Dokument richtet sich an Entwickler in der Gruppe der Anwendungsoperatoren, die für die Aktualisierung von Anwendungsarbeitslasten für ihre Organisation verantwortlich sind. Weitere Informationen finden Sie unter Dokumentation zu Zielgruppen für GDC mit Air Gap.
Hinweise
Zum Ausführen der Aufgaben in diesem Dokument benötigen Sie die folgenden Ressourcen und Rollen:
Wenn Sie Befehle für einen Kubernetes-Cluster ausführen möchten, benötigen Sie die folgenden Ressourcen:
Suchen Sie den Namen des Kubernetes-Clusters oder fragen Sie ein Mitglied der Plattformadministratorgruppe nach dem Clusternamen.
Melden Sie sich an und generieren Sie die kubeconfig-Datei für den Kubernetes-Cluster, falls Sie noch keine haben.
Verwenden Sie den kubeconfig-Pfad des Kubernetes-Clusters, um
KUBERNETES_CLUSTER_KUBECONFIGin dieser Anleitung zu ersetzen.
Bitten Sie den IAM-Administrator Ihrer Organisation, Ihnen die Rolle „Namespace Admin“ (
namespace-admin) in Ihrem Projekt-Namespace zuzuweisen, um die erforderlichen Berechtigungen zum Aktualisieren zustandsorientierter Arbeitslasten in einem freigegebenen Cluster zu erhalten.Bitten Sie den IAM-Administrator Ihrer Organisation, Ihnen die Rolle „Cluster Developer“ (
cluster-developer) in einem Standardcluster zuzuweisen, um die erforderlichen Berechtigungen zum Aktualisieren zustandsorientierter Arbeitslasten in einem Standardcluster zu erhalten.
StatefulSet-Ressource aktualisieren
Wenn Sie die StatefulSet aktualisieren möchten, wenden Sie eine neue oder aktualisierte Manifestdatei an. Dies ist hilfreich, um verschiedene Änderungen an Ihrem StatefulSet vorzunehmen, z. B. zum Skalieren oder zum Angeben einer neuen Version Ihrer Anwendung.
So aktualisieren Sie ein StatefulSet-Objekt:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
apply -f STATEFULSET_FILE
Ersetzen Sie Folgendes:
KUBERNETES_CLUSTER_KUBECONFIG: Die kubeconfig-Datei für den Cluster, in dem die zustandsorientierten Arbeitslasten ausgeführt werden.NAMESPACE: der Namespace. Bei freigegebenen Clustern muss dies ein Projekt-Namespace sein. Bei Standardclustern kann es sich um einen beliebigen Namespace handeln.STATEFULSET_FILE: der Name der aktualisiertenStatefulSet-Manifestdatei.
Der Befehl kubectl apply weist einer Ressource eine Manifestdatei zu. Wenn die angegebene Ressource nicht vorhanden ist, wird sie mit dem Befehl erstellt.
Rollout einer Aktualisierung der Ressource StatefulSet prüfen
Sie können sich detaillierte Informationen zum Status und Verlauf des Update-Rollouts eines StatefulSet-Objekts ansehen. Sie können auch das Rollout eines StatefulSet-Objekts rückgängig machen.
Roll-out prüfen
Führen Sie den folgenden Befehl aus, um den Rollout der StatefulSet-Ressource zu prüfen:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
rollout status statefulset STATEFULSET_NAME
KUBERNETES_CLUSTER_KUBECONFIG: Die kubeconfig-Datei für den Cluster, in dem die zustandsorientierten Arbeitslasten ausgeführt werden.NAMESPACE: der Namespace. Bei freigegebenen Clustern muss dies ein Projekt-Namespace sein. Bei Standardclustern kann es sich um einen beliebigen Namespace handeln.STATEFULSET_NAME: der Name des aktualisiertenStatefulSet-Objekts.
Einführungsverlauf abrufen
Führen Sie den folgenden Befehl aus, um den Rollout-Verlauf der StatefulSet-Ressource aufzurufen:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
rollout history statefulset STATEFULSET_NAME
KUBERNETES_CLUSTER_KUBECONFIG: Die kubeconfig-Datei für den Cluster, in dem die zustandsorientierten Arbeitslasten ausgeführt werden.NAMESPACE: der Namespace. Bei freigegebenen Clustern muss dies ein Projekt-Namespace sein. Bei Standardclustern kann es sich um einen beliebigen Namespace handeln.STATEFULSET_NAME: der Name des aktualisiertenStatefulSet-Objekts.
Roll-out rückgängig machen
So machen Sie ein Rollout rückgängig:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
rollout undo statefulset STATEFULSET_NAME
Ersetzen Sie Folgendes:
KUBERNETES_CLUSTER_KUBECONFIG: Die kubeconfig-Datei für den Cluster, in dem die zustandsorientierten Arbeitslasten ausgeführt werden.NAMESPACE: der Namespace. Bei freigegebenen Clustern muss dies ein Projekt-Namespace sein. Bei Standardclustern kann es sich um einen beliebigen Namespace handeln.STATEFULSET_NAME: der Name desStatefulSet-Objekts.