Membandingkan Kemampuan EKS untuk Argo CD dengan CD Argo yang dikelola sendiri - Amazon EKS

View a markdown version of this page

Membandingkan Kemampuan EKS untuk Argo CD dengan CD Argo yang dikelola sendiri - Amazon EKS

Bantu meningkatkan 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 GitHub tautan Edit halaman ini di 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.

Membandingkan Kemampuan EKS untuk Argo CD dengan CD Argo yang dikelola sendiri

Kemampuan EKS untuk CD Argo memberikan pengalaman Argo CD yang dikelola sepenuhnya yang berjalan di EKS. Untuk perbandingan umum Kemampuan EKS vs solusi yang dikelola sendiri, lihatPertimbangan Kemampuan EKS. Topik ini berfokus pada CD-specific perbedaan Argo, termasuk otentikasi, manajemen multi-cluster, dan dukungan fitur hulu.

Perbedaan dari hulu Argo CD

Kemampuan EKS untuk CD Argo didasarkan pada CD Argo hulu tetapi berbeda dalam cara diakses, dikonfigurasi, dan terintegrasi dengan layanan. AWS

RBAC dan otentikasi: Kemampuan ini dilengkapi dengan tiga peran RBAC (admin, editor, penampil) dan menggunakan AWS Identity Center untuk otentikasi alih-alih otentikasi bawaan Argo CD. Konfigurasikan pemetaan peran melalui rbacRoleMapping parameter kemampuan untuk memetakan grup Pusat Identitas ke peran CD Argo, bukan melalui CD Argo. argocd-rbac-cm ConfigMap UI CD Argo di-host dengan URL langsungnya sendiri (temukan di konsol EKS di bawah tab Capabilities cluster Anda), dan akses API menggunakan AWS otentikasi dan otorisasi melalui IAM.

Konfigurasi cluster: Kemampuan tidak secara otomatis mengkonfigurasi kluster lokal atau topologi hub-and-speak. Anda mengonfigurasi cluster target penerapan dan entri akses EKS. Kemampuan ini hanya mendukung cluster Amazon EKS sebagai target penerapan menggunakan ARN cluster EKS (bukan URL server API Kubernetes). Kemampuan tidak secara otomatis menambahkan cluster lokal (kubernetes.default.svc) sebagai target penerapan—untuk menerapkan ke cluster yang sama tempat kemampuan dibuat, secara eksplisit mendaftarkan cluster tersebut menggunakan ARN-nya.

Akses cluster jarak jauh yang disederhanakan: Kemampuan menyederhanakan penerapan multi-cluster dengan menggunakan Entri Akses EKS untuk memberikan akses Argo CD ke cluster jarak jauh, menghilangkan kebutuhan untuk mengonfigurasi Peran IAM untuk Akun Layanan (IRSA) atau menyiapkan asumsi peran IAM lintas akun. Kemampuan ini juga 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.

Integr AWS asi layanan langsung: Kemampuan menyediakan integrasi langsung dengan AWS layanan melalui izin IAM Peran Kemampuan. Anda dapat merefer CodeCommit ensikan repositori, bagan ECR Helm, dan CodeConnections langsung di sumber daya Aplikasi tanpa membuat konfigurasi Repositori. Ini menyederhanakan otentikasi dan menghilangkan kebutuhan untuk mengelola kredenSIAL terpisah untuk AWS layanan. Lihat Konfigurasikan akses repositori untuk detail.

Dukungan Namespace: Kemampuan mengharuskan Anda untuk menentukan namespace tunggal di mana Aplikasi CD Argo, ApplicationSet, dan sumber daya AppProject khusus harus dibuat.

catatan

Pembatasan namespace ini hanya berlaku untuk sumber daya khusus Argo CD sendiri (Aplikasi, ApplicationSet, AppProject). Beban kerja aplikasi Anda dapat digunakan ke namespace apa pun di cluster target mana pun. Misalnya, jika Anda membuat kemampuan dengan namespaceargocd, semua CR Aplikasi harus dibuat di argocd namespace, tetapi Aplikasi tersebut dapat menerapkan beban kerja kedefault,, productionstaging, atau namespace lainnya.

catatan

Kemampuan terkelola memiliki persyaratan khusus untuk penggunaan dan AppProject konfigurasi CLI:

  • Saat menggunakan Argo CD CLI, tentukan aplikasi dengan awalan namespace: argocd app sync namespace/appname

  • AppProject sumber daya harus menentukan .spec.sourceNamespaces untuk menentukan ruang nama mana yang dapat ditonton proyek untuk Aplikasi (biasanya disetel ke namespace yang Anda tentukan saat membuat kemampuan)

  • Anotasi pelacakan sumber daya menggunakan format: namespace_appname:group/kind:namespace/name

Fitur yang tidak didukung: Fitur-fitur berikut tidak tersedia dalam kemampuan terkelola:

  • Plugin Manajemen Konfigurasi (CMP) untuk pembuatan manifes khusus

  • Pengontrol notifikasi

  • Penyedia SSO khusus (hanya Pusat AWS Identitas yang didukung, termasuk identitas federasi pihak ketiga melalui Pusat AWS Identitas)

  • Ekstensi UI dan spanduk khusus

  • Akses langsung ke argocd-params dan sebagian besar konfigurasi ConfigMaps (subset argocd-cm bidang didukung. LihatKonfigurasikan pengaturan CD Argo)

  • Memodifikasi batas waktu sinkronisasi (tetap pada 120 detik)

