Daftarkan kluster target - 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.

Daftarkan kluster target

Daftarkan cluster untuk mengaktifkan Argo CD untuk menyebarkan aplikasi ke mereka. Anda dapat mendaftarkan cluster yang sama di mana Argo CD berjalan (cluster lokal) atau cluster jarak jauh di akun atau wilayah yang berbeda.

Prasyarat

  • Cluster EKS dengan kemampuan Argo CD dibuat

  • kubectldikonfigurasi untuk berkomunikasi dengan cluster Anda

  • Untuk cluster jarak jauh: izin IAM yang sesuai dan entri akses

Daftarkan cluster lokal

Untuk menyebarkan aplikasi ke cluster yang sama di mana Argo CD berjalan, daftarkan sebagai target penyebaran.

catatan

Kemampuan Argo CD tidak secara otomatis mendaftarkan cluster lokal. Anda harus mendaftarkannya secara eksplisit untuk menyebarkan aplikasi ke cluster yang sama.

Menggunakan Argo CD CLI:

argocd cluster add <cluster-context-name> \ --aws-cluster-name arn:aws:eks:us-west-2:111122223333:cluster/my-cluster \ --name local-cluster

Menggunakan Rahasia Kubernetes:

apiVersion: v1 kind: Secret metadata: name: local-cluster namespace: argocd labels: argocd.argoproj.io/secret-type: cluster stringData: name: local-cluster server: arn:aws:eks:us-west-2:111122223333:cluster/my-cluster project: default

Terapkan konfigurasi:

kubectl apply -f local-cluster.yaml
catatan

Gunakan ARN cluster EKS di server bidang, bukan URL server API Kubernetes. Kemampuan yang dikelola diperlukan ARNs untuk mengidentifikasi cluster. Default kubernetes.default.svc tidak didukung.

Daftarkan cluster jarak jauh

Untuk menyebarkan ke cluster jarak jauh, Anda harus:

  1. Buat entri akses pada klaster jarak jauh untuk Peran Kemampuan IAM Argo CD Anda

  2. Kaitkan kebijakan akses dengan izin yang sesuai

  3. Daftarkan cluster di Argo CD

Langkah 1: Buat entri akses pada cluster jarak jauh

Ganti region-code dengan AWS Region tempat cluster jarak jauh Anda berada, ganti remote-cluster dengan nama cluster jarak jauh Anda, dan ganti ARN dengan peran kemampuan Argo CD ARN Anda.

aws eks create-access-entry \ --region region-code \ --cluster-name remote-cluster \ --principal-arn arn:aws:iam::[.replaceable]111122223333:role/ArgoCDCapabilityRole \ --type STANDARD

Langkah 2: Kaitkan kebijakan akses

aws eks associate-access-policy \ --region region-code \ --cluster-name remote-cluster \ --principal-arn arn:aws:iam::[.replaceable]111122223333:role/ArgoCDCapabilityRole \ --policy-arn arn:aws:eks::aws:cluster-access-policy/AmazonEKSClusterAdminPolicy \ --access-scope type=cluster
catatan

Untuk lingkungan produksi, pertimbangkan untuk menggunakan kebijakan akses yang lebih ketat. Lihat konfigurasi dengan Pertimbangan keamanan untuk Kemampuan EKS hak istimewa paling sedikit.

Langkah 3: Daftarkan cluster di Argo CD

Menggunakan Argo CD CLI:

argocd cluster add <cluster-context-name> \ --aws-cluster-name arn:aws:eks:us-west-2:111122223333:cluster/remote-cluster \ --name remote-cluster

Menggunakan Rahasia Kubernetes:

apiVersion: v1 kind: Secret metadata: name: remote-cluster namespace: argocd labels: argocd.argoproj.io/secret-type: cluster stringData: name: remote-cluster server: arn:aws:eks:us-west-2:111122223333:cluster/remote-cluster project: default

Terapkan konfigurasi:

kubectl apply -f remote-cluster.yaml

Kluster lintas akun dan lintas wilayah

Untuk menyebarkan ke cluster di AWS akun atau wilayah yang berbeda:

  1. Tambahkan Peran Kemampuan CD Argo sebagai entri akses pada cluster jarak jauh

  2. Kaitkan kebijakan akses yang sesuai (biasanyaAmazonEKSClusterAdminPolicy)

  3. Daftarkan cluster menggunakan ARN lengkapnya (yang mencakup wilayah)

Format ARN cluster mencakup wilayah, jadi tidak ada perbedaan antara pendaftaran lintas akun dan lintas wilayah—keduanya menggunakan proses yang sama.

Untuk konfigurasi lintas akun terperinci termasuk kebijakan kepercayaan dan izin IAM, lihat. Pertimbangan Argo CD

Verifikasi pendaftaran klaster

Lihat kluster terdaftar:

kubectl get secrets -n argocd -l argocd.argoproj.io/secret-type=cluster

Atau periksa status cluster di Argo CD UI di bawah Pengaturan → Clusters.

klaster privat

Kemampuan Argo CD menyediakan akses transparan ke cluster EKS yang sepenuhnya pribadi tanpa memerlukan peering VPC atau konfigurasi jaringan khusus.

AWS mengelola konektivitas antara kemampuan Argo CD dan cluster jarak jauh pribadi secara otomatis.

Cukup daftarkan cluster pribadi menggunakan ARN-nya — tidak diperlukan pengaturan jaringan tambahan.

Batasi akses klaster dengan Proyek

Gunakan Proyek untuk mengontrol kluster mana yang dapat diterapkan Aplikasi ke:

apiVersion: argoproj.io/v1alpha1 kind: AppProject metadata: name: production namespace: argocd spec: destinations: - server: arn:aws:eks:us-west-2:111122223333:cluster/prod-cluster namespace: '*' - server: arn:aws:eks:eu-west-1:111122223333:cluster/prod-eu-cluster namespace: '*' sourceRepos: - 'https://github.com/example/production-apps'

Lihat perinciannya di Bekerja dengan Proyek CD Argo.

Sumber daya tambahan