쿠키 기본 설정 선택

당사는 사이트와 서비스를 제공하는 데 필요한 필수 쿠키 및 유사한 도구를 사용합니다. 고객이 사이트를 어떻게 사용하는지 파악하고 개선할 수 있도록 성능 쿠키를 사용해 익명의 통계를 수집합니다. 필수 쿠키는 비활성화할 수 없지만 '사용자 지정' 또는 ‘거부’를 클릭하여 성능 쿠키를 거부할 수 있습니다.

사용자가 동의하는 경우 AWS와 승인된 제3자도 쿠키를 사용하여 유용한 사이트 기능을 제공하고, 사용자의 기본 설정을 기억하고, 관련 광고를 비롯한 관련 콘텐츠를 표시합니다. 필수가 아닌 모든 쿠키를 수락하거나 거부하려면 ‘수락’ 또는 ‘거부’를 클릭하세요. 더 자세한 내용을 선택하려면 ‘사용자 정의’를 클릭하세요.

Amazon EKS 클러스터의 리소스에 대한 AWS Resilience Hub 액세스 권한 부여

포커스 모드
Amazon EKS 클러스터의 리소스에 대한 AWS Resilience Hub 액세스 권한 부여 - AWS 복원력 허브

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS Resilience Hub 를 사용하면 필요한 권한을 구성한 경우 Amazon EKS 클러스터에 있는 리소스에 액세스할 수 있습니다.

