Amazon EKS Pod Identity
始める前に
このセクションの環境を準備してください:
~$prepare-environment security/eks-pod-identity
これにより、ラボ環境に以下の変更が適用されます:
- Amazon DynamoDBテーブルの作成
- DynamoDBテーブルにアクセスするためのAmazonEKSワークロード用IAMロールの作成
- Amazon EKSクラスターにAWS Load Balancer Controllerのインストール
これらの変更を適用するTerraformはこちらで確認できます。
PodのコンテナにあるアプリケーションはサポートされているAWS SDKまたはAWS CLIを使用して、AWS Identity and Access Management(IAM)権限を使用してAWSサービスにAPIリクエストを行うことができます。例えば、アプリケーションはS3バケットにファイルをアップロードしたり、DynamoDBテーブルを照会したりする必要があるかもしれません。そのためにはAWS APIリクエストにAWS認証情報で署名する必要があります。EKS Pod Identitiesは、Amazon EC2インスタンスプロファイルがインスタンスに認証情報を提供するのと同様の方法で、アプリケーションの認証情報を管理する機能を提供します。AWS認証情報を作成してコンテナに配布したり、Amazon EC2インスタンスのロールを使用したりする代わりに、IAMロールをKubernetesのサービスアカウントに関連付け、Podがそれを使用するよう に設定できます。サポートされているSDKバージョンの正確なリストについては、EKSドキュメントをご確認ください。
このモジュールでは、サンプルアプリケーションコンポーネントの1つを再構成して、AWS APIを活用し、適切な権限を提供します。