[ad_1]
Welcome Teman-teman di suratpembaca.web.id. Kali ini kita akan membahas tentang Linux yakni Crossplane: Hal Besar Berikutnya untuk Infrastruktur sebagai Kode | Oleh Vaibhav Rajput | Juni 2022
.
Mudah-mudahan postingan tentang Crossplane: Hal Besar Berikutnya untuk Infrastruktur sebagai Kode | Oleh Vaibhav Rajput | Juni 2022
bisa memberikan manfaat bagi Teman-teman semua. Langsung saja baca postingan ini
sampai tuntas.
Memulai dengan Crossplane
Infrastruktur sebagai Kode telah ada selama beberapa waktu.
Ini memecahkan masalah dan terus berkembang dengan fitur-fitur baru.
Kami telah melihat beberapa hari CFEngine
. Koki, boneka, lulus ensiklopedia dan hidup di era Transformers dan Pulum.
Crossplane adalah langkah selanjutnya dalam evolusi ini. Ini membawa sesuatu yang baru: kemampuan untuk mendeteksi dan mengoreksi penyimpangan.
Sebelum kita melanjutkan untuk melihat kemampuan sebenarnya dari crossplane, mari kita lihat bagaimana Anda bisa memulai.
Langkah 1: Siapkan cluster awal
Crossplane berjalan pada cluster Kubernetes, jadi langkah pertama adalah membuat cluster. Itu bisa kecil minikube
Atau karena hanya menyediakan antarmuka untuk Crossplane.
Instal untuk langkah ini kubectl
kan helm
Dan kind
Di sistem Anda dan jalankan:
kind create cluster — image kindest/node:v1.23.0 — wait 5m
Langkah 2: Instal crossplane
Seperti semua program hosting Kubernetes, mulailah dengan membuat namespace terpisah:
kubectl create namespace crossplane-system
Selanjutnya, instal crossplane
Bagan
helm repo add crossplane-stable https://charts.crossplane.io/stable
helm repo update
helm install crossplane --namespace crossplane-system crossplane-stable/crossplane
menggunakan helm list
Atau kubectl get
Perintah masuk crossplane-system
Beri nama ruang untuk memeriksa keberhasilan instalasi.
Langkah 3: Instal cli crossplane
Crossplane kurang lebih merupakan plugin / paket untuk kubectl
KLI. Cukup gunakan:
curl -sL https://raw.githubusercontent.com/crossplane/crossplane/master/install.sh | sh
Sekarang Anda dapat menggunakannya seperti itu kubectl crossplane ...
Untuk menginstal paket konfigurasi apa pun
Langkah 4: Instal paket konfigurasi untuk penyedia yang Anda inginkan
Dalam contoh ini, kami menginstal paket konfigurasi AWS menggunakan perintah:
kubectl crossplane install configuration registry.upbound.io/xp/getting-started-with-aws:v1.8.1
Konfigurasi ini menggunakan VPC default. Gunakan jika Anda ingin membuat VPC baru untuk cluster registry.upbound.io/xp/getting-started-with-aws-with-vpc:v1.8.1
.
Crossplane adalah cloud anonim, jadi Anda dapat menggunakannya registry.upbound.io/xp/getting-started-with-gcp:v1.8.1
Atau registry.upbound.io/xp/getting-started-with-azure:v1.8.1
Untuk GCP dan Azure, masing-masing.
Jika Anda memilih Azure atau GCP, langkah selanjutnya akan sedikit berbeda, tetapi Anda dapat menemukannya di sini.
Langkah 5: Konfigurasikan kredensial
Kita punya … crossplane
Di sistem lokal kami sudah siap, sekarang kami hanya perlu melewati kredit dari penyedia pilihan kami untuk dapat crossplane
Dapat berbicara dengannya
Untuk AWS, ini dapat dilakukan sebagai berikut:
AWS_PROFILE=default && echo -e "[default]\naws_access_key_id = $(aws configure get aws_access_key_id --profile $AWS_PROFILE)\naws_secret_access_key = $(aws configure get aws_secret_access_key --profile $AWS_PROFILE)" > creds.conf
Perhatikan bahwa ini adalah konfigurasi yang sama yang Anda terima saat Anda masuk ke AWS CLI.
Selanjutnya, kami membuat rahasia dari file ini:
kubectl create secret generic aws-creds -n crossplane-system --from-file=creds=./creds.conf
Dan habiskan di kami ProviderConfig
Saat Anda memiliki penyedia, cukup terapkan manifesto ini:
Dan statuskan menggunakan perintah ::
kubectl get postgresqlinstance my-db
dan voila! Anda memiliki sampel Postgres yang sudah jadi, begitu saja!
Pada dasarnya ada dua cara untuk membuat sumber daya dari titik ini, menggunakan Sumber Daya Kustom (CR) atau Sumber Daya Gabungan (XR).
Metode sumber kustom memungkinkan Anda membuat sumber dari definisi sumber daya yang disediakan dalam paket konfigurasi AWS. Ini adalah tren yang baru saja kita lihat. Anda dapat melihat definisi dan sintaksnya di sini.
Sumber daya hybrid, di sisi lain, dirancang untuk memungkinkan Anda membangun platform dengan konsep dan API yang Anda inginkan tanpa harus menulis pengontrol Kubernetes dari awal.
Sebagai gantinya, Anda mendefinisikan desain XR Anda dan mengajari Crossplane sumber daya terkelola apa yang harus dibuat (yaitu membuat) ketika seseorang membangun XR yang Anda tetapkan. Anda dapat membaca lebih lanjut tentang itu di sini.
AWS menyediakan peta XR ini di sini. Mari kita coba contoh tangki yang sama. Misalkan Anda ingin membuat VPC sendiri, Anda dapat menggunakan Komposisi terlebih dahulu dengan menerapkan konten yang ditampilkan di sini dengan menjalankan.
kubectl apply -f compositions/aws-provider/vpc
Dan kemudian terapkan XR:
Baiklah, kami membuat VPC menggunakan infrastruktur sebagai kode (IaC), sama seperti alat IaC lainnya. Apa yang spesial dari crossplane? Juga, mengapa klaster kubernetes perlu dijalankan sejak awal, mengapa tidak hanya CLI seperti Pulumi atau Terraform (setidaknya versi open source)?
Hal ini karena crossplane
Ini bukan hanya tentang membangun infrastruktur, ini tentang memeliharanya.
Mari kita lihat bagaimana melakukannya dengan membuat sumber daya lain. Kali ini, cluster EKS
Gunakan repositori crossplane-aws-blueprints yang sama dan jalankan perintah ini (Anda ingin memperbarui beberapa detail seperti subnet-id)
kubectl apply -f compositions/aws-provider/ekskubectl apply -f examples/aws-provider/composite-resources/eks/eks-claim.yaml
Konfigurasi yang kami gunakan di sini adalah seperti ini
Di sini grup node yang dikelola harus memiliki setidaknya 2 node. Coba dan perbarui langsung dari konsol AWS ke 3.
Anda akan melihat bahwa itu membuat simpul ketiga tetapi segera konfigurasi kembali ke 2 dan simpul ketiga berakhir.
Crossplane tidak mengizinkan perubahan manual dalam sumber daya. Jika dilakukan perubahan, maka akan kembali ke konfigurasi awal/yang diinginkan.
Bagaimana jika saya mengatakan Anda dapat menginstal alat lain di cluster lintas manajemen yang membuat hidup Anda jauh lebih mudah?
Crossplane berjalan seiring dengan alat lain yang saya bicarakan di salah satu blog saya sebelumnya
Menggabungkan Crossplane (yang membuat infrastruktur Anda tetap mutakhir dengan kode) dengan aktivator GitOps seperti ArgoCD (yang melacak repositori Git Anda) berarti bahwa setiap perubahan yang Anda buat pada repositori Anda akan mencerminkan infrastruktur Anda.
Kebenaran yang lucu
Ada juga penyedia crossplane untuk menginstal argocd. Lihat disini.
Ada lebih banyak alat yang dapat Anda lampirkan ke arsitektur ini. Dapatkan KubeVela
Sebagai contoh.

