Buat kemampuan ACK menggunakan eksctl - Amazon EKS

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.

Buat kemampuan ACK menggunakan eksctl

Topik ini menjelaskan cara membuat kemampuan AWS Controllers for Kubernetes (ACK) menggunakan eksctl.

catatan

Langkah-langkah berikut memerlukan versi 0.220.0 eksctl atau yang lebih baru. Untuk memeriksa versi Anda, jalankaneksctl version.

Langkah 1: Buat Peran Kemampuan IAM

Buat file kebijakan kepercayaan:

cat > ack-trust-policy.json << 'EOF' { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "capabilities.eks.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:TagSession" ] } ] } EOF

Buat peran IAM:

aws iam create-role \ --role-name ACKCapabilityRole \ --assume-role-policy-document file://ack-trust-policy.json

Lampirkan kebijakan AdministratorAccess terkelola ke peran:

aws iam attach-role-policy \ --role-name ACKCapabilityRole \ --policy-arn arn:aws:iam::aws:policy/AdministratorAccess
penting

AdministratorAccessKebijakan yang disarankan memberikan izin luas dan dimaksudkan untuk merampingkan memulai. Untuk penggunaan produksi, ganti ini dengan kebijakan khusus yang hanya memberikan izin yang diperlukan untuk AWS layanan tertentu yang Anda rencanakan untuk dikelola dengan ACK. Untuk panduan tentang membuat kebijakan hak istimewa terkecil, lihat dan. Konfigurasikan izin ACK Pertimbangan keamanan untuk Kemampuan EKS

penting

Kebijakan ini memberikan izin untuk pengelolaan bucket S3"Resource": "*", yang memungkinkan pengoperasian di semua bucket S3.

Untuk penggunaan produksi: * Batasi Resource bidang ke bucket ARNs atau pola nama tertentu * Gunakan kunci kondisi IAM untuk membatasi akses dengan tag sumber daya * Berikan hanya izin minimum yang diperlukan untuk kasus penggunaan Anda

Untuk AWS layanan lainnya, lihatKonfigurasikan izin ACK.

Lampirkan kebijakan ke peran:

aws iam attach-role-policy \ --role-name ACKCapabilityRole \ --policy-arn arn:aws:iam::$(aws sts get-caller-identity --query Account --output text):policy/ACKS3Policy

Langkah 2: Buat kemampuan ACK

Buat kemampuan ACK menggunakan eksctl. Ganti region-code dengan AWS Region tempat cluster Anda berada dan ganti my-cluster dengan nama cluster Anda.

eksctl create capability \ --cluster [.replaceable]`my-cluster` \ --region [.replaceable]`region-code` \ --name ack \ --type ACK \ --role-arn arn:aws:iam::$(aws sts get-caller-identity --query Account --output text):role/ACKCapabilityRole \ --ack-service-controllers s3
catatan

--ack-service-controllersBendera adalah opsional. Jika dihilangkan, ACK mengaktifkan semua pengontrol yang tersedia. Untuk kinerja dan keamanan yang lebih baik, pertimbangkan untuk mengaktifkan hanya pengontrol yang Anda butuhkan. Anda dapat menentukan beberapa pengontrol: --ack-service-controllers s3,rds,dynamodb

Perintah segera kembali, tetapi kemampuannya membutuhkan waktu untuk menjadi aktif.

Langkah 3: Verifikasi kemampuan aktif

Periksa status kemampuan:

eksctl get capability \ --cluster [.replaceable]`my-cluster` \ --region [.replaceable]`region-code` \ --name ack

Kemampuan siap ketika status ditampilkanACTIVE.

Langkah 4: Verifikasi sumber daya khusus tersedia

Setelah kemampuan aktif, verifikasi bahwa sumber daya khusus ACK tersedia di klaster Anda:

kubectl api-resources | grep services.k8s.aws

Anda akan melihat sejumlah yang APIs terdaftar untuk AWS sumber daya.

catatan

Kemampuan untuk AWS Controller untuk Kubernetes akan menginstal sejumlah CRDs untuk berbagai sumber daya. AWS

Langkah selanjutnya