Cookie の設定を選択する

当社は、当社のサイトおよびサービスを提供するために必要な必須 Cookie および類似のツールを使用しています。当社は、パフォーマンス Cookie を使用して匿名の統計情報を収集することで、お客様が当社のサイトをどのように利用しているかを把握し、改善に役立てています。必須 Cookie は無効化できませんが、[カスタマイズ] または [拒否] をクリックしてパフォーマンス Cookie を拒否することはできます。

お客様が同意した場合、AWS および承認された第三者は、Cookie を使用して便利なサイト機能を提供したり、お客様の選択を記憶したり、関連する広告を含む関連コンテンツを表示したりします。すべての必須ではない Cookie を受け入れるか拒否するには、[受け入れる] または [拒否] をクリックしてください。より詳細な選択を行うには、[カスタマイズ] をクリックしてください。

Amazon EKS ノードの IAM ロール

フォーカスモード

このページの内容

Amazon EKS ノードの IAM ロール - アマゾン EKS

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

本ユーザーガイドの改善にご協力いただけませんか? すべてのページの右側のペインにある GitHub リンクで、このページの編集を選択してください。皆さまにご協力いただくことで、あらゆる人々に使いやすいユーザーガイドになります。

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

本ユーザーガイドの改善にご協力いただけませんか? すべてのページの右側のペインにある GitHub リンクで、このページの編集を選択してください。皆さまにご協力いただくことで、あらゆる人々に使いやすいユーザーガイドになります。

Amazon EKS ノード kubelet デーモンが、ユーザーに代わって AWS API への呼び出しを実行します。ノードは、IAM インスタンスプロファイルおよび関連ポリシーを通じて、これらの API コールのアクセス許可を受け取ります。ノードを起動してクラスターに登録する前に、起動するときに使用するノード用の IAM ロールを作成する必要があります。この要件は、Amazon が提供する Amazon EKS 最適化 AMI で起動されたノード、または使用する予定の他のノード AMI で起動されたノードに適用されます。さらに、この要件はマネージド型ノードグループとセルフマネージド型ノードの両方に適用されます。

注記

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

ノードを使用するには、次の アクセス許可を持つ IAM ロールを作成する必要があります。

  • kubelet が VPC 内の Amazon EC2 リソースを記述するためのアクセス許可 (AmazonEKSWorkerNodePolicy ポリシーで規定されているなど)。このポリシーは、Amazon EKS Pod Identity エージェントのアクセス許可も提供します。

  • kubelet が Amazon Elastic Container Registry (Amazon ECR) のコンテナイメージを使用するためのアクセス許可 (AmazonEC2ContainerRegistryPullOnly ポリシーで規定されているなど)。ネットワーキング用の組み込みアドオンは Amazon ECR のコンテナイメージを使用するポッドを実行するため、Amazon Elastic Container Registry (Amazon ECR) のコンテナイメージを使用する許可が必要です。

  • (オプション) Amazon EKS Pod Identity エージェントが eks-auth:AssumeRoleForPodIdentity アクションを使用してポッドの認証情報を取得するためのアクセス許可。AmazonEKSWorkerNodePolicy を使用しない場合は、EKS Pod Identity を使用するために、EC2 アクセス許可に加えてこのアクセス許可も付与する必要があります。

  • (任意) IRSA または EKS Pod Identity を使用して VPC CNI ポッドにアクセス許可を付与しない場合は、インスタンスロールで VPC CNI のアクセス許可を付与する必要があります。「AmazonEKS_CNI_Policy」マネージドポリシー (IPv4 ファミリーを使用してクラスターを作成した場合) または作成した IPv6 ポリシー (IPv6 ファミリーを使用してクラスターを作成した場合) のいずれかを使用できます。ただし、このロールにポリシーをアタッチするのではなく、Amazon VPC CNI アドオン専用の別のロールにポリシーをアタッチすることをお勧めします。Amazon VPC CNI アドオン用に別のロールを作成する方法の詳細については、「IRSA を使用するように アマゾン VPC CNI プラグインを設定する」を参照してください。

注記

Amazon EC2 ノードグループには、Fargate プロファイルとは異なる IAM ロールが必要です。詳細については、「Amazon EKS Pod 実行 IAM ロール」を参照してください。

既存のノードロールの確認

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

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

  2. 左のナビゲーションペインで、[ロール] を選択します。

  3. ロールのリストで eksNodeRoleAmazonEKSNodeRole、または NodeInstanceRole を検索します。これらの名前のいずれかを持つロールが存在しない場合、「Amazon EKS ノードでの IAM ロールの作成」を参照してロールを作成してください。eksNodeRoleAmazonEKSNodeRole、あるいは NodeInstanceRole を含むロールが存在する場合、そのロールを選択して、アタッチされているポリシーを表示します。

  4. [許可] を選択します。

  5. AmazonEKSWorkerNodePolicy および AmazonEC2ContainerRegistryPullOnly のマネージドポリシーがロールにアタッチされていること、またはカスタムポリシーが最小限の許可でアタッチされていることを確認します。

    注記

    AmazonEKS_CNI_Policy ポリシーがロールに添付されている場合は、それを削除して、代わりに aws-node Kubernetes サービスアカウントにマップされている IAM ロールに添付することをお勧めします。詳細については、「IRSA を使用するように アマゾン VPC CNI プラグインを設定する」を参照してください。

  6. [信頼関係] を選択し、[信頼ポリシーの編集] を選択します。

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

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

