Anthos-Cluster auf VMware (GKE On-Prem) Version 1.9 unterstützt die Verschlüsselung von Secrets ohne einen externen KMS (Key Management Service) oder andere Abhängigkeiten.
Always-On-Secrets-Verschlüsselung aktivieren
Die Always-On-Secrets-Verschlüsselung funktioniert, indem automatisch ein Verschlüsselungsschlüssel generiert wird, mit dem Secrets verschlüsselt werden, bevor sie in der etcd-Datenbank für diesen Cluster gespeichert werden.
Die Schlüsselversion ist eine Versionsnummer, die angibt, dass der Schlüssel derzeit verwendet wird.
Sie können die Secret-Verschlüsselung aktivieren, nachdem ein Cluster bereits erstellt wurde.
Für den Administratorcluster:
Bearbeiten Sie die Konfigurationsdatei für den Administratorcluster, um den Abschnitt
secretsEncryption
hinzuzufügen.Führen Sie den Befehl
gkectl update
aus:gkectl update admin --config ADMIN_CLUSTER_CONFIG_FILE --kubeconfig ADMIN_CLUSTER_KUBECONFIG
Für einen Nutzercluster:
Bearbeiten Sie die Konfigurationsdatei des Nutzerclusters, um den Abschnitt
secretsEncryption
hinzuzufügen.Führen Sie den Befehl
gkectl update
aus:gkectl update cluster --config USER_CONFIG_FILE --kubeconfig ADMIN_CLUSTER_KUBECONFIG
Ersetzen Sie Folgendes:
ADMIN_KUBECONFIG
durch den Pfad der Datei "kubeconfig" Ihres Administratorclusters.ADMIN_CLUSTER_CONFIG
durch den Pfad Ihrer Konfigurationsdatei Ihres Administratorclusters.USER_CLUSTER_CONFIG
ist der Pfad Ihrer Nutzercluster-Konfigurationsdatei.
Die in diesem Abschnitt bereitgestellten gkectl update
-Befehle können auch für andere Aktualisierungen des entsprechenden Clusters verwendet werden.
Schlüsselspeicherung
Die Verschlüsselungsschlüssel für den Administratorcluster werden auf dem Datenlaufwerk des Administratorclusters gespeichert. Dieses Laufwerk wird auf der Administrator-Mastermaschine unter /opt/data
bereitgestellt. Die Verschlüsselungsschlüssel finden Sie unter /opt/data/gke-k8s-kms-plugin/generatedkeys/
. Diese Schlüssel müssen gesichert werden, um den Zugriff auf die von diesen Schlüsseln verschlüsselten Secrets zu erhalten.
Schlüsselrotation
Um einen vorhandenen Verschlüsselungsschlüssel für einen Cluster zu rotieren, erhöhen Sie die keyVersion
in der entsprechenden Konfigurationsdatei für den Admincluster oder Nutzercluster-Konfigurationsdatei und führen Sie den entsprechenden gkectl update
-Befehl aus. Dadurch wird ein neuer Schlüssel erstellt, der mit der neuen Versionsnummer übereinstimmt, jedes Secret wird neu verschlüsselt und alte Schlüssel werden sicher gelöscht. Alle nachfolgenden neuen Secrets werden mit dem neuen Verschlüsselungsschlüssel verschlüsselt.
Always-On-Secret-Verschlüsselung deaktivieren
Wenn Sie die Verschlüsselung von Secrets für einen vorhandenen Cluster deaktivieren möchten, entfernen Sie das Feld keyVersion
und fügen Sie das Feld disabled: true
hinzu. Führen Sie als Nächstes den entsprechenden gkectl update
-Befehl aus. Mit diesem Update wird jedes vorhandene Secret entschlüsselt und jedes Secret wird im Nur-Text-Format gespeichert. Alle nachfolgenden neuen Secrets werden im Nur-Text-Format gespeichert.
secretsEncryption: mode: GeneratedKey generatedKey: disabled: true