

 **이 페이지 개선에 도움 주기** 

이 사용자 가이드에 기여하려면 모든 페이지의 오른쪽 창에 있는 **GitHub에서 이 페이지 편집** 링크를 선택합니다.

# Amazon EKS Pod Identity 에이전트 설정
<a name="pod-id-agent-setup"></a>

Amazon EKS Pod Identity는 Amazon EC2 인스턴스 프로필이 Amazon EC2 인스턴스에 자격 증명을 제공하는 것과 비슷한 방식으로 애플리케이션에 대한 자격 증명을 관리하는 기능을 제공합니다.

Amazon EKS Pod Identity는 추가 **EKS Auth API와 각 노드에서 실행되는 에이전트 포드를 통해 워크로드에 보안 인증 정보를 제공합니다.

**작은 정보**  
EKS Auto Mode 클러스터에 EKS Pod Identity 에이전트를 설치할 필요가 없습니다. 이 기능은 EKS Auto Mode에 내장되어 있습니다.

## 고려 사항
<a name="pod-id-agent-considerations"></a>
+ 기본적으로 EKS Pod Identity Agent는 EKS Auto Mode 클러스터에 사전 설치되어 있습니다. 자세한 내용은 [EKS Auto Mode를 사용하여 클러스터 인프라 자동화](automode.md)를 참조하세요.
+ 기본적으로 EKS Pod Identity 에이전트는 포드의 `IPv4` 및 `IPv6` 주소에서 수신 대기하여 자격 증명을 요청합니다. 에이전트는 `IPv4`의 경우, 루프백(localhost) IP 주소 `169.254.170.23`을 사용하고 `IPv6`의 경우, localhost IP 주소 `[fd00:ec2::23]`을 사용합니다.
+ `IPv6` 주소를 비활성화하거나 localhost `IPv6` IP 주소를 차단하는 경우 에이전트를 시작할 수 없습니다. `IPv6`을 사용할 수 없는 노드에서 에이전트를 시작하려면 [EKS Pod Identity 에이전트에서 `IPv6` 비활성화](pod-id-agent-config-ipv6.md)의 단계에 따라 `IPv6` 구성을 비활성화합니다.

## Amazon EKS Pod Identity 에이전트 생성
<a name="pod-id-agent-add-on-create"></a>

### 에이전트 필수 조건
<a name="pod-id-agent-prereqs"></a>

