

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

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

# Amazon EKS 自動モードl ノードの IAM ロール
<a name="auto-create-node-role"></a>

**注記**  
クラスターの作成に使用したロールは使用できません。

ノードを作成する前に、次のパイプラインまたは同等のアクセス許可を持つ IAM ロールを作成する必要があります：
+  [Amazon EKSワーカーノードミニマルポリシー](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSWorkerNodeMinimalPolicy) 
+  [Amazon EC2コンテナレジストリプルオンリー](https://docs.aws.amazon.com/AmazonECR/latest/userguide/security-iam-awsmanpol.html#security-iam-awsmanpol-AmazonEC2ContainerRegistryPullOnly) 

## 既存のノードロールの確認
<a name="auto-create-node-role-check"></a>

以下の手順を使用して、アカウントに既に Amazon EKS ノードロールがあるかどうかが確認できます。

1. IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

1. 左のナビゲーションペインで、**[ロール]** を選択してください。

1. ロールのリストで `AmazonEKSAutoNodeRole` を検索します。これらの名前のいずれかを持つロールが存在しない場合は次のセクションの手順を参照してロールを作成します。`AmazonEKSAutoNodeRole` を含むロールがある場合はロールを選択して、アタッチされたポリシーを表示します。

1. **[許可]** を選択してください。

1. 上記の必要なポリシーまたは同等のカスタムポリシーがアタッチされていることを確認します。

1. **[信頼関係]** を選択し、**[信頼ポリシーの編集]** を選択してください。

1. 信頼関係に以下のポリシーが含まれていることを確認します。信頼関係が以下のポリシーと一致する場合、**[キャンセル]** を選択してください。信頼関係が一致しない場合、ポリシーを **[信頼ポリシーの編集]** ウィンドウにコピーし、**[ポリシーの更新]** を選択してください。

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Principal": {
           "Service": "ec2.amazonaws.com"
         },
         "Action": "sts:AssumeRole"
       }
     ]
   }
   ```

## Amazon EKS ノードでの IAM ロールの作成
<a name="auto-create-node-role-iam"></a>

AWS マネジメントコンソール または AWS CLI を使用して、ノードの IAM ロールを作成できます。

### AWS マネジメントコンソール
<a name="auto-create-node-role-console"></a>

1. IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

1. 左のナビゲーションペインで、**[ロール]** を選択してください。

1. **[ロール]** ページで、**[ロールの作成]** を選択してください。

1. **[信頼されたエンティティを選択]** ページで、以下の操作を実行してください：

   1. **[信頼するエンティティのタイプ]** で **[AWS サービス]** を選択してください。

   1. **[ユースケース]** で、**[EC2]** を選択してください。

   1. [** 次へ**] を選択してください。

1. **[アクセス許可を追加]** ページで、次のポリシーをアタッチします：
   +  [Amazon EKSワーカーノードミニマルポリシー](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonEKSWorkerNodeMinimalPolicy) 
   +  [Amazon EC2コンテナレジストリプルオンリー](https://docs.aws.amazon.com/AmazonECR/latest/userguide/security-iam-awsmanpol.html#security-iam-awsmanpol-AmazonEC2ContainerRegistryPullOnly) 

1. **[名前を付けて、レビューし、作成する]** ページで、以下の操作を実行してください：

   1. **[ロール名]** に、`AmazonEKSAutoNodeRole` などのロールの一意の名前を入力します。

   1. **[説明]** では現在のテキストを「`Amazon EKS - Node role`」などの説明文に置き換えます。

   1. **[タグの追加 (オプション)]** で、タグをキーバリューのペアとして添付して、メタデータをロールに追加します。IAM でのタグの使用に関する詳細については『*IAM ユーザーガイド*』の「[IAM リソースにタグを付ける](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html)」を参照してください。

   1. [**ロールの作成**] を選択してください。

### AWS CLI
<a name="auto-create-node-role-cli"></a>

 **ノード IAM ロールを作成する** 

前のステップの **node-trust-policy.json** ファイルを使用して、ロールを引き受けることができるエンティティを定義します。次のコマンドを実行してノード IAM ロールを作成します：

```
aws iam create-role \
    --role-name AmazonEKSAutoNodeRole \
    --assume-role-policy-document file://node-trust-policy.json
```

 **ロールの ARN をメモする** 

ロールを作成したら、ノード IAM ロールの ARN を取得して保存します。以降のステップでこの ARN が必要になります。次のコマンドを使用して ARN を取得します：

```
aws iam get-role --role-name AmazonEKSAutoNodeRole --query "Role.Arn" --output text
```

 **必要なポリシーをアタッチする** 

次の AWS マネージドポリシーをノード IAM ロールにアタッチして、必要なアクセス許可を付与します：

Amazon EKSワーカーノードミニマルポリシー をアタッチするには:

```
aws iam attach-role-policy \
    --role-name AmazonEKSAutoNodeRole \
    --policy-arn arn:aws:iam::aws:policy/AmazonEKSWorkerNodeMinimalPolicy
```

Amazon EC2コンテナレジストリプルオンリー をアタッチするには:

```
aws iam attach-role-policy \
    --role-name AmazonEKSAutoNodeRole \
    --policy-arn arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryPullOnly
```