Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Themen
Voraussetzungen
-
Amazon EKS-Cluster (Version 1.17 oder höher)
-
Zugriff auf AWS CLI einen Amazon EKS-Cluster über
kubectl
Einrichten der Zugriffssteuerung
Das ASCP ruft die Amazon EKS-Pod-Identität ab und tauscht sie gegen eine IAM-Rolle aus. Sie legen Berechtigungen in einer IAM-Richtlinie für diese IAM-Rolle fest. Wenn der ASCP die IAM-Rolle übernimmt, erhält er Zugriff auf die von Ihnen autorisierten Geheimnisse. Andere Container können nur auf die Secrets zugreifen, wenn Sie diese auch der IAM-Rolle zuordnen.
So gewähren Sie Ihrem Amazon EKS Pod Zugriff auf Geheimnisse in Secrets Manager
-
Erstellen Sie eine Berechtigungsrichtlinie, die Zugriff auf die Geheimnisse gewährt
secretsmanager:GetSecretValue
, auf die der Pod zugreifen muss.secretsmanager:DescribeSecret
Eine Beispielrichtlinie finden Sie unter Beispiel: Erlaubnis, einzelne Geheimnisse zu lesen und zu beschreiben. -
Erstellen Sie einen IAM OpenID Connect (OIDC)-Anbieter für den Cluster, wenn Sie noch keinen haben. Weitere Informationen finden Sie unter Erstellen eines IAM-OIDC-Anbieters für Ihren Cluster im Amazon EKS-Benutzerhandbuch.
-
Erstellen Sie eine IAM-Rolle für ein Servicekonto und fügen Sie die Richtlinie hinzu. Weitere Informationen finden Sie unter Erstellen einer IAM-Rolle für ein Servicekonto im Amazon EKS-Benutzerhandbuch.
-
Wenn Sie einen privaten Amazon EKS-Cluster verwenden, stellen Sie sicher, dass die VPC, in der sich der Cluster befindet, über einen AWS STS Endpunkt verfügt. Informationen zum Erstellen eines Endpunkts finden Sie unter Interface VPC Endpoints im AWS Identity and Access Management Benutzerhandbuch.
Identifizieren der Secrets, die gemountet werden sollen
Um zu bestimmen, welche Secrets der ASCP in Amazon EKS als Dateien im Dateisystem bereitstellt, erstellen Sie eine SecretProviderClass-YAML-Datei. Die SecretProviderClass
listet die Secrets auf, die gemountet werden sollen, und den Dateinamen, unter dem sie gemountet werden sollen. Der SecretProviderClass
muss sich im selben Namespace befinden wie der Amazon EKS-Pod, auf den er verweist.
Hängen Sie die Geheimnisse als Dateien ein
Die folgenden Anweisungen zeigen, wie Sie Geheimnisse mithilfe der YAML-Beispieldateien .yaml und ExampleSecretProviderClass.yaml
So hängen Sie Geheimnisse in Amazon EKS ein
-
Wenden Sie das
SecretProviderClass
auf den Pod an:kubectl apply -f ExampleSecretProviderClass.yaml
-
Stellen Sie Ihren Pod bereit:
kubectl apply -f ExampleDeployment.yaml
-
Das ASCP mountet die Dateien.
Fehlerbehebung
Sie können sich die meisten Fehler ansehen, indem Sie die Pod-Bereitstellung beschreiben.
Fehlermeldungen für Ihren Container anzeigen
-
Rufen Sie mit dem folgenden Befehl eine Liste der Pod-Namen ab. Wenn Sie nicht den Standard-Namespace verwenden, verwenden Sie
-n
.nameSpace
kubectl get pods
-
Um den Pod zu beschreiben,
podId
verwenden Sie im folgenden Befehl die Pod-ID der Pods, die Sie im vorherigen Schritt gefunden haben. Wenn Sie nicht den Standard-Namespace verwenden, verwenden Sie-n
.nameSpace
kubectl describe pod/
podId
Fehler für den ASCP anzeigen
-
Um weitere Informationen in den Anbieterprotokollen zu finden,
podId
verwenden Sie im folgenden Befehl die ID des Pods csi-secrets-store-provider-aws.kubectl -n kube-system get pods kubectl -n kube-system logs Pod/
podId
-
Stellen Sie sicher, dass die
SecretProviderClass
CRD installiert ist:kubectl get crd secretproviderclasses.secrets-store.csi.x-k8s.io
Dieser Befehl sollte Informationen über die
SecretProviderClass
benutzerdefinierte Ressourcendefinition zurückgeben.
-
Stellen Sie sicher, dass das SecretProviderClass Objekt erstellt wurde.
kubectl get secretproviderclass
SecretProviderClassName
-o yaml