In diesem Thema wird beschrieben, wie Sie die Sicherheitsanmeldedaten für Ihre Anthos-Cluster im AWS-Verwaltungsdienst (GKE on AWS) und Nutzercluster rotieren. Weitere Informationen zu den Sicherheitsfunktionen von Anthos-Clustern in AWS finden Sie unter Sicherheit.
Hinweis
Zum Ausführen der Schritte auf dieser Seite müssen Sie Zugriff auf das Verzeichnis mit Ihren Anthos-Clustern in der AWS-Konfiguration haben.
Verwaltungsdienstzertifikate
In diesem Abschnitt wird beschrieben, wie Zertifikate für Ihren Verwaltungsdienst rotiert werden.
Zertifizierungszertifizierungsstellen
In diesem Abschnitt wird erläutert, wie Sie Zertifizierungszertifikate für Anthos-Cluster in AWS-Komponenten rotieren.
Stamm-CA der Verwaltungs-API-Server
Führen Sie die folgenden Schritte aus, um die Stamm-CA des API-Servers zu rotieren:
- Wechseln Sie in das Verzeichnis mit Ihren Anthos-Clustern in der AWS-Konfiguration.
Sie haben dieses Verzeichnis bei der Installation des Verwaltungsdienstes erstellt.
cd anthos-aws
- Öffnen Sie
anthos-gke.status.yaml
in einem Texteditor. - Entfernen Sie alle Werte unter dem Schlüssel
certificateAuthority
. Dies betrifftencryptedPrivateKey.kmsKeyARN
,encryptedPrivateKey.value
undencryptedPrivateKey.certificate
. Führen Sie
anthos-gke aws management init
aus, um die Dateianthos-gke.status.yaml
zu aktualisieren.anthos-gke aws management init
Führen Sie
anthos-gke aws management apply
aus, um den Verwaltungsdienst zu aktualisieren.anthos-gke aws management apply
- Verwenden Sie
anthos-gke
im Verzeichnisanthos-aws
, um den Kontext zu Ihrem Verwaltungsdienst zu wechseln.cd anthos-aws anthos-gke aws management get-credentials
Andere Verwaltungs-CAs
In diesem Abschnitt wird beschrieben, wie die folgenden Zertifizierungsstellen rotiert werden:
- Authentifizierungs-Webhook-CA
- Etcd-CA
- Zertifizierungsstelle für Dienstkonten
Sie können diese CAs mit einer der folgenden Methoden rotieren:
Entfernen Sie den Abschnitt "
certificateAuthority
" aus "anthos-gke.status.yaml
".- Wechseln Sie in das Verzeichnis mit Ihren Anthos-Clustern in der AWS-Konfiguration.
Sie haben dieses Verzeichnis bei der Installation des Verwaltungsdienstes erstellt.
cd anthos-aws
- Öffnen Sie
anthos-gke.status.yaml
in einem Texteditor. - Entfernen Sie alle Werte unter dem Schlüssel
certificateAuthority
. Dies betrifftencryptedPrivateKey.kmsKeyARN
,encryptedPrivateKey.value
undencryptedPrivateKey.certificate
. Führen Sie
anthos-gke aws management init
aus, um die Dateianthos-gke.status.yaml
zu aktualisieren.anthos-gke aws management init
Führen Sie
anthos-gke aws management apply
aus, um den Verwaltungsdienst zu aktualisieren.anthos-gke aws management apply
- Wechseln Sie in das Verzeichnis mit Ihren Anthos-Clustern in der AWS-Konfiguration.
Sie haben dieses Verzeichnis bei der Installation des Verwaltungsdienstes erstellt.
Wenn ein neuer Anthos-Cluster auf der AWS-Version verfügbar ist, führen Sie ein Upgrade Ihrer Anthos-Cluster im AWS-Verwaltungsdienst durch.
Erstellen Sie die EC2-Instanz des Verwaltungsdiensts neu.
- Auf Ihrer
anthos-aws
verwenden Sieterraform
um die ID Ihres Verwaltungsdiensts abzurufen.cd anthos-aws terraform output cluster_id
Die Ausgabe enthält die ID Ihres Verwaltungsdiensts. Im folgenden Beispiel lautet die IDgke-12345abc
.terraform output cluster_id
gke-12345abc - Öffnen Sie die AWS EC2-Konsole.
- Klicken Sie auf Instanzen.
- Suchen Sie die Instanz mit dem Namen
cluster-id-management-0
. - Wählen Sie Aktionen -> Instanzstatus -> Beenden aus, um die Instanz zu entfernen. EC2 erstellt automatisch eine neue Instanz mit demselben EBS-Volume.
- Auf Ihrer
TLS-Client-/Serverschlüssel und -Zertifikate verwalten
Sie müssen die Verwaltungsdienstinstanz neu erstellen, um die TLS-Client-/Serverschlüssel und -Zertifikate für Ihren Verwaltungsdienst zu rotieren. Führen Sie die folgenden Schritte aus, um die Instanz neu zu erstellen:
- Auf Ihrer
anthos-aws
verwenden Sieterraform
um die ID Ihres Verwaltungsdiensts abzurufen.cd anthos-aws terraform output cluster_id
Die Ausgabe enthält die ID Ihres Verwaltungsdiensts. Im folgenden Beispiel lautet die IDgke-12345abc
.terraform output cluster_id
gke-12345abc - Öffnen Sie die AWS EC2-Konsole.
- Klicken Sie auf Instanzen.
- Suchen Sie die Instanz mit dem Namen
cluster-id-management-0
. - Wählen Sie Aktionen -> Instanzstatus -> Beenden aus, um die Instanz zu entfernen. EC2 erstellt automatisch eine neue Instanz mit demselben EBS-Volume.
Google Cloud-Dienstkonten
Dienstkonten für die Verwaltung
Führen Sie die folgenden Schritte aus, um die Google Cloud-Dienstkonten für Ihren Verwaltungsdienst zu rotieren.
- Erstellen Sie neue Dienstkonten und laden Sie Dienstkontoschlüssel herunter. Folgen Sie dazu den Schritten unter Voraussetzungen.
- Wechseln Sie in das Verzeichnis mit Ihren Anthos-Clustern in der AWS-Konfiguration.
Sie haben dieses Verzeichnis bei der Installation des Verwaltungsdienstes erstellt.
cd anthos-aws
Wenn Sie Schlüssel in einen anderen Pfad heruntergeladen haben, öffnen Sie die Datei
anthos-gke.yaml
in einem Texteditor. Ändern Sie den Wert von.spec.googleCloud.serviceAccountKeys.managementService
,.status.googleCloud.serviceAccountKeys.connectAgent
und.spec.googleCloud.serviceAccountKeys.node
in die neuen Pfade.apiVersion: multicloud.cluster.gke.io/v1 kind: AWSManagementService metadata: name: management spec: googleCloud: serviceAccountKeys: managementService: MANAGEMENT_KEY_PATH connectAgent: CONNECT_KEY_PATH node: NODE_KEY_PATH ...
Führen Sie
anthos-gke aws management init
aus, um die Dateianthos-gke.status.yaml
zu aktualisieren.anthos-gke aws management init
Führen Sie
anthos-gke aws management apply
aus, um den Verwaltungsdienst zu aktualisieren.anthos-gke aws management apply
Nutzercluster-Dienstkonten
Damit Sie diese Dienstkonten auf AWS-Cluster und AWSNodePools anwenden können, müssen Sie Upgrade ausführen oder Löschen dannneu erstellen.
Nutzerclusterzertifikate
In diesem Abschnitt wird beschrieben, wie Sie die Zertifikate für Ihre Nutzercluster rotieren.
Nutzercluster-CAs und SSH-Schlüssel
Die meisten Zertifizierungsstellen für Ihre Nutzercluster werden beim Erstellen des Clusters erstellt.
Wenn Sie einen Nutzercluster löschen, rotiert Anthos Cluster on AWS folgende Zertifikate:
- API-Server-Stamm-CA
- API-Front-End-CA
- etcd-CA
- Zertifizierungsstelle für Kubernetes-Dienstkontos
- SSH-Schlüsselpaare von der Steuerungsebene zu Knoten
Nutzercluster-Authentifizierungs-Webhook-CA
Bearbeiten Sie die Datei anthos-gke.status.yaml
und wenden Sie die Änderungen an, um die Webhook-Zertifizierungsstelle für die Nutzercluster-Rotation zu rotieren.
- Wechseln Sie in das Verzeichnis mit Ihren Anthos-Clustern in der AWS-Konfiguration.
Sie haben dieses Verzeichnis bei der Installation des Verwaltungsdienstes erstellt.
cd anthos-aws
- Öffnen Sie
anthos-gke.status.yaml
in einem Texteditor. - Entfernen Sie alle Werte unter dem Schlüssel
certificateAuthority
. Dies betrifftencryptedPrivateKey.kmsKeyARN
,encryptedPrivateKey.value
undencryptedPrivateKey.certificate
. Führen Sie
anthos-gke aws management init
aus, um die Dateianthos-gke.status.yaml
zu aktualisieren.anthos-gke aws management init
Führen Sie
anthos-gke aws management apply
aus, um den Verwaltungsdienst zu aktualisieren.anthos-gke aws management apply
TLS-Schlüsselpaare und -Zertifikate für Nutzercluster
Anthos-Cluster in AWS generieren beim Erstellen einer Instanz TLS-Schlüsselpaare und -Zertifikate. Erstellen Sie die Instanz neu, um diese Paare zu rotieren. Führen Sie dazu die folgenden Schritte für Ihre Steuerungsebene und Knotenpools aus.
Steuerungsebene
- Verwenden Sie
anthos-gke
im Verzeichnisanthos-aws
, um den Kontext zu Ihrem Verwaltungsdienst zu wechseln.cd anthos-aws anthos-gke aws management get-credentials
Nutzen Sie
kubectl
, um die AWS EC2-Zielgruppe Ihrer Steuerungsebene von Ihrem AWSCluster abzurufen.env HTTPS_PROXY=http://localhost:8118 \ kubectl get awscluster cluster-name \ -o jsonpath='{.status.targetGroupName}{"\n"}'
Die Ausgabe enthält den Namen der EC2-Zielgruppe Ihrer Steuerungsebene. Beispiel:
gke-123456a7-controlplane
Öffnen Sie die AWS EC2-Konsole. Wählen Sie im linken Bereich Zielgruppen aus.
Klicken Sie auf die Suchleiste und suchen Sie Ihre Zielgruppe. Klicken Sie auf den Namen Ihrer Zielgruppe und dann auf Ziele. Die Liste der Instanzen Ihrer Steuerungsebene wird angezeigt.
Führen Sie für jede Instanz in der Zielgruppe die folgenden Schritte aus:
Klicken Sie auf die Instanz-ID der Instanz. Die Konsole der AWS EC2-Instanzen wird angezeigt.
Klicken Sie auf die Instanz-ID.
Wählen Sie Aktionen -> Instanzstatus -> Beenden aus, um die Instanz zu entfernen. EC2 erstellt automatisch eine neue Instanz mit demselben EBS-Volume.
Kehren Sie zur Seite „Zielgruppen” zurück.
Nachdem Sie alle Instanzen in der Gruppe beendet haben, kehren Sie zur Seite "Zielgruppen" zurück.
Suchen Sie im Abschnitt Registrierte Ziele der Spalte die Spalte Status. Der Status Ihrer Instanzen sollte für Healthy (Status) Healthy (Fehlerfrei) lauten. Wenn eine der Instanzen fehlerfrei ist, warten Sie einige Minuten und klicken Sie auf das Symbol "Aktualisieren" (
).Wenn alle Instanzen in der Zielgruppe fehlerfrei sind, fahren Sie mit dem nächsten Schritt fort.
Knotenpools
So rotieren Sie die TLS-Zertifikate Ihres Knotenpools:
- Verwenden Sie
anthos-gke
im Verzeichnisanthos-aws
, um den Kontext zu Ihrem Verwaltungsdienst zu wechseln.cd anthos-aws anthos-gke aws management get-credentials
Verwenden Sie
kubectl
, um die AWS EC2-Zielgruppe Ihres Knotenpools aus Ihrem AWSNodePool abzurufen.env HTTPS_PROXY=http://localhost:8118 \ kubectl get awsnodepool -o jsonpath='{.items[*].status.autoScalingGroupName}{"\n"}'
Die Ausgabe enthält den Namen der EC2-Zielgruppe des Knotenpools. Beispiel:
gke-123456a7-nodepool-abc123
Öffnen Sie die AWS EC2-Konsole. Wählen Sie im linken Bereich Zielgruppen aus.
Klicken Sie auf die Suchleiste und suchen Sie Ihre Zielgruppe. Klicken Sie auf den Namen Ihrer Zielgruppe und dann auf Ziele. Die Liste der Instanzen Ihrer Steuerungsebene wird angezeigt.
Führen Sie für jede Instanz in der Zielgruppe die folgenden Schritte aus:
Klicken Sie auf die Instanz-ID der Instanz. Die Konsole der AWS EC2-Instanzen wird angezeigt.
Klicken Sie auf die Instanz-ID.
Wählen Sie Aktionen -> Instanzstatus -> Beenden aus, um die Instanz zu entfernen. EC2 erstellt automatisch eine neue Instanz mit demselben EBS-Volume.
Kehren Sie zur Seite „Zielgruppen” zurück.
Nachdem Sie alle Instanzen in der Gruppe beendet haben, kehren Sie zur Seite "Zielgruppen" zurück.
Suchen Sie im Abschnitt Registrierte Ziele der Spalte die Spalte Status. Der Status Ihrer Instanzen sollte für Healthy (Status) Healthy (Fehlerfrei) lauten. Wenn eine der Instanzen fehlerfrei ist, warten Sie einige Minuten und klicken Sie auf das Symbol "Aktualisieren" (
).Wenn alle Instanzen in der Zielgruppe fehlerfrei sind, fahren Sie mit dem nächsten Schritt fort.