**중요**  
EKS Pod Identity Agent가 실행되는 노드는 EKS Auth API에 액세스할 수 있어야 합니다. 노드에 프라이빗 서브넷을 사용하는 경우, EKS Auth API에 대한 AWS PrivateLink 인터페이스 엔드포인트를 설정해야 합니다. 자세한 내용은 [AWS PrivateLink를 사용하여 Amazon EKS에 액세스](vpc-interface-endpoints.md) 섹션을 참조하세요.
+ 기존 Amazon EKS 클러스터. 배포하려면 [Amazon EKS 시작하기](getting-started.md) 섹션을 참조하세요. 클러스터 버전 및 플랫폼 버전은 [EKS pod identity 클러스터 버전](pod-identities.md#pod-id-cluster-versions)에 나열된 버전과 동일한 버전 또는 이후 버전이어야 합니다.
+ 노드 역할에는 에이전트가 EKS Auth API에서 `AssumeRoleForPodIdentity` 작업을 수행할 수 있는 권한이 있습니다. [AWS 관리형 정책: AmazonEKSWorkerNodePolicy](security-iam-awsmanpol.md#security-iam-awsmanpol-amazoneksworkernodepolicy)를 사용하거나 다음과 유사한 사용자 지정 정책을 추가할 수 있습니다.

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Effect": "Allow",
              "Action": [
                  "eks-auth:AssumeRoleForPodIdentity"
              ],
              "Resource": "*"
          }
      ]
  }
  ```

  이 작업은 태그로 제한하여 에이전트를 사용하는 포드가 맡을 수 있는 역할을 제한할 수 있습니다.
+ 노드는 Amazon ECR에 연결하여 이미지를 다운로드할 수 있습니다. 추가 기능의 컨테이너 이미지는 [Amazon EKS 추가 기능의 Amazon 컨테이너 이미지 레지스트리 보기](add-ons-images.md)에 나열된 레지스트리에 있습니다.

  AWS Management Console의 **선택적 구성 설정**, 그리고 AWS CLI의 `--configuration-values`에서 이미지 위치를 변경하고 EKS 추가 기능에 대해 `imagePullSecrets`를 제공할 수 있습니다.

### AWS 콘솔을 사용하여 에이전트 설정
<a name="setup_agent_with_shared_aws_console"></a>

1. [Amazon EKS 콘솔](https://console.aws.amazon.com/eks/home#/clusters)을 엽니다.

1. 왼쪽 탐색 창에서 **클러스터**를 선택한 다음 EKS Pod Identity 에이전트 추가 기능을 구성할 클러스터의 이름을 선택합니다.

1. **추가 기능** 탭을 선택합니다.

1. **추가 기능 더 가져오기**를 선택합니다.

1. EKS Pod Identity 에이전트 추가 기능 상자의 오른쪽 상단에 있는 상자를 선택하고 **다음**을 선택합니다.

1. **선택한 추가 기능 설정 구성** 페이지의 **버전** 드롭다운 목록에서 임의의 버전을 선택합니다.

1. (선택사항) **선택적 구성 설정**을 확장하여 추가 구성을 입력합니다. 예를 들어, 대체 컨테이너 이미지 위치 및 `ImagePullSecrets`를 제공할 수 있습니다. 허용된 키가 포함된 JSON Schema는 **추가 기능 구성 스키마**에 표시됩니다.

   **구성 값**에 구성 키와 값을 입력합니다.

1. **다음**을 선택합니다.

1. EKS Pod Identity 에이전트 포드가 클러스터에서 실행 중인지 확인합니다.

   ```
   kubectl get pods -n kube-system | grep 'eks-pod-identity-agent'
   ```

   예제 출력은 다음과 같습니다.

   ```
   eks-pod-identity-agent-gmqp7                                          1/1     Running   1 (24h ago)   24h
   eks-pod-identity-agent-prnsh                                          1/1     Running   1 (24h ago)   24h
   ```

   이제 클러스터에서 EKS Pod Identity 연결을 사용할 수 있습니다. 자세한 내용은 [Kubernetes 서비스 계정에 IAM 역할 할당](pod-id-association.md) 섹션을 참조하세요.

### AWS CLI를 사용하여 에이전트 설정
<a name="setup_agent_with_shared_aws_cli"></a>

1. 다음 AWS CLI 명령을 실행합니다. `my-cluster`를 클러스터 이름으로 바꿉니다.

   ```
   aws eks create-addon --cluster-name my-cluster --addon-name eks-pod-identity-agent --addon-version v1.0.0-eksbuild.1
   ```
**참고**  
EKS Pod Identity 에이전트는 *서비스 계정에 대한 IAM 역할*에 `service-account-role-arn`을 사용하지 않습니다. EKS Pod Identity 에이전트에 노드 역할의 권한을 제공해야 합니다.

1. EKS Pod Identity 에이전트 포드가 클러스터에서 실행 중인지 확인합니다.

   ```
   kubectl get pods -n kube-system | grep 'eks-pod-identity-agent'
   ```

   예제 출력은 다음과 같습니다.

   ```
   eks-pod-identity-agent-gmqp7                                          1/1     Running   1 (24h ago)   24h
   eks-pod-identity-agent-prnsh                                          1/1     Running   1 (24h ago)   24h
   ```

   이제 클러스터에서 EKS Pod Identity 연결을 사용할 수 있습니다. 자세한 내용은 [Kubernetes 서비스 계정에 IAM 역할 할당](pod-id-association.md) 섹션을 참조하세요.