Bantu tingkatkan halaman ini
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Untuk berkontribusi pada panduan pengguna ini, pilih Edit halaman ini pada GitHub tautan yang terletak di panel kanan setiap halaman.
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Dengan driver Mountpoint for Amazon S3 Container Storage Interface (CSI)
Pertimbangan
-
Driver Mountpoint untuk Amazon S3 CSI saat ini tidak kompatibel dengan gambar kontainer berbasis Windows.
-
Driver Mountpoint untuk Amazon S3 CSI saat ini tidak kompatibel dengan Amazon EKS Hybrid Nodes.
-
Driver Mountpoint untuk Amazon S3 CSI tidak mendukung Fargate. AWS Namun, container yang berjalan di Amazon EC2 (baik dengan Amazon EKS atau instalasi Kubernetes kustom) didukung.
-
Driver Mountpoint untuk Amazon S3 CSI hanya mendukung penyediaan statis. Penyediaan dinamis, atau pembuatan bucket baru, tidak didukung.
catatan
Penyediaan statis mengacu pada penggunaan bucket Amazon S3 yang sudah ada yang ditentukan sebagai
bucketName
dalam objekvolumeAttributes
.PersistentVolume
Untuk informasi selengkapnya, lihat Penyediaan Statis aktif.GitHub -
Volume yang dipasang dengan driver Mountpoint untuk Amazon S3 CSI tidak mendukung semua fitur sistem file POSIX. Untuk detail tentang perilaku sistem file, lihat Mountpoint untuk perilaku sistem file Amazon S3 aktif
. GitHub
Prasyarat
-
Penyedia OpenID Connect (OIDC) AWS Identity and Access Management (IAM) yang sudah ada untuk klaster Anda. Untuk menentukan apakah Anda sudah memiliki satu, atau harus membuat satu, lihat Buat penyedia IAM OIDC untuk klaster Anda.
-
Versi 2.12.3 atau yang lebih baru dari AWS CLI diinstal dan dikonfigurasi pada perangkat Anda atau. AWS CloudShell
-
Alat baris
kubectl
perintah diinstal pada perangkat Anda atau AWS CloudShell. Versinya bisa sama dengan atau hingga satu versi minor lebih awal atau lebih lambat dari versi Kubernetes dari klaster 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.
Buat kebijakan IAM
Driver Mountpoint untuk Amazon S3 CSI memerlukan izin Amazon S3 untuk berinteraksi dengan sistem file Anda. Bagian ini menunjukkan cara membuat kebijakan IAM yang memberikan izin yang diperlukan.
Kebijakan contoh berikut mengikuti rekomendasi izin IAM untuk Mountpoint. Atau, Anda dapat menggunakan kebijakan AWS terkelola AmazonS3 FullAccess
Untuk informasi selengkapnya tentang izin yang disarankan untuk Mountpoint, lihat Izin IAM Mountpoint
-
Buka konsol IAM di https://console.aws.amazon.com/iam/
. -
Di panel navigasi di sebelah kiri, pilih Kebijakan.
-
Pada halaman Kebijakan, pilih Buat kebijakan.
-
Untuk editor Kebijakan, pilih JSON.
-
Di bawah Editor kebijakan, salin dan tempel yang berikut ini:
penting
Ganti
amzn-s3-demo-bucket1
dengan nama bucket Amazon S3 Anda sendiri.{ "Version": "2012-10-17", "Statement": [ { "Sid": "MountpointFullBucketAccess", "Effect": "Allow", "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws: s3:::amzn-s3-demo-bucket1" ] }, { "Sid": "MountpointFullObjectAccess", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject", "s3:AbortMultipartUpload", "s3:DeleteObject" ], "Resource": [ "arn:aws: s3:::amzn-s3-demo-bucket1/*" ] } ] }
Bucket direktori, diperkenalkan dengan kelas penyimpanan Amazon S3 Express One Zone, menggunakan mekanisme otentikasi yang berbeda dari bucket tujuan umum. Alih-alih menggunakan
s3:*
tindakan, Anda harus menggunakans3express:CreateSession
tindakan. Untuk informasi tentang bucket direktori, lihat Bucket direktori di Panduan Pengguna Amazon S3.Di bawah ini adalah contoh kebijakan hak istimewa paling tidak yang akan Anda gunakan untuk bucket direktori.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3express:CreateSession", "Resource": "arn:aws: s3express:us-west-2:111122223333:bucket/amzn-s3-demo-bucket1--usw2-az1--x-s3" } ] }
-
Pilih Berikutnya.
-
Pada halaman Tinjau dan buat, beri nama kebijakan Anda. Contoh walkthrough ini menggunakan nama.
AmazonS3CSIDriverPolicy
-
Pilih Buat kebijakan.
Membuat peran IAM
Driver Mountpoint untuk Amazon S3 CSI memerlukan izin Amazon S3 untuk berinteraksi dengan sistem file Anda. Bagian ini menunjukkan cara membuat peran IAM untuk mendelegasikan izin ini. Untuk membuat peran ini, Anda dapat menggunakan salah satu alat ini:
catatan
Kebijakan IAM AmazonS3CSIDriverPolicy
dibuat di bagian sebelumnya.
eksctl
Untuk membuat peran IAM driver Mountpoint untuk Amazon S3 CSI Anda dengan eksctl
Untuk membuat peran IAM dan akun layanan Kubernetes, jalankan perintah berikut. Perintah ini juga melampirkan kebijakan AmazonS3CSIDriverPolicy
IAM ke peran, membuat anotasi akun layanan Kubernetes (s3-csi-controller-sa
) dengan Nama Sumber Daya Amazon (ARN) peran IAM, dan menambahkan nama akun layanan Kubernetes ke kebijakan kepercayaan untuk peran IAM.
CLUSTER_NAME=my-cluster
REGION=region-code
ROLE_NAME=AmazonEKS_S3_CSI_DriverRole
POLICY_ARN=AmazonEKS_S3_CSI_DriverRole_ARN
eksctl create iamserviceaccount \
--name s3-csi-driver-sa \
--namespace kube-system \
--cluster $CLUSTER_NAME \
--attach-policy-arn $POLICY_ARN \
--approve \
--role-name $ROLE_NAME \
--region $REGION \
--role-only
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 Identity, pilih URL penyedia OpenID Connect untuk klaster Anda (seperti yang ditunjukkan di bawah Ikhtisar di Amazon EKS).
Jika tidak URLs ditampilkan, tinjau Prasyarat.
-
Untuk Audiens, pilih
sts.amazonaws.com
. -
Pilih Berikutnya.
-
-
Pada halaman Tambahkan izin, lakukan hal berikut:
-
Di kotak Filter kebijakan, masukkan Kebijakan AmazonS3CSIDriver.
catatan
Kebijakan ini dibuat di bagian sebelumnya.
-
Pilih kotak centang di sebelah kiri
AmazonS3CSIDriverPolicy
hasil yang dikembalikan dalam pencarian. -
Pilih Berikutnya.
-
-
Pada halaman Nama, tinjau, dan buat, lakukan hal berikut:
-
Untuk nama Peran, masukkan nama unik untuk peran Anda, seperti DriverRole Amazoneks_S3_CSI_.
-
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 baris yang serupa dengan yang berikut ini:
"oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:aud": "sts.amazonaws.com"
Tambahkan koma ke akhir baris sebelumnya, lalu tambahkan baris berikut setelahnya. Ganti
region-code
dengan AWS Wilayah tempat klaster Anda berada. GantiEXAMPLED539D4633E53DE1B71EXAMPLE
dengan ID penyedia OIDC cluster Anda."oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:sub": "system:serviceaccount:kube-system:s3-csi-driver-sa"
-
Pastikan
Condition
operator disetel ke"StringEquals"
. -
Pilih Perbarui kebijakan untuk menyelesaikan.
AWS CLI
-
Lihat URL penyedia OIDC untuk 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 IAM role, yang memberikan tindakan
AssumeRoleWithWebIdentity
untuk akun layanan Kubernetes.-
Salin konten berikut ke file bernama
aws-s3-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": { "StringEquals": { "oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:sub": "system:serviceaccount:kube-system:s3-csi-driver-sa", "oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:aud": "sts.amazonaws.com" } } } ] }
-
Buat peran. Anda dapat mengubah
AmazonEKS_S3_CSI_DriverRole
ke nama yang berbeda, tetapi jika Anda melakukannya, pastikan untuk mengubahnya juga dalam langkah berikutnya.aws iam create-role \ --role-name AmazonEKS_S3_CSI_DriverRole \ --assume-role-policy-document file://"aws-s3-csi-driver-trust-policy.json"
-
-
Lampirkan kebijakan IAM yang dibuat sebelumnya ke peran dengan perintah berikut.
aws iam attach-role-policy \ --policy-arn arn:aws: iam::aws:policy/AmazonS3CSIDriverPolicy \ --role-name AmazonEKS_S3_CSI_DriverRole
catatan
Kebijakan IAM
AmazonS3CSIDriverPolicy
dibuat di bagian sebelumnya. -
Lewati langkah ini jika Anda menginstal driver sebagai add-on Amazon EKS. Untuk instalasi driver yang dikelola sendiri, buat akun layanan Kubernetes yang dianotasi dengan ARN dari peran IAM yang Anda buat.
-
Simpan konten berikut ini ke file bernama
mountpoint-s3-service-account.yaml
. Ganti111122223333
dengan ID akun Anda.--- apiVersion: v1 kind: ServiceAccount metadata: labels: app.kubernetes.io/name: aws-mountpoint-s3-csi-driver name: mountpoint-s3-csi-controller-sa namespace: kube-system annotations: eks.amazonaws.com/role-arn: arn:aws: iam::111122223333:role/AmazonEKS_S3_CSI_DriverRole
-
Buat akun layanan Kubernetes di klaster Anda. Akun layanan Kubernetes (
mountpoint-s3-csi-controller-sa
) dianotasi dengan peran IAM yang Anda buat bernama.AmazonEKS_S3_CSI_DriverRole
kubectl apply -f mountpoint-s3-service-account.yaml
catatan
Ketika Anda menyebarkan plugin dalam prosedur ini, itu membuat dan dikonfigurasi untuk menggunakan akun layanan bernama
s3-csi-driver-sa
.
-
Instal Mountpoint untuk driver Amazon S3 CSI
Anda dapat menginstal driver Mountpoint untuk Amazon S3 CSI melalui add-on Amazon EKS. Anda dapat menggunakan alat berikut untuk menambahkan add-on ke cluster Anda:
Atau, Anda dapat menginstal driver Mountpoint untuk Amazon S3 CSI sebagai instalasi yang dikelola sendiri. Untuk petunjuk cara melakukan instalasi yang dikelola sendiri, lihat Instalasi aktif
Mulai dariv1.8.0
, Anda dapat mengonfigurasi taint untuk mentolerir Pod driver CSI. Untuk melakukan ini, tentukan satu set taint khusus untuk ditoleransi node.tolerations
atau tolorasikan semua noda. node.tolerateAllTaints
Untuk informasi selengkapnya, lihat Taints and Tolerations dalam dokumentasi
eksctl
Untuk menambahkan add-on Amazon S3 CSI menggunakan eksctl
Jalankan perintah berikut. Ganti my-cluster
dengan nama klaster Anda, 111122223333
dengan ID akun Anda, dan AmazonEKS_S3_CSI_DriverRole
dengan nama peran IAM yang dibuat sebelumnya.
eksctl create addon --name aws-mountpoint-s3-csi-driver --cluster my-cluster \ --service-account-role-arn arn:aws: iam::111122223333:role/AmazonEKS_S3_CSI_DriverRole --force
Jika Anda menghapus --force
opsi dan salah satu pengaturan add-on Amazon EKS bertentangan dengan pengaturan yang ada, pembaruan add-on Amazon EKS gagal, dan Anda menerima pesan kesalahan untuk membantu Anda menyelesaikan konflik. Sebelum menentukan opsi ini, pastikan add-on Amazon EKS tidak mengelola pengaturan yang perlu Anda kelola, karena pengaturan tersebut ditimpa dengan opsi ini. Untuk informasi selengkapnya tentang opsi lain untuk setelan ini, lihat Addonseksctl
dokumentasi. Untuk informasi selengkapnya tentang pengelolaan lapangan Amazon EKS Kubernetes, lihat. Tentukan bidang yang dapat Anda sesuaikan untuk add-on Amazon EKS
Anda dapat menyesuaikan eksctl
melalui file konfigurasi. Untuk informasi selengkapnya, lihat Bekerja dengan nilai konfigurasieksctl
dokumentasi. Contoh berikut menunjukkan bagaimana mentolerir semua noda.
# config.yaml
...
addons:
- name: aws-mountpoint-s3-csi-driver
serviceAccountRoleARN: arn:aws: iam::111122223333:role/AmazonEKS_S3_CSI_DriverRole
configurationValues: |-
node:
tolerateAllTaints: true
AWS Management Console
-
Buka konsol Amazon EKS
. -
Pada panel navigasi sebelah kiri, pilih Klaster.
-
Pilih nama cluster yang ingin Anda konfigurasikan add-on Mountpoint untuk Amazon S3 CSI.
-
Pilih tab Add-ons.
-
Pilih Get more add-ons
-
Pada halaman Pilih add-on, lakukan hal berikut:
-
Di bagian Amazon EKS-Addons, pilih kotak centang Mountpoint for Amazon S3 CSI Driver.
-
Pilih Berikutnya.
-
-
Pada halaman Configure selected add-ons settings, lakukan hal berikut:
-
Pilih Versi yang ingin Anda gunakan.
-
Untuk peran Pilih IAM, pilih nama peran IAM yang Anda lampirkan ke kebijakan IAM driver Mountpoint for Amazon S3 CSI.
-
(Opsional) Perbarui metode resolusi Konflik setelah memperluas pengaturan konfigurasi Opsional. Jika Anda memilih Override, satu atau beberapa pengaturan untuk add-on yang ada dapat ditimpa dengan pengaturan add-on Amazon EKS. Jika Anda tidak mengaktifkan opsi ini dan ada konflik dengan pengaturan yang ada, operasi gagal. Anda dapat menggunakan pesan kesalahan yang dihasilkan untuk memecahkan masalah konflik. Sebelum memilih opsi ini, pastikan add-on Amazon EKS tidak mengelola pengaturan yang perlu Anda kelola sendiri.
-
(Opsional) Konfigurasikan toleransi di bidang Nilai konfigurasi setelah memperluas pengaturan konfigurasi opsional.
-
Pilih Berikutnya.
-
-
Pada halaman Review dan add, pilih Create. Setelah penginstalan add-on selesai, Anda melihat add-on yang diinstal.
AWS CLI
Untuk menambahkan add-on Mountpoint untuk Amazon S3 CSI menggunakan CLI AWS
Jalankan perintah berikut. Ganti my-cluster
dengan nama klaster Anda, 111122223333
dengan ID akun Anda, dan AmazonEKS_S3_CSI_DriverRole
dengan nama peran yang dibuat sebelumnya.
aws eks create-addon --cluster-name my-cluster --addon-name aws-mountpoint-s3-csi-driver \ --service-account-role-arn arn:aws: iam::111122223333:role/AmazonEKS_S3_CSI_DriverRole
Anda dapat menyesuaikan perintah dengan --configuration-values
bendera. Contoh alternatif berikut menunjukkan bagaimana mentolerir semua noda.
aws eks create-addon --cluster-name my-cluster --addon-name aws-mountpoint-s3-csi-driver \
--service-account-role-arn arn:aws: iam::111122223333:role/AmazonEKS_S3_CSI_DriverRole \
--configuration-values '{"node":{"tolerateAllTaints":true}}'
Konfigurasikan Mountpoint untuk Amazon S3
Dalam kebanyakan kasus, Anda dapat mengonfigurasi Mountpoint untuk Amazon S3 hanya dengan nama bucket. Untuk petunjuk tentang mengonfigurasi Mountpoint untuk Amazon S3, lihat Mengonfigurasi Mountpoint untuk Amazon S3 aktif
Deploy aplikasi sampel
Anda dapat menerapkan penyediaan statis ke driver di bucket Amazon S3 yang ada. Untuk informasi selengkapnya, lihat Penyediaan statis aktif.
Hapus Mountpoint untuk Driver Amazon S3 CSI
Anda memiliki dua opsi untuk menghapus add-on Amazon EKS.
-
Pertahankan perangkat lunak add-on di cluster Anda — Opsi ini menghapus pengelolaan Amazon EKS dari pengaturan apa pun. Ini juga menghapus kemampuan Amazon EKS untuk memberi tahu Anda tentang pembaruan dan secara otomatis memperbarui add-on Amazon EKS setelah Anda memulai pembaruan. Namun, ini mempertahankan perangkat lunak add-on di cluster Anda. Opsi ini menjadikan add-on instalasi yang dikelola sendiri, bukan add-on Amazon EKS. Dengan opsi ini, tidak ada downtime untuk add-on. Perintah dalam prosedur ini menggunakan opsi ini.
-
Hapus perangkat lunak add-on sepenuhnya dari klaster Anda — Kami menyarankan Anda menghapus add-on Amazon EKS dari klaster Anda hanya jika tidak ada sumber daya di klaster Anda yang bergantung padanya. Untuk melakukan opsi ini, hapus
--preserve
dari perintah yang Anda gunakan dalam prosedur ini.
Jika add-on memiliki akun IAM yang terkait dengannya, akun IAM tidak akan dihapus.
Anda dapat menggunakan alat berikut untuk menghapus add-on Amazon S3 CSI:
eksctl
Untuk menghapus add-on Amazon S3 CSI menggunakan eksctl
Ganti my-cluster
dengan nama cluster Anda, lalu jalankan perintah berikut.
eksctl delete addon --cluster my-cluster --name aws-mountpoint-s3-csi-driver --preserve
AWS Management Console
-
Buka konsol Amazon EKS
. -
Pada panel navigasi sebelah kiri, pilih Klaster.
-
Pilih nama cluster yang ingin Anda hapus add-on Amazon EBS CSI.
-
Pilih tab Add-ons.
-
Pilih Mountpoint untuk Driver Amazon S3 CSI.
-
Pilih Hapus.
-
Dalam Hapus: Konfirmasi aws-mountpoint-s 3-csi-driver kotak dialog, lakukan hal berikut:
-
Jika Anda ingin Amazon EKS berhenti mengelola pengaturan untuk add-on, pilih Pertahankan di klaster. Lakukan ini jika Anda ingin mempertahankan perangkat lunak add-on di cluster Anda. Ini agar Anda dapat mengelola semua pengaturan add-on sendiri.
-
Masukkan
aws-mountpoint-s3-csi-driver
. -
Pilih Hapus.
-
AWS CLI
Untuk menghapus add-on Amazon S3 CSI menggunakan CLI AWS
Ganti my-cluster
dengan nama cluster Anda, lalu jalankan perintah berikut.
aws eks delete-addon --cluster-name my-cluster --addon-name aws-mountpoint-s3-csi-driver --preserve