Unterstützung für die Verbesserung dieser Seite beitragen
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.
Um zu diesem Benutzerhandbuch beizutragen, wählen Sie den GitHub Link Diese Seite bearbeiten auf, der sich im rechten Bereich jeder Seite befindet.
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.
Vorbereitung der Anmeldeinformationen für Hybridknoten
Amazon EKS-Hybridknoten verwenden temporäre IAM-Anmeldeinformationen, die durch AWS SSM-Hybrid-Aktivierungen oder AWS IAM Roles Anywhere bereitgestellt werden, um sich beim Amazon EKS-Cluster zu authentifizieren. Sie müssen entweder AWS SSM-Hybrid-Aktivierungen oder AWS IAM Roles Anywhere mit der Amazon EKS Hybrid Nodes CLI () verwenden. nodeadm Sie sollten nicht sowohl AWS SSM-Hybrid-Aktivierungen als auch IAM-Rollen Anywhere verwenden. AWS Wir empfehlen, AWS SSM-Hybrid-Aktivierungen zu verwenden, wenn Sie nicht über eine bestehende Public Key-Infrastruktur (PKI) mit einer Zertifizierungsstelle (CA) und Zertifikaten für Ihre lokalen Umgebungen verfügen. Wenn Sie bereits über PKI und Zertifikate vor Ort verfügen, verwenden Sie IAM Roles Anywhere. AWS
IAM-Rolle für Hybridknoten
Bevor Sie Hybridknoten mit Ihrem Amazon EKS-Cluster verbinden können, müssen Sie eine IAM-Rolle erstellen, die mit AWS SSM-Hybrid-Aktivierungen oder AWS IAM Roles Anywhere für Ihre Hybridknoten-Anmeldeinformationen verwendet wird. Nach der Clustererstellung verwenden Sie diese Rolle mit einem Amazon EKS-Zugriffseintrag oder aws-auth ConfigMap einem Eintrag, um die IAM-Rolle Kubernetes Role-Based Access Control (RBAC) zuzuordnen. Weitere Informationen zum Verknüpfen der IAM-Rolle für Hybridknoten mit Kubernetes RBAC finden Sie unter Vorbereitung des Cluster-Zugriffs für Hybridknoten.
Die IAM-Rolle für Hybridknoten muss auch über die folgenden Berechtigungen verfügen.
-
Berechtigungen für die Verwendung der
eks:DescribeClusterAktionnodeadmzum Sammeln von Informationen über den Cluster, mit dem Sie Hybridknoten verbinden möchten. Wenn Sie dieeks:DescribeClusterAktion nicht aktivieren, müssen Sie Ihren Kubernetes-API-Endpunkt, das Cluster-CA-Bundle und den IPv4 Service-CIDR in der Knotenkonfiguration übergeben, die Sie an den Befehl übergeben.nodeadm init -
Berechtigungen für
nodeadmdie Verwendung dereks:ListAccessEntriesAktion zum Auflisten der Zugriffseinträge auf dem Cluster, mit dem Sie Hybridknoten verbinden möchten. Wenn Sie dieeks:ListAccessEntriesAktion nicht aktivieren, müssen Sie das--skip cluster-access-validationFlag übergeben, wenn Sie dennodeadm initBefehl ausführen. -
Bei Verwendung von AWS SSM: Berechtigungen zur Verwendung der
ssm:DeregisterManagedInstanceAktion undssm:DescribeInstanceInformationAktion fürnodeadm uninstallzum Abmelden von Instanzen. -
(Optional) Berechtigungen für den Amazon EKS Pod Identity Agent zum Verwenden der Aktion
eks-auth:AssumeRoleForPodIdentity, um Anmeldeinformationen für Pods abzurufen.
Richten Sie SSM-Hybrid-Aktivierungen AWS ein
Bevor Sie AWS SSM-Hybrid-Aktivierungen einrichten, müssen Sie eine IAM-Rolle für Hybrid Nodes erstellt und konfiguriert haben. Weitere Informationen finden Sie unter Erstellung der IAM-Rolle für Hybridknoten. Folgen Sie den Anweisungen unter Hybrid-Aktivierung erstellen, um Knoten bei Systems Manager zu registrieren im AWS Systems Manager Manager-Benutzerhandbuch, um eine AWS SSM-Hybrid-Aktivierung für Ihre Hybridknoten zu erstellen. Der Aktivierungscode und die ID, die Sie erhalten, werden mit nodeadm verwendet, wenn Sie Ihre Hosts als Hybridknoten bei Ihrem Amazon-EKS-Cluster registrieren. Sie können zu einem späteren Zeitpunkt auf diesen Schritt zurückkommen, nachdem Sie Ihre Amazon-EKS-Cluster für Hybridknoten erstellt und vorbereitet haben.
Wichtig
Systems Manager übergibt den Aktivierungscode und die ID sofort an die Konsole oder das Befehlsfenster, je nachdem, wie Sie die Aktivierung erstellt haben. Kopieren Sie diese Informationen und speichern Sie sie an einem sicheren Ort. Wenn Sie die Konsole verlassen oder das Befehlsfenster schließen, können diese Informationen verloren gehen. Wenn Sie die Informationen verlieren, müssen Sie eine neue Aktivierung erstellen.
Standardmäßig sind AWS SSM-Hybrid-Aktivierungen 24 Stunden lang aktiv. Alternativ können Sie beim Erstellen Ihrer Hybridaktivierung ein --expiration-date im Zeitstempelformat angeben, beispielsweise 2024-08-01T00:00:00. Wenn Sie AWS SSM als Ihren Anmeldeinformationsanbieter verwenden, ist der Knotenname für Ihre Hybridknoten nicht konfigurierbar und wird automatisch von SSM generiert. AWS Sie können die von AWS SSM verwalteten Instanzen in der AWS Systems Manager-Konsole unter Fleet Manager anzeigen und verwalten. Sie können bis zu 1.000 standardmäßige, hybridaktivierte Knoten pro Konto und AWS Region ohne zusätzliche Kosten registrieren. Um mehr als 1 000 Hybrid-Knoten zu registrieren, müssen Sie jedoch das Advanced-Instances-Kontingent aktivieren. Für die Nutzung der Stufe „Erweiterte Instances“ wird eine Gebühr erhoben, die nicht in den Preisen für Amazon EKS Hybrid Nodes pricing
Im folgenden Beispiel erfahren Sie, wie Sie eine AWS SSM-Hybrid-Aktivierung mit Ihrer IAM-Rolle Hybrid Nodes erstellen. Wenn Sie AWS SSM-Hybrid-Aktivierungen für Ihre Hybridknoten-Anmeldeinformationen verwenden, haben die Namen Ihrer Hybridknoten das gleiche Format mi-012345678abcdefgh und die von AWS SSM bereitgestellten temporären Anmeldeinformationen sind 1 Stunde lang gültig. Sie können den Knotennamen oder die Dauer der Anmeldeinformationen nicht ändern, wenn Sie AWS SSM als Ihren Anmeldeinformationsanbieter verwenden. Die temporären Anmeldeinformationen werden von AWS SSM automatisch rotiert, und die Rotation hat keine Auswirkungen auf den Status Ihrer Knoten oder Anwendungen.
Wir empfehlen, dass Sie eine AWS SSM-Hybrid-Aktivierung pro EKS-Cluster verwenden, um die AWS ssm:DeregisterManagedInstance SSM-Berechtigungen der IAM-Rolle Hybrid Nodes so festzulegen, dass nur Instances abgemeldet werden können, die mit Ihrer SSM-Hybrid-Aktivierung verknüpft sind. AWS In dem Beispiel auf dieser Seite wird ein Tag mit dem EKS-Cluster-ARN verwendet, das verwendet werden kann, um Ihre AWS SSM-Hybridaktivierung dem EKS-Cluster zuzuordnen. Sie können alternativ Ihr bevorzugtes Tag und Ihre bevorzugte Methode verwenden, um den Umfang der AWS SSM-Berechtigungen auf der Grundlage Ihrer Berechtigungsgrenzen und Anforderungen festzulegen. Die REGISTRATION_LIMIT Option im folgenden Befehl ist eine Ganzzahl, die verwendet wird, um die Anzahl der Maschinen zu begrenzen, die die AWS SSM-Hybridaktivierung verwenden können (zum Beispiel) 10
aws ssm create-activation \ --region AWS_REGION \ --default-instance-name eks-hybrid-nodes \ --description "Activation for EKS hybrid nodes" \ --iam-role AmazonEKSHybridNodesRole \ --tags Key=EKSClusterARN,Value=arn:aws: eks:AWS_REGION:AWS_ACCOUNT_ID:cluster/CLUSTER_NAME \ --registration-limit REGISTRATION_LIMIT
Weitere Informationen zu den verfügbaren Konfigurationseinstellungen für AWS SSM-Hybrid-Aktivierungen finden Sie in den Anweisungen unter Hybrid-Aktivierung erstellen, um Knoten bei Systems Manager zu registrieren.
Richten Sie AWS IAM-Rollen überall ein
Befolgen Sie die Anweisungen unter Erste Schritte mit IAM Roles Anywhere im Benutzerhandbuch zu IAM Roles Anywhere, um den Trust Anchor und das Profil einzurichten, die Sie für temporäre IAM-Anmeldeinformationen für Ihre IAM-Rolle für Hybridknoten verwenden werden. Wenn Sie Ihr Profil erstellen, können Sie dies ohne Hinzufügen von Rollen tun. Sie können dieses Profil erstellen, zu diesen Schritten zurückkehren, um Ihre IAM-Rolle für Hybridknoten zu erstellen, und dann Ihre Rolle nach der Erstellung zu Ihrem Profil hinzufügen. Sie können auch die AWS CloudFormation Schritte weiter unten auf dieser Seite verwenden, um Ihr IAM Roles Anywhere-Setup für Hybridknoten abzuschließen.
Wenn Sie Ihrem Profil die IAM-Rolle Hybrid Nodes hinzufügen, wählen Sie im Bereich Sitzungsname für benutzerdefinierte Rolle unten auf der Seite Profil bearbeiten in der AWS IAM Roles Anywhere-Konsole die Option Sitzungsname der benutzerdefinierten Rolle akzeptieren aus. Dies entspricht dem Feld „acceptRoleSessionName“ der CreateProfile API. Auf diese Weise können Sie in der Konfiguration, die Sie während des Bootstrap-Prozesses an nodeadm übergeben, einen benutzerdefinierten Knotennamen für Ihre Hybridknoten angeben. Die Übergabe eines benutzerdefinierten Knotennamens während des nodeadm init-Prozesses ist erforderlich. Sie können Ihr Profil aktualisieren, um einen benutzerdefinierten Rollensitzungsnamen zu akzeptieren, nachdem Sie Ihr Profil erstellt haben.
Sie können die Gültigkeitsdauer der Anmeldeinformationen mit AWS IAM Roles Anywhere über das Feld DurationSeconds Ihres AWS IAM Roles Anywhere-Profils konfigurieren. Die Standarddauer beträgt 1 Stunde, maximal 12 Stunden. Die MaxSessionDuration Einstellung in Ihrer IAM-Rolle für Hybrid Nodes muss größer sein als die durationSeconds Einstellung in Ihrem IAM Roles Anywhere-Profil. AWS Weitere Informationen dazu finden Sie in der MaxSessionDuration UpdateRole API-Dokumentation.
Die von Ihrer Zertifizierungsstelle (CA) generierten rechnerspezifischen Zertifikate und Schlüssel müssen in dem /etc/iam/pki-Verzeichnis auf jedem Hybridknoten mit den Dateinamen server.pem für das Zertifikat und server.key für den Schlüssel abgelegt werden.
Erstellung der IAM-Rolle für Hybridknoten
Um die Schritte in diesem Abschnitt auszuführen, muss der IAM-Principal, der die AWS Konsole oder AWS CLI verwendet, über die folgenden Berechtigungen verfügen.
-
iam:CreatePolicy -
iam:CreateRole -
iam:AttachRolePolicy -
Wenn Sie AWS IAM Roles Anywhere verwenden
-
rolesanywhere:CreateTrustAnchor -
rolesanywhere:CreateProfile -
iam:PassRole
-
AWS CloudFormation
Installieren und konfigurieren Sie die AWS CLI, falls Sie dies noch nicht getan haben. Siehe Installation oder Aktualisierung auf die letzte Version der AWS CLI.
Schritte für AWS SSM-Hybrid-Aktivierungen
Der CloudFormation Stack erstellt die IAM-Rolle Hybrid Nodes mit den oben beschriebenen Berechtigungen. Die CloudFormation Vorlage erstellt die AWS SSM-Hybrid-Aktivierung nicht.
-
Laden Sie die AWS CloudFormation SSM-Vorlage für Hybridknoten herunter:
curl -OL 'https://raw.githubusercontent.com/aws/eks-hybrid/refs/heads/main/example/hybrid-ssm-cfn.yaml' -
Erstellen Sie einen
cfn-ssm-parameters.jsonmit den folgenden Optionen:-
Ersetzen Sie
ROLE_NAMEdurch den Namen Ihrer IAM-Rolle für Hybridknoten. Standardmäßig verwendetAmazonEKSHybridNodesRoledie CloudFormation Vorlage den Namen der Rolle, die sie erstellt, wenn Sie keinen Namen angeben. -
TAG_KEYErsetzen Sie es durch den AWS SSM-Ressourcen-Tag-Schlüssel, den Sie bei der Erstellung Ihrer AWS SSM-Hybrid-Aktivierung verwendet haben. Die Kombination aus Tag-Schlüssel und Tag-Wert wird in der Bedingung verwendet, dass nur die IAM-Rolle Hybrid Nodes die Registrierung der mit AWS SSM verwalteten Instanzen, die mit Ihrer SSM-Hybrid-Aktivierung verknüpft sind, aufheben darf.ssm:DeregisterManagedInstanceAWS In der Vorlage ist der Standardwert CloudFormation .TAG_KEYEKSClusterARN -
TAG_VALUEErsetzen Sie es durch den Wert des AWS SSM-Ressourcen-Tags, den Sie bei der Erstellung Ihrer AWS SSM-Hybrid-Aktivierung verwendet haben. Die Kombination aus Tag-Schlüssel und Tag-Wert wird in der Bedingung verwendet, dass nur die IAM-Rolle Hybrid Nodes die Registrierung der mit AWS SSM verwalteten Instanzen, die mit Ihrer SSM-Hybrid-Aktivierung verknüpft sind, aufheben darf.ssm:DeregisterManagedInstanceAWS Wenn Sie den StandardwertTAG_KEYvonEKSClusterARNverwenden, übergeben Sie Ihren EKS-Cluster-ARN alsTAG_VALUE. EKS-Cluster haben das Format. ARNsarn:aws: eks:AWS_REGION:AWS_ACCOUNT_ID:cluster/CLUSTER_NAME{ "Parameters": { "RoleName": "ROLE_NAME", "SSMDeregisterConditionTagKey": "TAG_KEY", "SSMDeregisterConditionTagValue": "TAG_VALUE" } }
-
-
Stellen Sie den CloudFormation Stack bereit.
STACK_NAMEErsetzen Sie ihn durch Ihren Namen für den CloudFormation Stack.aws cloudformation deploy \ --stack-name STACK_NAME \ --template-file hybrid-ssm-cfn.yaml \ --parameter-overrides file://cfn-ssm-parameters.json \ --capabilities CAPABILITY_NAMED_IAM
Schritte für AWS IAM Roles Anywhere
Der CloudFormation Stack erstellt den AWS IAM Roles Anywhere-Vertrauensanker mit der von Ihnen konfigurierten Zertifizierungsstelle (CA), erstellt das AWS IAM Roles Anywhere-Profil und erstellt die IAM-Rolle Hybrid Nodes mit den zuvor beschriebenen Berechtigungen.
-
So richten Sie eine Zertifizierungsstelle (CA) ein:
-
Um eine AWS private CA-Ressource zu verwenden, öffnen Sie die AWS Private Certificate
Authority-Konsole. Befolgen Sie die Anweisungen im Benutzerhandbuch der privaten AWS -Zertifizierungsstelle. -
Um eine externe Zertifizierungsstelle zu verwenden, befolgen Sie die Anweisungen der Zertifizierungsstelle. Die Zertifizierungsstelle geben Sie in einem späteren Schritt an.
-
Öffentlich ausgestellte Zertifikate CAs können nicht als Vertrauensanker verwendet werden.
-
-
Laden Sie die AWS IAM Roles CloudFormation Anywhere-Vorlage für Hybridknoten herunter
curl -OL 'https://raw.githubusercontent.com/aws/eks-hybrid/refs/heads/main/example/hybrid-ira-cfn.yaml' -
Erstellen Sie einen
cfn-iamra-parameters.jsonmit den folgenden Optionen:-
Ersetzen Sie
ROLE_NAMEdurch den Namen Ihrer IAM-Rolle für Hybridknoten. Standardmäßig verwendetAmazonEKSHybridNodesRoledie CloudFormation Vorlage den Namen der Rolle, die sie erstellt, wenn Sie keinen Namen angeben. -
Ersetzen Sie
CERT_ATTRIBUTEdurch das rechnerspezifische Zertifikatsattribut, das Ihren Host eindeutig identifiziert. Das von Ihnen verwendete Zertifikatsattribut muss mit dem nodeName übereinstimmen, den Sie für dienodeadm-Konfiguration verwenden, wenn Sie Ihrem Cluster Hybridknoten zuordnen. Weitere Informationen hierzu finden Sie unter nodeadm-Referenz für Hybridknoten. Standardmäßig verwendet die CloudFormation Vorlage${aws:PrincipalTag/x509Subject/CN}asCERT_ATTRIBUTE, was dem CN-Feld Ihrer Computerzertifikate entspricht. Alternativ können Sie$(aws:PrincipalTag/x509SAN/Name/CN}alsCERT_ATTRIBUTEübergeben. -
Ersetzen Sie
CA_CERT_BODYdurch den Zertifikatstext Ihrer Zertifizierungsstelle ohne Zeilenumbrüche. DasCA_CERT_BODYmüssen im Privacy Enhanced Mail (PEM)-Format vorliegen. Wenn Sie ein CA-Zertifikat im PEM-Format haben, entfernen Sie die Zeilenumbrüche und die Zeilen BEGIN CERTIFICATE und END CERTIFICATE, bevor Sie den CA-Zertifikatstext in Ihrecfn-iamra-parameters.json-Datei einfügen.{ "Parameters": { "RoleName": "ROLE_NAME", "CertAttributeTrustPolicy": "CERT_ATTRIBUTE", "CABundleCert": "CA_CERT_BODY" } }
-
-
Stellen Sie die CloudFormation Vorlage bereit.
STACK_NAMEErsetzen Sie es durch Ihren Namen für den CloudFormation Stack.aws cloudformation deploy \ --stack-name STACK_NAME \ --template-file hybrid-ira-cfn.yaml \ --parameter-overrides file://cfn-iamra-parameters.json --capabilities CAPABILITY_NAMED_IAM
AWS CLI
Installieren und konfigurieren Sie die AWS CLI, falls Sie dies noch nicht getan haben. Siehe Installation oder Aktualisierung auf die letzte Version der AWS CLI.
Erstellung einer EKS-Describe-Cluster-Richtlinie
-
Erstellen Sie eine Datei
eks-describe-cluster-policy.jsonmit dem folgenden Inhalt:{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "eks:DescribeCluster" ], "Resource": "*" } ] } -
Richtlinie mit dem folgenden Befehl erstellen:
aws iam create-policy \ --policy-name EKSDescribeClusterPolicy \ --policy-document file://eks-describe-cluster-policy.json
Schritte für AWS SSM-Hybrid-Aktivierungen
-
Erstellen Sie eine Datei mit dem Namen
eks-hybrid-ssm-policy.jsonund dem folgenden Inhalt. Die Richtlinie gewährt die Berechtigung für zwei Aktionenssm:DescribeInstanceInformationundssm:DeregisterManagedInstance. Die Richtlinie beschränkt diessm:DeregisterManagedInstanceZugriffsrechte auf AWS SSM-verwaltete Instanzen, die mit Ihrer AWS SSM-Hybrid-Aktivierung verknüpft sind, auf der Grundlage des Ressourcen-Tags, das Sie in Ihrer Vertrauensrichtlinie angeben.-
Ersetzen Sie es
AWS_REGIONdurch die AWS Region für Ihre AWS SSM-Hybrid-Aktivierung. -
Ersetzen Sie
AWS_ACCOUNT_IDdurch Ihre AWS Konto-ID. -
TAG_KEYErsetzen Sie es durch den AWS SSM-Ressourcen-Tag-Schlüssel, den Sie bei der Erstellung Ihrer AWS SSM-Hybrid-Aktivierung verwendet haben. Die Kombination aus Tag-Schlüssel und Tag-Wert wird in der Bedingung verwendet, dass nur die IAM-Rolle Hybrid Nodes die Registrierung der mit AWS SSM verwalteten Instanzen, die mit Ihrer SSM-Hybrid-Aktivierung verknüpft sind, aufheben darf.ssm:DeregisterManagedInstanceAWS In der Vorlage ist der Standardwert CloudFormation .TAG_KEYEKSClusterARN -
TAG_VALUEErsetzen Sie es durch den Wert des AWS SSM-Ressourcen-Tags, den Sie bei der Erstellung Ihrer AWS SSM-Hybrid-Aktivierung verwendet haben. Die Kombination aus Tag-Schlüssel und Tag-Wert wird in der Bedingung verwendet, dass nur die IAM-Rolle Hybrid Nodes die Registrierung der mit AWS SSM verwalteten Instanzen, die mit Ihrer SSM-Hybrid-Aktivierung verknüpft sind, aufheben darf.ssm:DeregisterManagedInstanceAWS Wenn Sie den StandardwertTAG_KEYvonEKSClusterARNverwenden, übergeben Sie Ihren EKS-Cluster-ARN alsTAG_VALUE. EKS-Cluster haben das Format. ARNsarn:aws: eks:AWS_REGION:AWS_ACCOUNT_ID:cluster/CLUSTER_NAME{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ssm:DescribeInstanceInformation", "Resource": "*" }, { "Effect": "Allow", "Action": "ssm:DeregisterManagedInstance", "Resource": "arn:aws:ssm:us-east-1:123456789012:managed-instance/*", "Condition": { "StringEquals": { "ssm:resourceTag/TAG_KEY": "TAG_VALUE" } } } ] }
-
-
Richtlinie mit dem folgenden Befehl erstellen
aws iam create-policy \ --policy-name EKSHybridSSMPolicy \ --policy-document file://eks-hybrid-ssm-policy.json -
Erstellen Sie eine Datei namens
eks-hybrid-ssm-trust.json.AWS_REGIONErsetzen Sie es durch die AWS Region Ihrer AWS SSM-Hybrid-Aktivierung undAWS_ACCOUNT_IDdurch Ihre AWS Konto-ID.{ "Version":"2012-10-17", "Statement":[ { "Sid":"", "Effect":"Allow", "Principal":{ "Service":"ssm.amazonaws.com" }, "Action":"sts:AssumeRole", "Condition":{ "StringEquals":{ "aws:SourceAccount":"123456789012" }, "ArnEquals":{ "aws:SourceArn":"arn:aws:ssm:us-east-1:123456789012:*" } } } ] } -
Erstellen Sie die Rolle mit dem folgenden Befehl.
aws iam create-role \ --role-name AmazonEKSHybridNodesRole \ --assume-role-policy-document file://eks-hybrid-ssm-trust.json -
Fügen Sie
EKSDescribeClusterPolicyundEKSHybridSSMPolicyan, die Sie in den vorherigen Schritten erstellt haben. Ersetzen Sie esAWS_ACCOUNT_IDdurch Ihre AWS Konto-ID.aws iam attach-role-policy \ --role-name AmazonEKSHybridNodesRole \ --policy-arn arn:aws: iam::AWS_ACCOUNT_ID:policy/EKSDescribeClusterPolicyaws iam attach-role-policy \ --role-name AmazonEKSHybridNodesRole \ --policy-arn arn:aws: iam::AWS_ACCOUNT_ID:policy/EKSHybridSSMPolicy -
Hängen Sie die
AmazonEC2ContainerRegistryPullOnlyund dieAmazonSSMManagedInstanceCoreAWS verwalteten Richtlinien an.aws iam attach-role-policy \ --role-name AmazonEKSHybridNodesRole \ --policy-arn arn:aws: iam::aws:policy/AmazonEC2ContainerRegistryPullOnlyaws iam attach-role-policy \ --role-name AmazonEKSHybridNodesRole \ --policy-arn arn:aws: iam::aws:policy/AmazonSSMManagedInstanceCore
Schritte für AWS IAM Roles Anywhere
Um AWS IAM Roles Anywhere verwenden zu können, müssen Sie Ihren AWS IAM Roles Anywhere-Vertrauensanker einrichten, bevor Sie die IAM-Rolle Hybrid Nodes erstellen. Detaillierte Anweisungen finden Sie unter Richten Sie AWS IAM-Rollen überall ein.
-
Erstellen Sie eine Datei namens
eks-hybrid-iamra-trust.json. Ersetzen SieTRUST_ANCHOR ARNdurch die ARN des Trust Anchors, den Sie in den Richten Sie AWS IAM-Rollen überall ein-Schritten erstellt haben. Die Bedingung in dieser Vertrauensrichtlinie schränkt die Fähigkeit von AWS IAM Roles Anywhere ein, die IAM-Rolle Hybrid Nodes zum Austausch temporärer IAM-Anmeldeinformationen nur dann anzunehmen, wenn der Name der Rollensitzung mit der CN im x509-Zertifikat übereinstimmt, das auf Ihren Hybridknoten installiert ist. Alternativ können Sie auch andere Zertifikatsattribute verwenden, um Ihren Knoten eindeutig zu identifizieren. Das Zertifikatattribut, das Sie in der Vertrauensrichtlinie verwenden, muss demnodeNameentsprechen, das Sie in Ihrernodeadm-Konfiguration festgelegt haben. Weitere Informationen hierzu finden Sie unter nodeadm-Referenz für Hybridknoten.{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rolesanywhere.amazonaws.com" }, "Action": [ "sts:TagSession", "sts:SetSourceIdentity" ], "Condition": { "StringEquals": { "aws:PrincipalTag/x509Subject/CN": "${aws:PrincipalTag/x509Subject/CN}" }, "ArnEquals": { "aws:SourceArn": "arn:aws:rolesanywhere:us-east-1:123456789012:trust-anchor/TA_ID" } } }, { "Effect": "Allow", "Principal": { "Service": "rolesanywhere.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:RoleSessionName": "${aws:PrincipalTag/x509Subject/CN}", "aws:PrincipalTag/x509Subject/CN": "${aws:PrincipalTag/x509Subject/CN}" }, "ArnEquals": { "aws:SourceArn": "arn:aws:rolesanywhere:us-east-1:123456789012:trust-anchor/TA_ID" } } } ] } -
Erstellen Sie die Rolle mit dem folgenden Befehl.
aws iam create-role \ --role-name AmazonEKSHybridNodesRole \ --assume-role-policy-document file://eks-hybrid-iamra-trust.json -
Fügen Sie die
EKSDescribeClusterPolicyan, die Sie in den vorherigen Schritten erstellt haben. Ersetzen SieAWS_ACCOUNT_IDes durch Ihre Konto-ID. AWSaws iam attach-role-policy \ --role-name AmazonEKSHybridNodesRole \ --policy-arn arn:aws: iam::AWS_ACCOUNT_ID:policy/EKSDescribeClusterPolicy -
Hängen Sie die
AmazonEC2ContainerRegistryPullOnlyAWS verwaltete Richtlinie anaws iam attach-role-policy \ --role-name AmazonEKSHybridNodesRole \ --policy-arn arn:aws: iam::aws:policy/AmazonEC2ContainerRegistryPullOnly
AWS-Managementkonsole
Erstellung einer EKS-Describe-Cluster-Richtlinie
-
Amazon-IAM-Konsole
öffnen -
Wählen Sie im linken Navigationsbereich die Option Policies aus.
-
Wählen Sie auf der Seite Richtlinien die Option Richtlinie erstellen.
-
Wählen Sie auf der Seite „Berechtigungen festlegen“ im Bereich „Service auswählen“ die Option „EKS“ aus.
-
Filtern Sie Aktionen nach DescribeClusterund wählen Sie die Aktion DescribeClusterLesen aus.
-
Wählen Sie Weiter aus.
-
-
Auf der Seite Überprüfen und erstellen
-
Geben Sie einen Richtlinien-Namen ein, beispielsweise
EKSDescribeClusterPolicy. -
Wählen Sie Richtlinie erstellen aus.
-
Schritte für AWS SSM-Hybrid-Aktivierungen
-
Amazon-IAM-Konsole
öffnen -
Wählen Sie im linken Navigationsbereich die Option Policies aus.
-
Wählen Sie auf der Seite Richtlinien die Option Richtlinie erstellen.
-
Wählen Sie auf der Seite Berechtigungen angeben in der Navigationsleiste oben rechts im Richtlinien-Editor die Option JSON aus. Fügen Sie den folgenden Ausschnitt ein.
AWS_REGIONErsetzen Sie es durch die AWS Region Ihrer AWS SSM-Hybrid-Aktivierung undAWS_ACCOUNT_IDersetzen Sie es durch Ihre AWS Konto-ID. Ersetzen SieTAG_KEYundTAG_VALUEdurch den AWS SSM-Ressourcen-Tag-Schlüssel, den Sie bei der Erstellung Ihrer AWS SSM-Hybrid-Aktivierung verwendet haben.{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ssm:DescribeInstanceInformation", "Resource": "*" }, { "Effect": "Allow", "Action": "ssm:DeregisterManagedInstance", "Resource": "arn:aws:ssm:us-east-1:123456789012:managed-instance/*", "Condition": { "StringEquals": { "ssm:resourceTag/TAG_KEY": "TAG_VALUE" } } } ] }-
Wählen Sie Weiter aus.
-
-
Auf der Seite Überprüfen und erstellen.
-
Geben Sie einen Richtlinien-Namen für Ihre Richtlinie ein, beispielsweise
EKSHybridSSMPolicy. -
Wählen Sie Richtlinie erstellen aus.
-
-
Wählen Sie im linken Navigationsbereich Roles aus.
-
Klicken Sie auf der Seite Roles (Rollen) auf Create role (Rolle erstellen).
-
Gehen Sie auf der Seite Select trusted entity (Vertrauenswürdige Entität auswählen) wie folgt vor:
-
Wählen Sie unter Abschnittstyp Vertrauenswürdiger Entität die Option Benutzerdefinierte Vertrauensrichtlinie aus. Fügen Sie Folgendes in den Editor für benutzerdefinierte Vertrauensrichtlinien ein.
AWS_REGIONErsetzen Sie es durch die AWS Region Ihrer AWS SSM-Hybrid-Aktivierung und durch IhreAWS_ACCOUNT_IDAWS Konto-ID.{ "Version":"2012-10-17", "Statement":[ { "Sid":"", "Effect":"Allow", "Principal":{ "Service":"ssm.amazonaws.com" }, "Action":"sts:AssumeRole", "Condition":{ "StringEquals":{ "aws:SourceAccount":"123456789012" }, "ArnEquals":{ "aws:SourceArn":"arn:aws:ssm:us-east-1:123456789012:*" } } } ] } -
Wählen Sie Weiter aus.
-
-
Führen Sie auf der Seite Add permissions (Berechtigungen hinzufügen) die folgenden Schritte aus:
-
Geben Sie im Feld Filterrichtlinien
EKSDescribeClusterPolicyoder den Namen der oben erstellten Richtlinie ein. Aktivieren Sie in den Suchergebnissen das Kontrollkästchen links neben dem Namen Ihrer Richtlinie. -
Geben Sie im Feld Filterrichtlinien
EKSHybridSSMPolicyoder den Namen der oben erstellten Richtlinie ein. Aktivieren Sie in den Suchergebnissen das Kontrollkästchen links neben dem Namen Ihrer Richtlinie. -
Geben Sie im Feld Filter policies (Filterrichtlinien)
AmazonEC2ContainerRegistryPullOnlyein. Aktivieren Sie in den Suchergebnissen das Kontrollkästchen links nebenAmazonEC2ContainerRegistryPullOnly. -
Geben Sie im Feld Filter policies (Filterrichtlinien)
AmazonSSMManagedInstanceCoreein. Aktivieren Sie in den Suchergebnissen das Kontrollkästchen links nebenAmazonSSMManagedInstanceCore. -
Wählen Sie Weiter aus.
-
-
Gehen Sie auf der Seite Name, review, and create (Benennen, überprüfen und erstellen) wie folgt vor:
-
Geben Sie unter Role name (Rollenname) einen eindeutigen Namen für die Rolle ein, z. B.
AmazonEKSHybridNodesRole. -
Ersetzen Sie unter Description (Beschreibung) den aktuellen Text durch beschreibenden Text wie beispielsweise
Amazon EKS - Hybrid Nodes role. -
Wählen Sie Rolle erstellen aus.
-
Schritte für AWS IAM Roles Anywhere
Um AWS IAM Roles Anywhere verwenden zu können, müssen Sie Ihren AWS IAM Roles Anywhere-Vertrauensanker einrichten, bevor Sie die IAM-Rolle Hybrid Nodes erstellen. Detaillierte Anweisungen finden Sie unter Richten Sie AWS IAM-Rollen überall ein.
-
Amazon-IAM-Konsole
öffnen -
Wählen Sie im linken Navigationsbereich Roles aus.
-
Klicken Sie auf der Seite Roles (Rollen) auf Create role (Rolle erstellen).
-
Gehen Sie auf der Seite Select trusted entity (Vertrauenswürdige Entität auswählen) wie folgt vor:
-
Wählen Sie unter Abschnittstyp Vertrauenswürdiger Entität die Option Benutzerdefinierte Vertrauensrichtlinie aus. Fügen Sie Folgendes in den Editor für benutzerdefinierte Vertrauensrichtlinien ein. Ersetzen Sie
TRUST_ANCHOR ARNdurch die ARN des Trust Anchors, den Sie in den Richten Sie AWS IAM-Rollen überall ein-Schritten erstellt haben. Die Bedingung in dieser Vertrauensrichtlinie schränkt die Fähigkeit von AWS IAM Roles Anywhere ein, die IAM-Rolle Hybrid Nodes zum Austausch temporärer IAM-Anmeldeinformationen nur dann anzunehmen, wenn der Name der Rollensitzung mit der CN im x509-Zertifikat übereinstimmt, das auf Ihren Hybridknoten installiert ist. Alternativ können Sie auch andere Zertifikatsattribute verwenden, um Ihren Knoten eindeutig zu identifizieren. Das Zertifikatattribut, das Sie in der Vertrauensrichtlinie verwenden, muss dem Knotennamen entsprechen, den Sie in Ihrer nodeadm-Konfiguration festgelegt haben. Weitere Informationen hierzu finden Sie unter nodeadm-Referenz für Hybridknoten.{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rolesanywhere.amazonaws.com" }, "Action": [ "sts:TagSession", "sts:SetSourceIdentity" ], "Condition": { "StringEquals": { "aws:PrincipalTag/x509Subject/CN": "${aws:PrincipalTag/x509Subject/CN}" }, "ArnEquals": { "aws:SourceArn": "arn:aws:rolesanywhere:us-east-1:123456789012:trust-anchor/TA_ID" } } }, { "Effect": "Allow", "Principal": { "Service": "rolesanywhere.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:RoleSessionName": "${aws:PrincipalTag/x509Subject/CN}", "aws:PrincipalTag/x509Subject/CN": "${aws:PrincipalTag/x509Subject/CN}" }, "ArnEquals": { "aws:SourceArn": "arn:aws:rolesanywhere:us-east-1:123456789012:trust-anchor/TA_ID" } } } ] } -
Wählen Sie Weiter aus.
-
-
Führen Sie auf der Seite Add permissions (Berechtigungen hinzufügen) die folgenden Schritte aus:
-
Geben Sie im Feld Filterrichtlinien
EKSDescribeClusterPolicyoder den Namen der oben erstellten Richtlinie ein. Aktivieren Sie in den Suchergebnissen das Kontrollkästchen links neben dem Namen Ihrer Richtlinie. -
Geben Sie im Feld Filter policies (Filterrichtlinien)
AmazonEC2ContainerRegistryPullOnlyein. Aktivieren Sie in den Suchergebnissen das Kontrollkästchen links nebenAmazonEC2ContainerRegistryPullOnly. -
Wählen Sie Weiter aus.
-
-
Gehen Sie auf der Seite Name, review, and create (Benennen, überprüfen und erstellen) wie folgt vor:
-
Geben Sie unter Role name (Rollenname) einen eindeutigen Namen für die Rolle ein, z. B.
AmazonEKSHybridNodesRole. -
Ersetzen Sie unter Description (Beschreibung) den aktuellen Text durch beschreibenden Text wie beispielsweise
Amazon EKS - Hybrid Nodes role. -
Wählen Sie Rolle erstellen aus.
-