

 **このページの改善にご協力ください** 

このユーザーガイドに貢献するには、すべてのページの右側のペインにある「**GitHub でこのページを編集する**」リンクを選択してください。

# Pod Identity を使用して Amazon EKS アドオンに IAM 役割を割り当てる
<a name="update-addon-role"></a>

特定の Amazon EKS アドオンではIAM 役割および許可が必要です。Pod Identity の関連付けを使用するように Amazon EKS アドオンを更新する前に、使用する役割とポリシーを検証します。詳細については「[Amazon EKS アドオンに関する IAM 情報を取得する](retreive-iam-info.md)」を参照してください。

1. 決定事項:
   +  `cluster-name` – アドオンをインストールするクラスターの名前。
   +  `addon-name` – インストールするアドオンの名前。
   +  `service-account-name` – アドオンで使用される Kubernetes サービスアカウントの名前。
   +  `iam-role-arn` – アドオンに十分なアクセス許可を持つ IAM 役割の ARN。役割にはEKS Pod Identity に必要な信頼ポリシーが必要です。詳細については「[Pod Identity の関連付けを作成する (AWS コンソール)](pod-id-association.md#pod-id-association-create)」を参照してください。

1. AWS CLI を使用してアドオンを更新します。同じ `--pod-identity-assocations` 構文を使用して、アドオンの作成時に Pod Identity の関連付けを指定することもできます。アドオンの更新中に Pod Identity の関連付けを指定すると、以前のすべての Pod Identity の関連付けが上書きされることに注意してください。

   ```
   aws eks update-addon --cluster-name <cluster-name> \
   --addon-name <addon-name> \
   --pod-identity-associations 'serviceAccount=<service-account-name>,roleArn=<role-arn>'
   ```

   例：

   ```
   aws eks update-addon --cluster-name mycluster \
   --addon-name aws-ebs-csi-driver \
   --pod-identity-associations 'serviceAccount=ebs-csi-controller-sa,roleArn=arn:aws:iam::123456789012:role/StorageDriver'
   ```

1. Pod Identity の関連付けが作成されたことを確認します:

   ```
   aws eks list-pod-identity-associations --cluster-name <cluster-name>
   ```

   成功すると、次のような出力が表示されます。EKS アドオンの OwnerARN を書き留めます。

   ```
   {
       "associations": [
           {
               "clusterName": "mycluster",
               "namespace": "kube-system",
               "serviceAccount": "ebs-csi-controller-sa",
               "associationArn": "arn:aws:eks:us-west-2:123456789012:podidentityassociation/mycluster/a-4wvljrezsukshq1bv",
               "associationId": "a-4wvljrezsukshq1bv",
               "ownerArn": "arn:aws:eks:us-west-2:123456789012:addon/mycluster/aws-ebs-csi-driver/9cc7ce8c-2e15-b0a7-f311-426691cd8546"
           }
       ]
   }
   ```