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.
AWS Resilience Hub Zugriff auf Ressourcen in Ihrem Amazon EKS-Cluster gewähren
AWS Resilience Hub ermöglicht Ihnen den Zugriff auf Ressourcen, die sich auf Amazon EKS-Clustern befinden, sofern Sie die erforderlichen Berechtigungen konfiguriert haben.
Um die erforderlichen Berechtigungen AWS Resilience Hub für die Erkennung und Bewertung von Ressourcen innerhalb des Amazon EKS-Clusters zu erteilen
-
Konfigurieren Sie eine IAM-Rolle für den Zugriff auf den Amazon EKS-Cluster.
Wenn Sie Ihre Anwendung mit rollenbasiertem Zugriff konfiguriert haben, können Sie diesen Schritt überspringen und mit Schritt 2 fortfahren und die Rolle verwenden, die Sie für die Erstellung der Anwendung verwendet haben. Weitere Informationen zur AWS Resilience Hub Verwendung von IAM-Rollen finden Sie unter. So funktioniert AWS Resilience Hub mit IAM
Wenn Sie Ihre Anwendung mit aktuellen IAM-Benutzerberechtigungen konfiguriert haben, müssen Sie die
AwsResilienceHubAssessmentEKSAccessRole
IAM-Rolle in demselben Konto wie das des Amazon EKS-Clusters erstellen. Diese IAM-Rolle wird dann beim Zugriff auf Ihren Amazon EKS-Cluster verwendet.AWS Resilience Hub Verwendet beim Import und der Bewertung Ihrer Anwendung eine IAM-Rolle, um auf die Ressourcen in Ihrem Amazon EKS-Cluster zuzugreifen. Diese Rolle sollte in demselben Konto wie Ihr Amazon EKS-Cluster erstellt werden. Sie wird einer Kubernetes-Gruppe zugeordnet, die die für die Bewertung Ihres Amazon EKS-Clusters erforderlichen Berechtigungen enthält. AWS Resilience Hub
Wenn sich Ihr Amazon EKS-Cluster in demselben Konto wie das AWS Resilience Hub aufrufende Konto befindet, sollte die Rolle mithilfe der folgenden IAM-Vertrauensrichtlinie erstellt werden. In dieser IAM-Vertrauensrichtlinie
caller_IAM_role
wird im Girokonto verwendet, um die APIs für aufzurufen. AWS Resilience HubAnmerkung
Das
caller_IAM_role
ist die Rolle, die Ihrem AWS Benutzerkonto zugeordnet ist.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::eks_cluster_account_id:role/caller_IAM_role" }, "Action": "sts:AssumeRole" } ] }
Wenn sich Ihr Amazon EKS-Cluster in einem Cross-Konto befindet (ein anderes Konto als das AWS Resilience Hub anrufende Konto), müssen Sie die
AwsResilienceHubAssessmentEKSAccessRole
IAM-Rolle mithilfe der folgenden IAM-Vertrauensrichtlinie erstellen:Anmerkung
Als Voraussetzung für den Zugriff auf den Amazon EKS-Cluster, der in einem anderen Konto als dem Konto des AWS Resilience Hub Benutzers bereitgestellt wird, müssen Sie den Zugriff mit mehreren Konten konfigurieren. Weitere Informationen finden Sie unter
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::eks_cluster_account_id:role/AwsResilienceHubExecutorRole" }, "Action": "sts:AssumeRole" } ] }
-
Erstellen Sie Rollen
ClusterRole
undClusterRoleBinding
(oderRoleBinding
) für die AWS Resilience Hub Anwendung.Erstellt
ClusterRole
und gewährtClusterRoleBinding
die erforderlichen Leseberechtigungen für AWS Resilience Hub die Analyse und Bewertung von Ressourcen, die Teil bestimmter Namespaces in Ihrem Amazon EKS-Cluster sind.AWS Resilience Hub ermöglicht es Ihnen, den Zugriff auf Ihre Namespaces für die Erstellung von Resilienzanalysen zu beschränken, indem Sie einen der folgenden Schritte ausführen:
-
Gewähren Sie der Anwendung Lesezugriff auf alle Namespaces. AWS Resilience Hub
AWS Resilience Hub Um die Resilienz von Ressourcen in allen Namespaces innerhalb eines Amazon EKS-Clusters zu bewerten, müssen Sie das folgende und erstellen.
ClusterRole
ClusterRoleBinding
-
resilience-hub-eks-access-cluster-role
(ClusterRole
) — Definiert die Berechtigungen, die für AWS Resilience Hub die Bewertung Ihres Amazon EKS-Clusters erforderlich sind. -
resilience-hub-eks-access-cluster-role-binding
(ClusterRoleBinding
) — Definiert eineresilience-hub-eks-access-group
in Ihrem Amazon EKS-Cluster benannte Gruppe, die ihren Benutzern die erforderlichen Berechtigungen zur Durchführung von Resilienzanalysen gewährt. AWS Resilience Hub
Die Vorlage, um der AWS Resilience Hub Anwendung Lesezugriff für alle Namespaces zu gewähren, lautet wie folgt:
cat << EOF | kubectl apply -f - apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: resilience-hub-eks-access-cluster-role rules: - apiGroups: - "" resources: - pods - replicationcontrollers - nodes verbs: - get - list - apiGroups: - apps resources: - deployments - replicasets verbs: - get - list - apiGroups: - policy resources: - poddisruptionbudgets verbs: - get - list - apiGroups: - autoscaling.k8s.io resources: - verticalpodautoscalers verbs: - get - list - apiGroups: - autoscaling resources: - horizontalpodautoscalers verbs: - get - list - apiGroups: - karpenter.sh resources: - provisioners verbs: - get - list - apiGroups: - karpenter.k8s.aws resources: - awsnodetemplates verbs: - get - list --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: resilience-hub-eks-access-cluster-role-binding subjects: - kind: Group name: resilience-hub-eks-access-group apiGroup: rbac.authorization.k8s.io roleRef: kind: ClusterRole name: resilience-hub-eks-access-cluster-role apiGroup: rbac.authorization.k8s.io --- EOF
-
-
Gewährung AWS Resilience Hub des Zugriffs auf das Lesen bestimmter Namespaces.
Sie können AWS Resilience Hub den Zugriff auf Ressourcen innerhalb eines bestimmten Satzes von Namespaces einschränken, indem Sie.
RoleBinding
Um dies zu erreichen, müssen Sie die folgenden Rollen erstellen:-
ClusterRole
— AWS Resilience Hub Um auf die Ressourcen in bestimmten Namespaces innerhalb eines Amazon EKS-Clusters zuzugreifen und dessen Resilienz zu bewerten, müssen Sie die folgenden Rollen erstellen.ClusterRole
-
resilience-hub-eks-access-cluster-role
— Gibt die erforderlichen Berechtigungen an, um die Ressourcen in bestimmten Namespaces zu bewerten. -
resilience-hub-eks-access-global-cluster-role
— Gibt die erforderlichen Berechtigungen an, um clusterbezogene Ressourcen, die keinem bestimmten Namespace zugeordnet sind, innerhalb Ihrer Amazon EKS-Cluster zu bewerten. AWS Resilience Hub erfordert Berechtigungen für den Zugriff auf Ressourcen im Clusterbereich (z. B. Knoten) in Ihrem Amazon EKS-Cluster, um die Ausfallsicherheit Ihrer Anwendung zu bewerten.
Die Vorlage zum Erstellen
ClusterRole
einer Rolle lautet wie folgt:cat << EOF | kubectl apply -f - apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: resilience-hub-eks-access-cluster-role rules: - apiGroups: - "" resources: - pods - replicationcontrollers verbs: - get - list - apiGroups: - apps resources: - deployments - replicasets verbs: - get - list - apiGroups: - policy resources: - poddisruptionbudgets verbs: - get - list - apiGroups: - autoscaling.k8s.io resources: - verticalpodautoscalers verbs: - get - list - apiGroups: - autoscaling resources: - horizontalpodautoscalers verbs: - get - list --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: resilience-hub-eks-access-global-cluster-role rules: - apiGroups: - "" resources: - nodes verbs: - get - list - apiGroups: - karpenter.sh resources: - provisioners verbs: - get - list - apiGroups: - karpenter.k8s.aws resources: - awsnodetemplates verbs: - get - list --- EOF
-
-
RoleBinding
Rolle — Diese Rolle gewährt die erforderlichen Berechtigungen für den AWS Resilience Hub Zugriff auf Ressourcen in bestimmten Namespaces. Das heißt, Sie müssen in jedem NamespaceRoleBinding
eine Rolle erstellen, um auf Ressourcen innerhalb des angegebenen AWS Resilience Hub Namespaces zugreifen zu können.Anmerkung
Wenn Sie Autoscaling verwenden
ClusterAutoscaler
, müssen Sie zusätzlich in der erstellenRoleBinding
.kube-system
Dies ist notwendig, um IhrenClusterAutoscaler
, der Teil deskube-system
Namespace ist, zu beurteilen.Auf diese Weise gewähren Sie AWS Resilience Hub die erforderlichen Berechtigungen, um Ressourcen innerhalb des
kube-system
Namespace zu bewerten und gleichzeitig Ihren Amazon EKS-Cluster zu bewerten.Die Vorlage zum Erstellen einer
RoleBinding
Rolle lautet wie folgt:cat << EOF | kubectl apply -f - apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: name: resilience-hub-eks-access-cluster-role-binding namespace: <namespace> subjects: - kind: Group name: resilience-hub-eks-access-group apiGroup: rbac.authorization.k8s.io roleRef: kind: ClusterRole name: resilience-hub-eks-access-cluster-role apiGroup: rbac.authorization.k8s.io --- EOF
-
ClusterRoleBinding
Rolle — Diese Rolle gewährt die erforderlichen Berechtigungen für den Zugriff AWS Resilience Hub auf Ressourcen im Clusterbereich.Die Vorlage zum Erstellen einer
ClusterRoleBinding
Rolle lautet wie folgt:cat << EOF | kubectl apply -f - --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: resilience-hub-eks-access-global-cluster-role-binding subjects: - kind: Group name: resilience-hub-eks-access-group apiGroup: rbac.authorization.k8s.io roleRef: kind: ClusterRole name: resilience-hub-eks-access-global-cluster-role apiGroup: rbac.authorization.k8s.io --- EOF
-
-
-
Aktualisieren Sie das
aws-auth ConfigMap
, um das derresilience-hub-eks-access-group
IAM-Rolle zuzuordnen, die für den Zugriff auf den Amazon EKS-Cluster verwendet wird.In diesem Schritt wird eine Zuordnung zwischen der in Schritt 1 verwendeten IAM-Rolle und der in Schritt 2 erstellten Kubernetes-Gruppe erstellt. Diese Zuordnung gewährt IAM-Rollen Berechtigungen für den Zugriff auf Ressourcen innerhalb des Amazon EKS-Clusters.
Anmerkung
-
ROLE-NAME
bezieht sich auf die IAM-Rolle, die für den Zugriff auf den Amazon EKS-Cluster verwendet wird.-
Wenn Ihre Anwendung für den rollenbasierten Zugriff konfiguriert ist, sollte es sich bei der Rolle entweder um die Rolle des Aufrufers oder um die Rolle des sekundären Kontos handeln, an die AWS Resilience Hub beim Erstellen der Anwendung übergeben wurde.
-
Wenn Ihre Anwendung so konfiguriert ist, dass sie den aktuellen IAM-Benutzer für den Zugriff auf Ressourcen verwendet, muss es der sein.
AwsResilienceHubAssessmentEKSAccessRole
-
-
ACCOUNT-ID
sollte die AWS Konto-ID des Amazon EKS-Clusters sein.
Sie können das auf
aws-auth
ConfigMap
eine der folgenden Arten erstellen:-
Verwenden von
eksctl
Verwenden Sie den folgenden Befehl, um das zu aktualisieren
aws-auth
ConfigMap
:eksctl create iamidentitymapping \ --cluster <cluster-name> \ --region=<region-code> \ --arn arn:aws:iam::<ACCOUNT-ID>:role/<ROLE-NAME>\ --group resilience-hub-eks-access-group \ --username AwsResilienceHubAssessmentEKSAccessRole
-
Sie können sie manuell bearbeiten,
aws-auth
ConfigMap
indem Sie die IAM-Rollendetails zummapRoles
AbschnittConfigMap
unter den Daten hinzufügen. Verwenden Sie den folgenden Befehl, um das zu bearbeiten.aws-auth
ConfigMap
kubectl edit -n kube-system configmap/aws-auth
mapRoles
Abschnitt besteht aus den folgenden Parametern:-
rolearn
— Der Amazon-Ressourcenname (ARN) der IAM-Rolle, die hinzugefügt werden soll.-
ARN-Syntax —
arn:aws:iam::<ACCOUNT-ID>:role/<ROLE-NAME>
.
-
-
username
— Der Benutzername in Kubernetes, der der IAM-Rolle () zugeordnet werden soll.AwsResilienceHubAssessmentEKSAccessRole
-
groups
— Die Gruppennamen sollten mit den in Schritt 2 () erstellten Gruppennamen übereinstimmen.resilience-hub-eks-access-group
Anmerkung
Wenn der
mapRoles
Abschnitt nicht existiert, müssen Sie diesen Abschnitt manuell hinzufügen.Verwenden Sie die folgende Vorlage, um die IAM-Rollendetails zum
mapRoles
AbschnittConfigMap
unter Daten hinzuzufügen.- groups: - resilience-hub-eks-access-group rolearn: arn:aws:iam::<ACCOUNT-ID>:role/<ROLE-NAME> username: AwsResilienceHubAssessmentEKSAccessRole
-
-