Memahami cara EKS Pod Identity kerja - Amazon EKS

Bantu tingkatkan halaman ini

Ingin berkontribusi pada panduan pengguna ini? Gulir ke bagian bawah halaman ini dan pilih Edit halaman ini GitHub. Kontribusi Anda akan membantu membuat panduan pengguna kami lebih baik untuk semua orang.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Memahami cara EKS Pod Identity kerja

Asosiasi Amazon EKS Pod Identity menyediakan kemampuan untuk mengelola kredensional untuk aplikasi Anda, mirip dengan cara profil EC2 instans Amazon memberikan kredensil ke instans Amazon. EC2

Amazon EKS Pod Identity menyediakan kredensil untuk beban kerja Anda dengan EKSAuth tambahan API dan pod agen yang berjalan di setiap node.

Di add-on Anda, seperti EKSadd-on Amazon dan pengontrol yang dikelola sendiri, operator, dan add-on lainnya, penulis perlu memperbarui perangkat lunak mereka untuk menggunakan yang terbaru. AWS SDKs Untuk daftar kompatibilitas antara EKS Pod Identity dan add-on yang diproduksi oleh AmazonEKS, lihat bagian EKSPembatasan Identitas Pod sebelumnya.

Menggunakan Identitas EKS Pod dalam kode Anda

Dalam kode Anda, Anda dapat menggunakan AWS SDKs untuk mengakses AWS layanan. Anda menulis kode untuk membuat klien untuk AWS layanan denganSDK, dan secara default SDK pencarian dalam rantai lokasi untuk AWS Identity and Access Management kredensi yang akan digunakan. Setelah kredensi yang valid ditemukan, pencarian dihentikan. Untuk informasi selengkapnya tentang lokasi default yang digunakan, lihat rantai penyedia kredenal di Panduan Referensi Alat AWS SDKs dan Alat.

EKSIdentitas Pod telah ditambahkan ke penyedia kredensi Container yang dicari dalam satu langkah dalam rantai kredensi default. Jika beban kerja Anda saat ini menggunakan kredensial yang sebelumnya ada di rantai kredensialnya, kredensial-kredensialnya akan terus digunakan meskipun Anda mengonfigurasi asosiasi EKS Pod Identity untuk beban kerja yang sama. Dengan cara ini Anda dapat dengan aman bermigrasi dari jenis kredensil lain dengan membuat asosiasi terlebih dahulu, sebelum menghapus kredensil lama.

Penyedia kredensial kontainer menyediakan kredensi sementara dari agen yang berjalan di setiap node. Di AmazonEKS, agennya adalah Agen Identitas EKS Pod Amazon dan di Amazon Elastic Container Service agennya adalahamazon-ecs-agent. Variabel lingkungan SDKs penggunaan untuk menemukan agen untuk terhubung ke.

Sebaliknya, IAMperan untuk akun layanan menyediakan token identitas web yang AWS SDK harus ditukar AWS Security Token Service dengan menggunakanAssumeRoleWithWebIdentity.

Bagaimana Agen Identitas EKS Pod bekerja dengan Pod

  1. Saat Amazon EKS memulai pod baru yang menggunakan akun layanan dengan asosiasi EKS Pod Identity, klaster akan menambahkan konten berikut ke Pod manifes:

    env: - name: AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE value: "/var/run/secrets/pods.eks.amazonaws.com/serviceaccount/eks-pod-identity-token" - name: AWS_CONTAINER_CREDENTIALS_FULL_URI value: "http://169.254.170.23/v1/credentials" volumeMounts: - mountPath: "/var/run/secrets/pods.eks.amazonaws.com/serviceaccount/" name: eks-pod-identity-token volumes: - name: eks-pod-identity-token projected: defaultMode: 420 sources: - serviceAccountToken: audience: pods.eks.amazonaws.com expirationSeconds: 86400 # 24 hours path: eks-pod-identity-token
  2. Kubernetesmemilih node mana untuk menjalankan pod. Kemudian, Amazon EKS Pod Identity Agent pada node menggunakan AssumeRoleForPodIdentityaction untuk mengambil kredensial sementara dari Auth. EKS API

  3. Agen Identitas EKS Pod membuat kredensial-kredensialnya tersedia untuk AWS SDKs yang Anda jalankan di dalam kontainer Anda.

  4. Anda menggunakan SDK dalam aplikasi Anda tanpa menentukan penyedia kredensi untuk menggunakan rantai kredensi default. Atau, Anda menentukan penyedia kredensi kontainer. Untuk informasi selengkapnya tentang lokasi default yang digunakan, lihat rantai penyedia kredenal di Panduan Referensi Alat AWS SDKs dan Alat.

  5. Mereka SDK menggunakan variabel lingkungan untuk terhubung ke EKS Pod Identity Agent dan mengambil kredensialnya.

    catatan

    Jika beban kerja Anda saat ini menggunakan kredensial yang sebelumnya ada di rantai kredensialnya, kredensial-kredensialnya akan terus digunakan meskipun Anda mengonfigurasi asosiasi EKS Pod Identity untuk beban kerja yang sama.