Amazon EKS ノードでの IAM ロールの作成

AWS Management Console または AWS CLI を使用して、ノードの IAM ロールを作成できます。

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

  2. 左のナビゲーションペインで、[ロール] を選択します。

  3. [ロール] ページで、[ロールの作成] を選択します。

  4. [信頼されたエンティティを選択] ページで、以下の操作を実行します。

    1. [信頼するエンティティのタイプ][AWS サービス] を選択します。

    2. [ユースケース] で、[EC2] を選択します。

    3. [Next] を選択します。

  5. [アクセス許可を追加] ページで、カスタムポリシーをアタッチするか、以下の操作を行います。

    1. [フィルタポリシー] ボックスに AmazonEKSWorkerNodePolicy と入力します。

    2. 検索結果の [AmazonEKSWorkerNodePolicy] の左にあるチェックボックスを選択します。

    3. [フィルターのクリア] を選択します。

    4. [フィルタポリシー] ボックスに AmazonEC2ContainerRegistryPullOnly と入力します。

    5. 検索結果の [AmazonEC2ContainerRegistryPullOnly] の左にあるチェックボックスを選択します。

      このロールか、aws-node Kubernetes サービスアカウントにマッピングされた別のロールのいずれかに、AmazonEKS_CNI_Policy マネージドポリシーまたは作成した IPv6 ポリシーをアタッチする必要もあります。このロールに対してではなく、Kubernetes サービスアカウントに関連付けられたロールに、ポリシーを割り当てることをお勧めします。詳細については、「IRSA を使用するように アマゾン VPC CNI プラグインを設定する」を参照してください。

    6. [Next] を選択します。

  6. [名前を付けて、レビューし、作成する] ページで、以下の操作を実行します。

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

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

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

    4. [ロールの作成] を選択します。

AWS CLI
  1. 次のコマンドを実行して、node-role-trust-relationship.json ファイルを作成します。

    cat >node-role-trust-relationship.json <<EOF { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sts:AssumeRole" ], "Principal": { "Service": [ "ec2.amazonaws.com" ] } } ] } EOF
  2. IAM ロールを作成します。

    aws iam create-role \ --role-name AmazonEKSNodeRole \ --assume-role-policy-document file://"node-role-trust-relationship.json"
  3. IAM ロールに、2 つの必須なマネージド IAM ポリシーをアタッチします。

    aws iam attach-role-policy \ --policy-arn arn:aws:iam::aws:policy/AmazonEKSWorkerNodePolicy \ --role-name AmazonEKSNodeRole aws iam attach-role-policy \ --policy-arn arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryPullOnly \ --role-name AmazonEKSNodeRole
  4. クラスターを作成した IP ファミリーに応じて、次の IAM ポリシーの 1 つを IAM ロールにアタッチします。ポリシーは、このロールまたは Amazon VPC CNI plugin for Kubernetes に使用される Kubernetes aws-node サービスアカウントに関連付けられたロールにアタッチする必要があります。Kubernetes サービスアカウントに関連付けられているロールにポリシーを割り当てることをお勧めします。Kubernetes サービスアカウントに関連付けられたロールにポリシーを割り当てるには、「IRSA を使用するように アマゾン VPC CNI プラグインを設定する」を参照しください。

    • IPv4

      aws iam attach-role-policy \ --policy-arn arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy \ --role-name AmazonEKSNodeRole
    • IPv6

      1. 次のテキストをコピーし、vpc-cni-ipv6-policy.json という名前のファイルに保存します。

        { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:AssignIpv6Addresses", "ec2:DescribeInstances", "ec2:DescribeTags", "ec2:DescribeNetworkInterfaces", "ec2:DescribeInstanceTypes" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": [ "arn:aws:ec2:*:*:network-interface/*" ] } ] }
      2. IAM ポリシーを作成する

        aws iam create-policy --policy-name AmazonEKS_CNI_IPv6_Policy --policy-document file://vpc-cni-ipv6-policy.json
      3. IAM ロールに IAM ポリシーをアタッチします。111122223333 は、ご自分のアカウント ID に置き換えます。

        aws iam attach-role-policy \ --policy-arn arn:aws:iam::111122223333:policy/AmazonEKS_CNI_IPv6_Policy \ --role-name AmazonEKSNodeRole
プライバシーサイト規約Cookie の設定
© 2025, Amazon Web Services, Inc. or its affiliates.All rights reserved.