Singkatnya, KubeVela memungkinkan Anda mendeklarasikan jadwal penerapan sebagai alur kerja, menjalankannya secara otomatis dengan sistem CI / CD atau GitOps apa pun, dan memperluas atau menjadwal ulang langkah alur kerja dengan CUE .
Meskipun ini cukup meremehkan kemampuan KubeVela, ini seharusnya menjadi awal yang baik.
Sebagai anggota operasi, Anda dapat menentukan pemasok infrastruktur menggunakan Crossplane dan mengonfigurasi proses CI / CD menggunakan KubeVela.
Terakhir, Anda membuat repositori Git dan aplikasi ArgoCD yang melacaknya.
Sekarang anggota pemrogram Anda dapat menyediakan infrastruktur dan menerapkan program mereka di dalamnya, cukup git push
Itu diabstraksikan dengan hampir semua komponen.
Mereka tidak perlu tahu bagaimana IaC atau Kubernetes bekerja di sini, mereka hanya perlu memahami sintaks satu. YAML
mengajukan.
Alasan saya menambahkan ArgoCD dan KubeVela ke blog ini adalah untuk membantu Anda memahaminya. crossplane
Itu tidak hanya membawa deteksi drift dan sinkronisasi otomatis ke meja.
Jika Anda mendesainnya dengan baik dan menggabungkannya dengan alat lain dalam adegan ini, Anda akan memahami nilai sebenarnya dari Crossplane.
Crossplane membawa evolusi baru ke IaC.
Kemampuan untuk tidak hanya membuat, tetapi juga memelihara konfigurasi infrastruktur hanya dicapai melalui kode kustom dan kerangka kerja internal.
Sekarang tersedia untuk semua orang dan saya berharap ini akan segera menjadi standar pasar yang diikuti oleh IaC lainnya.
Demikian postingan tentang Crossplane: Hal Besar Berikutnya untuk Infrastruktur sebagai Kode | Oleh Vaibhav Rajput | Juni 2022
, terimakasih sudah berkunjung di website ini, mudah-mudahan artikelnya ada manfaatnya ya.
[ad_2]
Source link