このページの改善にご協力ください
本ユーザーガイドの改善にご協力いただけませんか? このページの下部までスクロールし、[GitHub でこのページの編集] を選択します。皆さまにご協力いただくことで、あらゆる人々に使いやすいユーザーガイドになります。
既存の aws-auth ConfigMap
エントリをアクセスエントリに移行する
クラスター上の aws-auth
ConfigMap
にエントリを追加した場合は、aws-auth
ConfigMap
内の既存のエントリのアクセスエントリを作成することをお勧めします。アクセスエントリを作成したら、そのエントリを ConfigMap
から削除できます。aws-auth
ConfigMap
のエントリにアクセスポリシーを関連付けることはできません。アクセスポリシーを IAM プリンシパルに関連付けるには、アクセスエントリを作成します。
重要
マネージドノードグループまたは Fargate プロファイルをクラスターに追加したときに Amazon EKS によって作成された既存の aws-auth
ConfigMap
エントリは削除しないでください。Amazon EKS が ConfigMap
で作成したエントリを削除すると、クラスターは正しく機能しなくなります。ただし、セルフマネージド型ノードグループのアクセスエントリを作成した後で、それらのエントリを削除することはできます。
前提条件
-
アクセスエントリとアクセスポリシーに関する知識。詳細については、EKS アクセスエントリを使用して Kubernetes へのアクセスを IAM ユーザーに許可するおよびアクセスポリシーをアクセスエントリに関連付けるを参照してください。
-
「IAM ロールまたはユーザーに Amazon EKS クラスター上の Kubernetes オブジェクトへのアクセスを許可する」のトピックの前提条件に記載されているバージョンと同じかそれ以降のプラットフォームバージョンの既存のクラスター。
-
デバイスまたは AWS CloudShell にインストールされている
eksctl
コマンドラインツールのバージョン0.191.0
以降。eksctl
をインストールまたはアップグレードするには、eksctl
ドキュメントの「インストール」を参照してください。 -
kube-system
名前空間内のaws-auth
ConfigMap
を変更する Kubernetes アクセス許可。 -
CreateAccessEntry
およびListAccessEntries
のアクセス許可を持つ AWS Identity and Access Management ロールまたはユーザー。詳細については、サービス認可リファレンスの「Amazon Elastic Kubernetes Service で定義されるアクション」を参照してください。
エントリを aws-auth ConfigMap
からアクセスエントリに移行するには
-
aws-auth ConfigMap
内の既存のエントリを表示します。my-cluster
の部分は、自分のクラスター名に置き換えます。eksctl get iamidentitymapping --cluster
my-cluster
出力例は次のとおりです。
ARN USERNAME GROUPS ACCOUNT arn:aws:iam::
111122223333
:role/EKS-my-cluster-Admins Admins system:masters arn:aws:iam::111122223333
:role/EKS-my-cluster-my-namespace-Viewers my-namespace-Viewers Viewers arn:aws:iam::111122223333
:role/EKS-my-cluster-self-managed-ng-1 system:node:{{EC2PrivateDNSName}} system:bootstrappers,system:nodes arn:aws:iam::111122223333
:user/my-user my-user arn:aws:iam::111122223333
:role/EKS-my-cluster-fargateprofile1 system:node:{{SessionName}} system:bootstrappers,system:nodes,system:node-proxier arn:aws:iam::111122223333
:role/EKS-my-cluster-managed-ng system:node:{{EC2PrivateDNSName}} system:bootstrappers,system:nodes -
前の出力で返された作成済み
ConfigMap
エントリのいずれかにアクセスエントリを作成します。アクセスエントリを作成するときは、出力で返されるARN
、USERNAME
、GROUPS
およびACCOUNT
と同じ値を指定してください。出力例では、最後の 2 つのエントリを除くすべてのエントリのアクセスエントリを作成します。これらのエントリは Fargate プロファイルとマネージド型ノードグループ用に Amazon EKS によって作成されたものだからです。 -
作成したすべてのアクセスエントリのエントリを
ConfigMap
から削除します。ConfigMap
からエントリを削除しない場合、IAM プリンシパル ARN のアクセスエントリの設定によってConfigMap
エントリが上書きされます。111122223333
は AWS アカウント ID に、EKS-my-cluster-my-namespace-Viewers
は、ConfigMap
のエントリに含まれるロールの名前に置き換えます。削除するエントリが IAM ロールではなく IAM ユーザー用のものである場合は、role
をuser
に、EKS-my-cluster-my-namespace-Viewers
をユーザー名に置き換えます。eksctl delete iamidentitymapping --arn arn:aws:iam::
111122223333
:role/EKS-my-cluster-my-namespace-Viewers
--clustermy-cluster