Menerapkan AWS sumber daya dari Kubernetes dengan AWS Controller untuk Kubernetes (ACK) - 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.

Menerapkan AWS sumber daya dari Kubernetes dengan AWS Controller untuk Kubernetes (ACK)

AWS Controller untuk Kubernetes (ACK) memungkinkan Anda menentukan dan mengelola sumber daya AWS layanan langsung dari Kubernetes. Dengan AWS Controller for Kubernetes (ACK), Anda dapat mengelola sumber daya beban kerja dan infrastruktur cloud menggunakan sumber daya kustom Kubernetes, tepat di samping beban kerja aplikasi Anda menggunakan Kubernetes dan alat yang sudah dikenal. APIs

Dengan Kemampuan EKS, ACK dikelola sepenuhnya oleh AWS, menghilangkan kebutuhan untuk menginstal, memelihara, dan menskalakan pengontrol ACK di cluster Anda.

Bagaimana ACK Bekerja

ACK menerjemahkan spesifikasi sumber daya kustom Kubernetes ke dalam panggilan API. AWS Saat Anda membuat, memperbarui, atau menghapus sumber daya kustom Kubernetes yang mewakili sumber daya AWS layanan, ACK membuat panggilan AWS API yang diperlukan untuk membuat, memperbarui, atau menghapus sumber daya. AWS

Setiap AWS sumber daya yang didukung oleh ACK memiliki definisi sumber daya kustom (CRD) sendiri yang mendefinisikan skema API Kubernetes untuk menentukan konfigurasinya. Misalnya, ACK menyediakan CRDs S3 termasuk bucket, kebijakan bucket, dan sumber daya S3 lainnya.

ACK terus mendamaikan status AWS sumber daya Anda dengan status yang diinginkan yang ditentukan dalam sumber daya kustom Kubernetes Anda. Jika sumber daya melayang dari keadaan yang diinginkan, ACK mendeteksi ini dan mengambil tindakan korektif untuk membawanya kembali ke keselarasan. Perubahan pada sumber daya Kubernetes langsung tercermin dalam status AWS sumber daya, sementara deteksi drift pasif dan remediasi perubahan AWS sumber daya hulu dapat memakan waktu selama 10 jam (periode sinkronisasi ulang), tetapi biasanya akan terjadi lebih cepat.

Contoh manifes sumber daya Bucket S3

apiVersion: s3.services.k8s.aws/v1alpha1 kind: Bucket metadata: name: my-ack-bucket spec: name: my-unique-bucket-name

Saat Anda menerapkan sumber daya khusus ini ke klaster, ACK akan membuat bucket Amazon S3 di akun Anda jika belum ada. Perubahan selanjutnya pada sumber daya ini, misalnya menentukan tingkat penyimpanan non-default atau menambahkan kebijakan, akan diterapkan ke sumber daya S3 di. AWS Saat sumber daya ini dihapus dari cluster, bucket S3 akan dihapus AWS secara default.

Manfaat ACK

ACK menyediakan manajemen AWS sumber daya asli Kubernetes, memungkinkan Anda mengelola sumber AWS daya menggunakan Kubernetes APIs dan alat yang sama yang Anda gunakan untuk aplikasi Anda. Pendekatan terpadu ini menyederhanakan alur kerja manajemen infrastruktur Anda dengan menghilangkan kebutuhan untuk beralih di antara alat yang berbeda atau mempelajari sistem terpisah. infrastructure-as-code Anda mendefinisikan AWS sumber daya Anda secara deklaratif dalam manifes Kubernetes, memungkinkan GitOps alur kerja dan infrastruktur sebagai praktik kode yang terintegrasi secara mulus dengan proses pengembangan yang ada.

ACK terus mendamaikan kondisi AWS sumber daya Anda yang diinginkan dengan keadaan sebenarnya, mengoreksi penyimpangan dan memastikan konsistensi di seluruh infrastruktur Anda. Rekonsiliasi berkelanjutan ini berarti bahwa out-of-band perubahan penting pada AWS sumber daya secara otomatis dikembalikan agar sesuai dengan konfigurasi yang Anda deklarasikan, menjaga integritas infrastruktur Anda sebagai kode. Anda dapat mengonfigurasi ACK untuk mengelola sumber daya di beberapa AWS akun dan wilayah, memungkinkan arsitektur multi-akun yang kompleks tanpa alat tambahan.

Untuk organisasi yang bermigrasi dari alat manajemen infrastruktur lainnya, ACK mendukung adopsi sumber daya, memungkinkan Anda membawa AWS sumber daya yang ada di bawah manajemen ACK tanpa membuatnya kembali. ACK juga menyediakan sumber daya hanya-baca untuk observasi AWS sumber daya tanpa akses modifikasi, dan anotasi untuk mempertahankan AWS sumber daya secara opsional bahkan ketika resource Kubernetes dihapus dari cluster.

Untuk mempelajari lebih lanjut dan memulai dengan Kemampuan EKS untuk ACK, lihat Konsep ACK danPertimbangan ACK untuk EKS.

AWS Layanan yang Didukung

ACK mendukung berbagai AWS layanan, termasuk namun tidak terbatas pada:

  • Amazon EC2

  • Amazon S3

  • Amazon RDS

  • Amazon DynamoDB

  • Amazon ElastiCache

  • Amazon EKS

  • Amazon SQS

  • Amazon SNS

  • AWS Lambda

  • AWS IAM

Semua AWS layanan yang terdaftar sebagai Umumnya Tersedia di hulu didukung oleh Kemampuan EKS untuk ACK. Lihat daftar lengkap AWS layanan yang didukung untuk detailnya.

Integrasi dengan Kemampuan Terkelola EKS Lainnya

ACK terintegrasi dengan Kemampuan Terkelola EKS lainnya.

  • Argo CD: Gunakan Argo CD untuk mengelola penyebaran sumber daya ACK di beberapa cluster, memungkinkan GitOps alur kerja untuk infrastruktur Anda. AWS

    • ACK memperluas manfaat GitOps ketika dipasangkan dengan ArgoCD, tetapi ACK tidak memerlukan integrasi dengan git.

  • kro (Kube Resource Orchestrator): Gunakan kro untuk menyusun sumber daya yang kompleks dari sumber daya ACK, menciptakan abstraksi tingkat tinggi yang menyederhanakan manajemen sumber daya.

    • Anda dapat membuat resource kustom komposit dengan kro yang mendefinisikan resource dan resource Kubernetes. AWS Anggota tim dapat menggunakan sumber daya khusus ini untuk menyebarkan aplikasi kompleks dengan cepat.

Memulai dengan ACK

Untuk memulai dengan Kemampuan EKS untuk ACK:

  1. Buat dan konfigurasikan Peran Kemampuan IAM dengan izin yang diperlukan bagi ACK untuk mengelola AWS sumber daya atas nama Anda.

  2. Buat sumber daya kemampuan ACK di kluster EKS Anda melalui AWS Konsol, AWS CLI, atau infrastruktur pilihan Anda sebagai alat kode.

  3. Terapkan sumber daya kustom Kubernetes ke klaster Anda untuk mulai mengelola sumber AWS daya Anda di Kubernetes.