Amazon EKS 클러스터 내에서 리소스를 검색하고 평가하는 데 필요한 권한을 AWS Resilience Hub 에 부여하려면
  1. Amazon EKS 클러스터에 액세스할 수 있도록 IAM 역할을 구성합니다.

    역할 기반 액세스를 사용하여 애플리케이션을 구성한 경우 이 단계를 건너뛰고 2단계로 진행하여 애플리케이션을 생성하는 데 사용한 역할을 사용할 수 있습니다. AWS Resilience Hub 이 IAM roles 역할을 사용하는 방법에 대한 자세한 내용은 AWS Resilience Hub와 IAM의 작동 방식 단원을 참조하세요.

    현재 IAM 사용자 권한을 사용하여 애플리케이션을 구성한 경우 Amazon EKS 클러스터와 동일한 계정에 AwsResilienceHubAssessmentEKSAccessRole IAM 역할을 생성해야 합니다. 그러면 Amazon EKS 클러스터에 액세스하는 동안 이 IAM 역할이 사용됩니다.

    애플리케이션을 가져오고 평가하는 동안는 IAM 역할을 AWS Resilience Hub 사용하여 Amazon EKS 클러스터의 리소스에 액세스합니다. 이 역할은 Amazon EKS 클러스터와 동일한 계정에 생성되어야 하며 Amazon EKS 클러스터를 평가하는 AWS Resilience Hub 데에 필요한 권한이 포함된 Kubernetes 그룹과 매핑됩니다.

    Amazon EKS 클러스터가 AWS Resilience Hub 호출 계정과 동일한 계정에 있는 경우 다음 IAM 신뢰 정책을 사용하여 역할을 생성해야 합니다. 이 IAM 신뢰 정책에서 caller_IAM_role는 현재 계정에서 APIs를 호출하는 데 사용됩니다 AWS Resilience Hub.

    참고

    caller_IAM_role는 AWS 사용자 계정과 연결된 역할입니다.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::eks_cluster_account_id:role/caller_IAM_role" }, "Action": "sts:AssumeRole" } ] }

    Amazon EKS 클러스터가 교차 계정( AWS Resilience Hub 호출 계정과 다른 계정)에 있는 경우 다음 AwsResilienceHubAssessmentEKSAccessRole IAM 신뢰 정책을 사용하여 IAM 역할을 생성해야 합니다.

    참고

    사전 조건으로 AWS Resilience Hub 사용자 계정과 다른 계정에 배포된 Amazon EKS 클러스터에 액세스하려면 다중 계정 액세스를 구성해야 합니다. 자세한 내용은 단원을 참조하세요.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::eks_cluster_account_id:role/AwsResilienceHubExecutorRole" }, "Action": "sts:AssumeRole" } ] }
  2. AWS Resilience Hub 애플리케이션에 대한 ClusterRoleClusterRoleBinding (또는 RoleBinding) 역할을 생성합니다.

    ClusterRole 및를 생성ClusterRoleBinding하면가 Amazon EKS 클러스터의 특정 네임스페이스에 속하는 리소스를 분석하고 평가하는 AWS Resilience Hub 데 필요한 읽기 전용 권한을 부여합니다.

    AWS Resilience Hub 를 사용하면 다음 중 하나를 완료하여 복원력 평가를 생성하기 위해 네임스페이스에 대한 액세스를 제한할 수 있습니다.

    1. 모든 네임스페이스에 대한 읽기 액세스 권한을 AWS Resilience Hub 애플리케이션에 부여합니다.

      가 Amazon EKS 클러스터 내의 모든 네임스페이스에서 리소스의 복원력을 평가 AWS Resilience Hub 하려면 및 ClusterRole를 생성해야 합니다ClusterRoleBinding.

      • resilience-hub-eks-access-cluster-role (ClusterRole) -가 Amazon EKS 클러스터를 평가하는 AWS Resilience Hub 데 필요한 권한을 정의합니다.

      • resilience-hub-eks-access-cluster-role-binding(ClusterRoleBinding) — Amazon EKS 클러스터에서 resilience-hub-eks-access-group 이름이 지정된 그룹을 정의하여 AWS Resilience Hub에서 사용자에세 복원력 평가를 실행하기 위해 필요한 권한을 부여합니다.

      모든 네임스페이스에 대한 읽기 액세스 권한을 AWS Resilience Hub 애플리케이션에 부여하는 템플릿은 다음과 같습니다.

      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 - nodepools verbs: - get - list - apiGroups: - karpenter.k8s.aws resources: - awsnodetemplates - ec2nodeclasses 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
    2. 특정 네임스페이스 AWS Resilience Hub 를 읽을 수 있는 액세스 권한을 부여합니다.

      를 사용하여 특정 네임스페이스 세트 내의 리소스에 액세스 AWS Resilience Hub 하도록를 제한할 수 있습니다RoleBinding. 이를 위해서는 다음 역할을 생성해야 합니다.

      • ClusterRole - Amazon EKS 클러스터 내의 특정 네임스페이스에 있는 리소스에 액세스하고 복원력을 평가 AWS Resilience Hub 하려면 다음 ClusterRole 역할을 생성해야 합니다.

        • resilience-hub-eks-access-cluster-role— 특정 네임스페이스 내의 리소스를 평가하는 데 필요한 권한을 지정합니다.

        • resilience-hub-eks-access-global-cluster-role - Amazon EKS 클러스터 내에서 특정 네임스페이스와 연결되지 않은 클러스터 범위 리소스를 평가하는 데 필요한 권한을 지정합니다. 에는 애플리케이션의 복원력을 평가하기 위해 Amazon EKS 클러스터의 클러스터 범위 리소스(예: 노드)에 액세스할 수 있는 권한이 AWS Resilience Hub 필요합니다.

        ClusterRole 역할을 생성하기 위한 템플릿은 다음과 같습니다.

        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 - nodepools verbs: - get - list - apiGroups: - karpenter.k8s.aws resources: - awsnodetemplates - ec2nodeclasses verbs: - get - list --- EOF
      • RoleBinding 역할 -이 역할은가 특정 네임스페이스 내의 리소스에 액세스하는 AWS Resilience Hub 데 필요한 권한을 부여합니다. 즉, 각 네임스페이스에 RoleBinding 역할을 생성하여가 지정된 네임스페이스 내의 리소스 AWS Resilience Hub 에 액세스할 수 있도록 해야 합니다.

        참고

        ClusterAutoscaler을 자동 스케일링에 사용하는 경우 kube-system에서 추가로 RoleBinding를 생성해야 합니다. 이는 kube-system 네임스페이스의 일부인 ClusterAutoscaler을 평가하는 데 필요합니다.

        이렇게 하면 Amazon EKS 클러스터 AWS Resilience Hub 를 평가하는 동안 kube-system 네임스페이스 내의 리소스를 평가하는 데 필요한 권한을 부여할 수 있습니다.

        RoleBinding 역할을 생성하기 위한 템플릿은 다음과 같습니다.

        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 역할 -이 역할은가 클러스터 범위 리소스에 액세스하는 AWS Resilience Hub 데 필요한 권한을 부여합니다.

        ClusterRoleBinding 역할을 생성하기 위한 템플릿은 다음과 같습니다.

        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
  3. resilience-hub-eks-access-group를 Amazon EKS 클러스터에 액세스하는 데 사용되는 IAM 역할과 매핑하도록 aws-auth ConfigMap을 업데이트하세요.

    이 단계는 1단계에서 사용한 IAM 역할과 2단계에서 생성된 Kubernetes 그룹 간의 매핑을 생성합니다. 이 매핑은 Amazon EKS 클러스터 내의 리소스에 액세스할 수 있는 권한을 IAM 역할에 부여합니다.

    참고
    • ROLE-NAME은 Amazon EKS 클러스터에 액세스하는 데 사용되는 IAM 역할을 나타냅니다.

      • 애플리케이션이 역할 기반 액세스를 사용하도록 구성된 경우 역할은 애플리케이션을 생성하는 AWS Resilience Hub 동안 전달되는 호출자 역할 또는 보조 계정 역할이어야 합니다.

      • 현재 IAM 사용자를 사용하여 리소스에 액세스하도록 애플리케이션을 구성한 경우 해당 사용자는 반드시 AwsResilienceHubAssessmentEKSAccessRole이어야 합니다.

    • ACCOUNT-ID는 Amazon EKS 클러스터의 AWS 계정 ID여야 합니다.

    다음 방법 중 하나를 사용하여 aws-auth ConfigMap를 설치할 수 있습니다.

    • eksctl 사용하기

      다음 명령을 실행하여 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
    • ConfigMap 언더 데이터 mapRoles 섹션에 IAM 역할 세부 정보를 추가하여 aws-auth ConfigMap를 수동으로 편집할 수 있습니다. aws-auth ConfigMap를 편집하려면 다음 명령을 입력합니다.

      kubectl edit -n kube-system configmap/aws-auth

      mapRoles 섹션에는 다음 파라미터가 포함될 수 있습니다.

      • rolearn — 추가될 IAM 역할의 Amazon 리소스 이름(ARN)입니다.

        • ARN 구문 — arn:aws:iam::<ACCOUNT-ID>:role/<ROLE-NAME>.

      • username — Kubernetes 내에서 IAM 역할에 매핑할 사용자 이름(AwsResilienceHubAssessmentEKSAccessRole)

      • groups — 그룹 이름은 2단계 (resilience-hub-eks-access-group) 에서 만든 그룹 이름과 일치해야 합니다.

      참고

      mapRoles 섹션이 없는 경우 이 섹션을 수동으로 추가해야 합니다.

      다음 템플릿을 사용하여 ConfigMap 언더 데이터 mapRoles 섹션에 IAM 역할 세부 정보를 추가합니다.

      - groups: - resilience-hub-eks-access-group rolearn: arn:aws:iam::<ACCOUNT-ID>:role/<ROLE-NAME> username: AwsResilienceHubAssessmentEKSAccessRole
프라이버시사이트 이용 약관쿠키 기본 설정
© 2025, Amazon Web Services, Inc. 또는 계열사. All rights reserved.