スキップしてコンテンツを表示

Amazon EKS クラスターにおける、IAM ロールに関する問題をトラブルシューティングする方法を教えてください。

所要時間2分
0

Amazon Elastic Kubernetes Service (Amazon EKS) クラスターでの AWS Identity and Access Management (IAM) ロールを管理し、権限に関連する問題を軽減したいです。

簡単な説明

Amazon EKS クラスターに対する適切なアクセス許可がない場合、次のいずれかのエラーが発生する可能性があります。

  • "Your current IAM principal doesn't have access to Kubernetes objects on this cluster"
  • "You must be logged in to the server (Unauthorized)"
  • "You must be logged in to the server (the server has asked for the client to provide credentials)"

これらのエラーは、次のいずれかの要因で発生する場合があります。

  • ユーザーまたはクライアント (AWS コマンドラインインターフェイス (AWS CLI) またはアプリケーション) が EKS クラスターで認証されなかった場合。
  • AWS アクセスキーまたはシークレットキーが無効な場合。
  • クラスターエンドポイントの URL が誤っている場合。
  • kubeconfig ファイルが正しく設定されていない場合。

この問題をトラブルシューティングするには、次の手順を実行します。

解決策

注: AWS CLI のコマンドの実行時にエラーが発生する場合は、「AWS CLI でのエラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。

認証情報と設定ファイルを確認する

AWS 認証情報を確認し、認証情報が有効であり、Amazon EKS クラスターに対する必要なアクセス許可があることを確認します。kubectl コマンドを実行すると、上記のいずれかのエラーが返される場合は、kubectl の構成に誤りがあります。

認証情報を確認するには、AWS CLI コマンド get-caller-identityを実行します。

aws sts get-caller-identity

クラスターで kubeconfig 構成ファイルを使用する場合は、ファイルの構成をレビューしてください。設定に誤りがある場合は、update-kubeconfig コマンドを実行してファイルを更新します。

aws eks update-kubeconfig

詳細については、「kubectl を Amazon EKS クラスターに接続するための kubeconfig ファイルを作成する」を参照してください。

Amazon EKS クラスターの認証方法をレビューする

Amazon EKS クラスターが構成マップを使用する場合

Amazon EKS クラスターが認証に構成マップを使用する場合は、CLI で設定を行い、同じ IAM ID を使用してクラスターにアクセスし、マップを編集します。Amazon EKS クラスターにアクセスできる ID がない場合は、クラスター作成者のロールを引き受けてから、構成マップを編集します。詳細については、「Amazon EKS でクラスターを作成した後に、他の IAM ユーザーやロールにクラスターへのアクセスを付与する方法を教えてください」を参照してください。

IAM ID がリストに表示されない場合、または IAM ID に設定ミスがある場合は、構成マップの IAM プリンシパルを更新します。詳細については、「Amazon EKS クラスターに IAM プリンシパルを追加する」を参照してください。

Amazon EKS クラスターが API 認証を使用する場合

Amazon EKS クラスターが認証に Amazon EKS API を使用する場合は、IAM ID にアクセスエントリを作成し、正しい権限を付与する必要があります。

IAM ID に関連するアクセスエントリの有無を確認するには、list-access-entries コマンドを実行します。

aws eks list-access-entries --cluster-name Your_cluster_name

注: Your_cluster_name をクラスター名に置き換えてください。

IAM ID に関連するアクセスエントリがない場合は、アクセスエントリを作成します。また、Amazon EKS クラスターに正しいアクセスポリシーがあることを確認してください。詳細については、「アクセスポリシーとアクセスエントリを関連付ける」を参照してください。

注: アクセスエントリによる手法は、Amazon EKS において、ロールベース認証制御 (RBAC) の代替としては機能しません。クラスターで Amazon EKS アクセスエントリと RBAC を併用すると、より具体的な構成を付与できます。詳細については、「簡素化された Amazon EKS アクセス管理制御に関する詳細」を参照してください。

関連情報

Amazon EKS での Amazon EMR の開始方法

Application Load Balancer でアプリケーションと HTTP トラフィックをルーティングする

Network Load Balancer で TCP トラフィックと UDP トラフィックをルーティングする

Amazon EKS クラスターとノードに関する問題のトラブルシューティング

AWS公式更新しました 5ヶ月前
コメントはありません

関連するコンテンツ