Bantu tingkatkan halaman ini
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Ingin berkontribusi pada panduan pengguna ini? Pilih Edit halaman ini pada GitHub tautan yang terletak di panel kanan setiap halaman. 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.
Simpan sistem file elastis dengan Amazon EFS
Amazon Elastic File System (Amazon EFS) menyediakan penyimpanan file tanpa server dan sepenuhnya elastis sehingga Anda dapat berbagi data file tanpa menyediakan atau mengelola kapasitas dan kinerja penyimpanan. Driver Amazon EFS Container Storage Interface (CSI)
Pertimbangan
-
Driver Amazon EFS CSI tidak kompatibel dengan gambar kontainer berbasis Windows.
-
Anda tidak dapat menggunakan penyediaan dinamis untuk volume persisten dengan
node Fargate, tetapi Anda dapat menggunakan penyediaan statis. -
Penyediaan dinamis
membutuhkan 1.2 atau lebih baru dari driver. Anda dapat menggunakan penyediaan statis untuk volume persisten menggunakan versi 1.1
driver pada versi kluster Amazon EKS yang didukung (lihatMemahami Kubernetes siklus hidup versi di EKS). -
Versi 1.3.2
atau yang lebih baru dari driver ini mendukung arsitektur Arm64, termasuk instance berbasis Amazon EC2 Graviton. -
Versi 1.4.2
atau yang lebih baru dari driver ini mendukung penggunaan FIPS untuk memasang sistem file. -
Catat kuota sumber daya untuk Amazon EFS. Misalnya, ada kuota 1000 titik akses yang dapat dibuat untuk setiap sistem file Amazon EFS. Untuk informasi selengkapnya, lihat Kuota sumber daya Amazon EFS yang tidak dapat Anda ubah.
-
Mulai versi 2.0.0
, driver ini beralih dari menggunakan stunnel
keefs-proxy
koneksi TLS. Ketikaefs-proxy
digunakan, itu akan membuka sejumlah thread yang sama dengan satu ditambah jumlah core untuk node yang sedang berjalan. -
Driver Amazon EFS CSI tidak kompatibel dengan Amazon EKS Hybrid Nodes.
Prasyarat
-
AWS Identity and Access Management (IAM) yang sudah ada OpenID Connect (OIDC) penyedia untuk cluster Anda. Untuk menentukan apakah Anda sudah memiliki satu, atau harus membuat satu, lihat Buat IAM OIDC penyedia untuk klaster Anda.
-
Versi
2.12.3
atau yang lebih baru atau versi1.27.160
atau yang lebih baru dari AWS Command Line Interface (AWS CLI) diinstal dan dikonfigurasi pada perangkat Anda atau. AWS CloudShell Untuk memeriksa versi Anda saat ini, gunakanaws --version | cut -d / -f2 | cut -d ' ' -f1
. Package manager sepertiyum
,apt-get
, atau Homebrew untuk macOS sering beberapa versi di belakang versi terbaru dari AWS CLI. Untuk menginstal versi terbaru, lihat Menginstal dan Konfigurasi cepat dengan aws configure di Panduan Pengguna Antarmuka Baris AWS Perintah. Versi AWS CLI yang diinstal AWS CloudShell mungkin juga beberapa versi di belakang versi terbaru. Untuk memperbaruinya, lihat Menginstal AWS CLI ke direktori home Anda di AWS CloudShell Panduan Pengguna. -
Alat baris
kubectl
perintah diinstal pada perangkat Anda atau AWS CloudShell. Versi dapat sama dengan atau hingga satu versi minor lebih awal atau lebih lambat dari versi Kubernetes versi cluster Anda. Misalnya, jika versi cluster Anda1.29
, Anda dapat menggunakankubectl
versi1.28
,1.29
, atau1.30
dengan itu. Untuk menginstal atau memutakhirkankubectl
, lihat Mengatur kubectl dan eksctl.
catatan
A Pod berjalan di Fargate secara otomatis memasang sistem file Amazon EFS, tanpa memerlukan langkah instalasi driver manual.
Langkah 1: Buat peran IAM
Driver Amazon EFS CSI memerlukan izin IAM untuk berinteraksi dengan sistem file Anda. Buat peran IAM dan lampirkan kebijakan AWS terkelola yang diperlukan padanya. Untuk menerapkan prosedur ini, Anda dapat menggunakan salah satu alat ini:
catatan
Langkah-langkah spesifik dalam prosedur ini ditulis untuk menggunakan driver sebagai add-on Amazon EKS. Untuk detail tentang instalasi yang dikelola sendiri, lihat Mengatur izin driver
eksctl
Jalankan perintah berikut untuk membuat peran IAM denganeksctl
. Ganti my-cluster
dengan nama cluster Anda dan AmazonEKS_EFS_CSI_DriverRole
dengan nama untuk peran Anda.
export cluster_name=my-cluster export role_name=AmazonEKS_EFS_CSI_DriverRole eksctl create iamserviceaccount \ --name efs-csi-controller-sa \ --namespace kube-system \ --cluster $cluster_name \ --role-name $role_name \ --role-only \ --attach-policy-arn arn:aws: iam::aws:policy/service-role/AmazonEFSCSIDriverPolicy \ --approve TRUST_POLICY=$(aws iam get-role --role-name $role_name --query 'Role.AssumeRolePolicyDocument' | \ sed -e 's/efs-csi-controller-sa/efs-csi-*/' -e 's/StringEquals/StringLike/') aws iam update-assume-role-policy --role-name $role_name --policy-document "$TRUST_POLICY"
AWS Management Console
Jalankan berikut ini untuk membuat peran IAM dengan AWS Management Console.
-
Buka konsol IAM di https://console.aws.amazon.com/iam/
. -
Di panel navigasi sebelah kiri, pilih Peran.
-
Pada halaman Peran, pilih Buat peran.
-
Pada halaman Pilih entitas tepercaya, lakukan hal berikut:
-
Di bagian Jenis entitas tepercaya, pilih Identitas web.
-
Untuk penyedia Identitas, pilih OpenID Connect URL penyedia untuk klaster Anda (seperti yang ditunjukkan di bawah Ikhtisar di Amazon EKS).
-
Untuk Audiens, pilih
sts.amazonaws.com
. -
Pilih Berikutnya.
-
-
Pada halaman Tambahkan izin, lakukan hal berikut:
-
Di dalam kotak Filter kebijakan, masukkan
AmazonEFSCSIDriverPolicy
. -
Pilih kotak centang di sebelah kiri yang
AmazonEFSCSIDriverPolicy
dikembalikan dalam pencarian. -
Pilih Berikutnya.
-
-
Pada halaman Nama, tinjau, dan buat, lakukan hal berikut:
-
Untuk nama Peran, masukkan nama unik untuk peran Anda, seperti
AmazonEKS_EFS_CSI_DriverRole
. -
Di bawah Tambahkan tag (Opsional), tambahkan metadata ke peran dengan melampirkan tag sebagai pasangan nilai kunci. Untuk informasi selengkapnya tentang penggunaan tanda di IAM, lihat Menandai sumber daya IAM di Panduan Pengguna IAM.
-
Pilih Buat peran.
-
-
Setelah peran dibuat, pilih peran di konsol untuk dibuka, dan kemudian diedit.
-
Pilih tab Trust relationship, lalu pilih Edit trust policy.
-
Temukan garis yang terlihat mirip dengan baris berikut:
"oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:aud": "sts.amazonaws.com"
Tambahkan baris berikut di atas baris sebelumnya. Ganti
region-code
dengan AWS Wilayah tempat cluster Anda berada. GantiEXAMPLED539D4633E53DE1B71EXAMPLE
dengan ID penyedia OIDC cluster Anda."oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:sub": "system:serviceaccount:kube-system:efs-csi-*",
-
Ubah
Condition
operator dari"StringEquals"
ke"StringLike"
. -
Pilih Perbarui kebijakan untuk menyelesaikan.
AWS CLI
Jalankan perintah berikut untuk membuat peran IAM dengan AWS CLI.
-
Lihat URL penyedia OIDC klaster Anda. Ganti
my-cluster
dengan nama klaster Anda. Jika output dari perintah adalahNone
, tinjau Prasyarat.aws eks describe-cluster --name my-cluster --query "cluster.identity.oidc.issuer" --output text
Contoh output adalah sebagai berikut.
https://oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE
-
Buat peran IAM yang memberikan tindakan.
AssumeRoleWithWebIdentity
-
Salin konten berikut ke file bernama
aws-efs-csi-driver-trust-policy
.json``. Ganti111122223333
dengan ID akun Anda. GantiEXAMPLED539D4633E53DE1B71EXAMPLE
danregion-code
dengan nilai yang dikembalikan pada langkah sebelumnya.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Federated": "arn:aws: iam::111122223333:oidc-provider/oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringLike": { "oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:sub": "system:serviceaccount:kube-system:efs-csi-*", "oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:aud": "sts.amazonaws.com" } } } ] }
-
Buat peran. Anda dapat mengubah
AmazonEKS_EFS_CSI_DriverRole
ke nama yang berbeda, tetapi jika Anda melakukannya, pastikan untuk mengubahnya juga dalam langkah berikutnya.aws iam create-role \ --role-name AmazonEKS_EFS_CSI_DriverRole \ --assume-role-policy-document file://"aws-efs-csi-driver-trust-policy.json"
-
-
Lampirkan kebijakan AWS terkelola yang diperlukan ke peran dengan perintah berikut.
aws iam attach-role-policy \ --policy-arn arn:aws: iam::aws:policy/service-role/AmazonEFSCSIDriverPolicy \ --role-name AmazonEKS_EFS_CSI_DriverRole
Langkah 2: Dapatkan driver Amazon EFS CSI
Kami menyarankan Anda menginstal driver Amazon EFS CSI melalui add-on Amazon EKS. Untuk menambahkan add-on Amazon EKS ke cluster Anda, lihatBuat add-on Amazon EKS. Untuk informasi selengkapnya tentang add-on, lihatAdd-on Amazon EKS. Jika Anda tidak dapat menggunakan add-on Amazon EKS, kami mendorong Anda untuk mengirimkan masalah tentang mengapa Anda tidak dapat ke repositori peta jalan GitHub Containers
Atau, jika Anda ingin instalasi yang dikelola sendiri dari driver Amazon EFS CSI, lihat Instalasi di
Langkah 3: Buat sistem file Amazon EFS
Untuk membuat sistem file Amazon EFS, lihat Membuat sistem file Amazon EFS untuk Amazon EKS
Langkah 4: Menyebarkan aplikasi sampel
Anda dapat menerapkan berbagai contoh aplikasi dan memodifikasinya sesuai kebutuhan. Untuk informasi selengkapnya, lihat Contoh