Kompati bilitas: Aplikasi dan ApplicationSets bekerja identik dengan CD Argo hulu tanpa perubahan pada manifes Anda. Kemampuan menggunakan API dan CRD Kubernetes yang sama, sehingga alat seperti kubectl bekerja dengan cara yang sama. Kemampuan ini sepenuhnya mendukung Aplikasi dan ApplicationSets, alur GitOps kerja dengan sinkronisasi otomatis, penerapan multi-cluster, kebijakan sinkronisasi (otomatis, prune, self-heal), gelombang sinkronisasi dan kait, penilaian kesehatan untuk sumber daya Kubernetes standar, kemampuan rollback, sumber repositori Git (HTTPS dan SSH), Helm, Kustomize, dan manifes YAML biasa, kredentif GitHub aplikasi, proyek untuk multi-tenancy, dan pengecualian dan inklusi sumber daya.

Menggunakan Argo CD CLI dengan kemampuan terkelola

Argo CD CLI bekerja sama dengan CD Argo hulu untuk sebagian besar operasi, tetapi otentikasi dan pendaftaran cluster berbeda.

Prasyarat

Instal Argo CD CLI mengikuti petunjuk instalasi h ulu.

Konfigurasi

Konfigurasikan CLI menggunakan variabel lingkungan:

  1. Dapatkan URL server Argo CD dari konsol EKS (di bawah tab Capabilities cluster Anda), atau menggunakan AWS CLI. A https:// walan harus dihapus:

    export ARGOCD_SERVER=$(aws eks describe-capability \ --cluster-name my-cluster \ --capability-name my-argocd \ --query 'capability.configuration.argoCd.serverUrl' \ --output text \ --region region-code | sed 's|^https://||')
  2. Buat token akun dari UI Argo CD (Peng aturan Akun admin Hasilkan Token Baru), lalu atur sebagai variabel lingkungan:

    export ARGOCD_AUTH_TOKEN="your-token-here"
penting

Konfigurasi ini menggunakan token akun admin untuk pengaturan awal dan alur kerja pengembangan. Untuk kasus penggunaan produksi, gunakan peran dan token dengan cakupan proyek untuk mengikuti prinsip hak istimewa paling sedikit. Untuk informasi selengkapnya tentang mengonfigurasi peran proyek dan RBAC, lihatKonfigurasikan izin CD Argo.

  1. Atur opsi gRPC yang diperlukan:

    export ARGOCD_OPTS="--grpc-web"

Dengan variabel lingkungan ini diatur, Anda dapat menggunakan Argo CD CLI tanpa perintahargocd login.

Perbedaan utama

Kemampuan terkelola memiliki batasan CLI berikut:

  • argocd adminperintah tidak didukung (mereka memerlukan akses pod langsung)

  • argocd logintidak didukung (gunakan token akun atau proyek sebagai gantinya)

  • argocd cluster addmembutuhkan ben --aws-cluster-name dera dengan cluster EKS ARN

Contoh: Mendaftarkan cluster

Daftarkan cluster EKS untuk penerapan aplikasi:

# Get the cluster ARN CLUSTER_ARN=$(aws eks describe-cluster \ --name my-cluster \ --query 'cluster.arn' \ --output text) # Register the cluster argocd cluster add $CLUSTER_ARN \ --aws-cluster-name $CLUSTER_ARN \ --name in-cluster \ --project default

Untuk dokumentasi Argo CD CLI lengkap, lihat referensi Argo CD CLI.

Jalur migrasi

Anda dapat bermigrasi dari CD Argo yang dikelola sendiri ke kemampuan terkelola:

  1. Tinjau konfigurasi CD Argo Anda saat ini untuk fitur yang tidak didukung (Pengontrol notifikasi, CMP, pemeriksaan kesehatan khusus, ekstensi UI)

  2. Menskalakan pengontrol CD Argo yang dikelola sendiri ke nol replika untuk mencegah konflik

  3. Buat sumber daya kemampuan CD Argo di cluster Anda

  4. Ekspor Aplikasi Anda yang ada, ApplicationSets, dan AppProjects

  5. Migrasikan kredenSIAL repositori, rahasia cluster, dan templat kredenSIAL repositori (repocreds)

  6. Jika menggunakan kunci GPG, sertifikat TLS, atau host SSH yang dikenal, migrasikan konfigurasi ini juga

  7. Perbarui destination.server bidang untuk menggunakan nama cluster atau EKS cluster ARN

  8. Terapkan ke instance CD Argo yang dikelola

  9. Verifikasi aplikasi disinkronkan dengan benar

  10. Nonaktifkan instalasi CD Argo Anda yang dikelola sendiri

Kemampuan terkelola menggunakan API Argo CD dan definisi sumber daya yang sama, sehingga manifes Anda yang ada bekerja dengan modifikasi minimal.

Langkah selanjutnya