Komposisi Sumber Daya dengan kro (Kube Resource Orchestrator) - 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.

Komposisi Sumber Daya dengan kro (Kube Resource Orchestrator)

kro (Kube Resource Orchestrator) adalah proyek asli Kubernetes open-source yang memungkinkan Anda mendefinisikan Kubernetes kustom menggunakan konfigurasi sederhana dan langsung. APIs Dengan kro, Anda dapat dengan mudah mengkonfigurasi kustom baru APIs yang membuat sekelompok objek Kubernetes dan operasi logis di antara mereka.

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

Bagaimana kro Bekerja

kro memperkenalkan Custom Resource Definition (CRD) yang disebut ResourceGraphDefinition (RGD) yang memungkinkan pembuatan Kubernetes kustom yang sederhana dan efisien. APIs Saat Anda membuatResourceGraphDefinition, kro menggunakan ekstensi Kubernetes asli untuk membuat dan mengelola yang baru APIs di klaster Anda. Dari spesifikasi sumber daya tunggal ini, kro akan membuat dan mendaftarkan CRD baru untuk Anda berdasarkan spesifikasi Anda dan akan beradaptasi untuk mengelola sumber daya kustom Anda yang baru ditentukan.

RGDs dapat menyertakan beberapa sumber daya, dan kro akan menentukan saling ketergantungan dan pemesanan sumber daya, jadi Anda tidak perlu melakukannya. Anda dapat menggunakan sintaks sederhana untuk menyuntikkan konfigurasi dari satu sumber daya ke sumber daya lainnya, sangat menyederhanakan komposisi dan menghilangkan kebutuhan akan operator “lem” di cluster Anda. Dengan kro, sumber daya kustom Anda dapat menyertakan sumber daya Kubernetes asli serta Custom Resource Definition (CRDs) yang diinstal di cluster.

kro mendukung satu jenis sumber daya utama:

  • ResourceGraphDefinition (RGD): Mendefinisikan sumber daya kustom Kubernetes, merangkum satu atau beberapa sumber daya Kubernetes asli atau kustom yang mendasarinya

Selain sumber daya ini, kro akan membuat dan mengelola siklus hidup sumber daya kustom Anda yang dibuat dengannya, serta semua sumber daya konstituennya.

kro terintegrasi secara mulus dengan AWS Controllers for Kubernetes (ACK), memungkinkan Anda untuk menyusun sumber daya beban kerja dengan sumber daya untuk membuat abstraksi tingkat yang lebih tinggi. AWS Ini memungkinkan Anda untuk membuat blok bangunan cloud Anda sendiri, menyederhanakan manajemen sumber daya dan mengaktifkan pola yang dapat digunakan kembali dengan pengaturan konfigurasi default dan tidak dapat diubah berdasarkan standar organisasi Anda.

Manfaat kro

kro memungkinkan tim platform untuk membuat Kubernetes kustom yang menyusun beberapa sumber daya menjadi APIs abstraksi tingkat yang lebih tinggi. Ini menyederhanakan manajemen sumber daya dengan memungkinkan pengembang untuk menyebarkan aplikasi kompleks menggunakan sumber daya kustom yang sederhana, standar, dan berversi. Anda menentukan pola yang dapat digunakan kembali untuk kombinasi sumber daya umum, memungkinkan pembuatan sumber daya yang konsisten di seluruh organisasi Anda.

kro menggunakan Common Expression Language (CEL) di Kubernetes untuk meneruskan nilai antar sumber daya dan menggabungkan logika bersyarat, memberikan fleksibilitas dalam komposisi sumber daya. Anda dapat menyusun sumber daya Kubernetes dan AWS sumber daya yang dikelola oleh ACK ke dalam kustom terpadu APIs, memungkinkan definisi aplikasi dan infrastruktur yang lengkap.

kro mendukung konfigurasi deklaratif melalui manifes Kubernetes, memungkinkan GitOps alur kerja dan infrastruktur sebagai praktik kode yang terintegrasi secara mulus dengan proses pengembangan Anda yang ada. Sebagai bagian dari Kemampuan Terkelola EKS, kro dikelola sepenuhnya oleh AWS, menghilangkan kebutuhan untuk menginstal, mengonfigurasi, dan memelihara pengontrol kro di cluster Anda.

Contoh: Membuat ResourceGraphDefinition

Contoh berikut menunjukkan sederhana ResourceGraphDefinition yang membuat aplikasi web dengan Deployment dan Service:

apiVersion: kro.run/v1alpha1 kind: ResourceGraphDefinition metadata: name: web-application spec: schema: apiVersion: v1alpha1 kind: WebApplication spec: name: string replicas: integer | default=3 resources: - id: deployment template: apiVersion: apps/v1 kind: Deployment metadata: name: ${schema.spec.name} spec: replicas: ${schema.spec.replicas} - id: service template: apiVersion: v1 kind: Service metadata: name: ${schema.spec.name}

Saat pengguna membuat instance sumber daya WebApplication kustom, kro secara otomatis membuat sumber daya Deployment dan Service yang sesuai, mengelola siklus hidup mereka bersama dengan sumber daya kustom.

Integrasi dengan Kemampuan Terkelola EKS Lainnya

kro terintegrasi dengan Kemampuan Terkelola EKS lainnya.

  • AWS Controller for Kubernetes (ACK): Gunakan kro untuk menyusun sumber daya ACK ke dalam abstraksi tingkat yang lebih tinggi, menyederhanakan manajemen sumber daya. AWS

  • Argo CD: Gunakan Argo CD untuk mengelola penyebaran sumber daya kustom kro di beberapa cluster, memungkinkan GitOps alur kerja untuk blok bangunan platform dan tumpukan aplikasi Anda.

Memulai dengan kro

Untuk memulai dengan Kemampuan EKS untuk kro:

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

  2. Create ResourceGraphDefinitions (RGDs) yang menentukan komposisi kustom APIs dan sumber daya Anda.

  3. Terapkan instance sumber daya kustom Anda untuk menyediakan dan mengelola Kubernetes dan resource yang mendasarinya. AWS