Halo Geeks, saya harap Anda mengetahui tentang Ansible AWX, jika tidak maka Ansible AWX adalah alat GUI berbasis Web untuk mengelola playbook yang memungkinkan. Ada banyak fitur lain dari AWX selain dari eksekusi playbook Ansible seperti integrasi manajemen sumber, pencatatan RBAC, dan banyak lagi.
Dengan kata lain, Ansible AWX dapat dikatakan sebagai proyek hulu dari Red HAT Ansible Tower. Dari AWX versi 18.x dan seterusnya, fokus penginstalan dipindahkan dari buruh pelabuhan ke Kubernetes. Jadi, dalam artikel ini, kami akan membahas langkah demi langkah Instalasi AWX yang Memungkinkan di Kubernetes Minikube.
Saya berasumsi Minikube sudah terinstal di sistem Linux Anda. Jika tidak, gunakan URL di bawah ini:
- Cara Menginstal Minikube di Ubuntu 20.04 LTS / 21.04
Catatan: Pastikan Anda memulai cluster minikube Anda dengan sumber daya yang cukup (minimal 4 vCPU dan RAM 8 GB), dalam kasus saya, saya telah memulai minikube dengan sumber daya dan opsi berikut.
$ minikube start --addons=ingress --cpus=4 --cni=flannel --install-addons=true --kubernetes-version=stable --memory=8g
Verifikasi Instalasi Cluster Minikube
Jalankan perintah berikut untuk memverifikasi instalasi minikube dan status cluster,
$ status minikube$ kubectl cluster-info$ kubectl get node
Output dari perintah di atas akan terlihat seperti di bawah ini:
Sempurna, di atas menegaskan bahwa minikube telah diinstal dan dimulai dengan sukses. Mari beralih ke langkah penginstalan AWX.
Langkah 1) Instal Operator AWX
Untuk menginstal operator AWX, jalankan perintah kubectl berikut,
$ kubectl apply -f https://raw.githubusercontent.com/ansible/awx-operator/0.12.0/deploy/awx-operator.yaml
Keluaran
Jalankan perintah di bawah ini untuk mengonfirmasi apakah pod operator AWX dimulai atau tidak. Jika tidak dimulai maka tunggu beberapa menit karena membutuhkan waktu,
[email protected]:~$ kubectl get podsNAME READY STATUS MULAI ULANG AGEawx-operator-79bc95f78-pb7tz 1/1 $ >Langkah 2) Buat file yaml Instance AWX
Buat file ansible-awx.yml dengan konten berikut
$ vi ansible-awx.yml---apiVersion:awx.ansible.com/v1beta1kind:AWXmetadata: name:ansible-awxspec: service_type:nodeport ingress_type:none hostname:ansible-awx.example.comsimpan dan keluar dari file.
Langkah 3) Terapkan Instance AWX yang Memungkinkan
Sekarang, mari kita terapkan instance AWX di cluster kita dengan menjalankan perintah di bawah ini,
[email protected]:~$ kubectl apply -f ansible-awx.ymlawx.awx.ansible.com/ansible-awx Created[email protected]:~$Di atas akan membuat penerapan dengan nama 'ansible-awx' dan penerapan ini akan memiliki dua pod dan layanan.
Setelah beberapa menit, Ansible AWX akan diterapkan dan jika Anda ingin memantau log penginstalan, gunakan perintah di bawah ini,
$ kubectl logs -f deployment/awx-operatorJalankan perintah di bawah ini untuk memverifikasi status AWX Pods,
[email protected]:~$ kubectl get pods -l "app.kubernetes.io/managed-by=awx-operator"NAME STATUS SIAP MULAI MULAI ULANG AGEansible -5ddf 4-vrdq 2 -5ddf postgres-0 1/1 Berjalan 0 8m24s[email protected]:~$Jalankan perintah berikut untuk melihat status layanan,
[email protected]:~$ kubectl get svc -l "app.kubernetes.io/managed-by=awx-operator"NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) none> 5432/TCP 8m31sansible-awx-service NodePort 10.97.206.8980:32483/TCP 7m55s[email protected]:~$ Harap perhatikan port node 'ansible-awx-service', kami akan menggunakannya nanti untuk penerusan port.
Langkah 4) Akses Portal AWX melalui tunneling
Untuk mengakses portal AWX di luar cluster minikube, kita harus mengkonfigurasi tunneling, jalankan
[email protected]:~$ nohup minikube tunnel &[3] 35709[email protected]:~$[email protected]:~$ kubectl get svc ansible-awx-serviceNAME TYPE CLUSTER IP ) AGEansible-awx-service NodePort 10.97.206.8980:32483/TCP 90m[email protected]:~$ Atur penerusan port sedemikian rupa sehingga, jika permintaan datang pada IP minikube pada port node '32483' maka harus diarahkan ke port 80 dari awx pod.
[email protected]:~$ kubectl port-forward svc/ansible-awx-service --address 0.0.0.0 32483:80 &> /dev/null &[4] 46686[email protected]:~$Sekarang coba akses portal AWX dari browser web dengan menggunakan alamat ip minikube dan port node 32483
http://
:
Untuk mendapatkan kredensial, kembali ke terminal dan jalankan di bawah perintah.
[email protected]:~$ kubectl get secret ansible-awx-admin-password -o jsonpath="{.data.password}" | base64 --decodePWrwGWBFCmpd1b47DJffCtK5SqYGzxXF[dilindungi email]:~$Gunakan nama pengguna sebagai 'admin' dan kata sandi sebagai output dari perintah di atas, setelah memasukkan kredensial kita akan mendapatkan dasbor berikut
Bagus, di atas mengonfirmasi bahwa Ansible AWX berhasil diinstal di Kubernetes minikube. Itu saja dari artikel ini. Saya harap Anda telah menemukannya informatif dan jika Anda memiliki pertanyaan, jangan ragu untuk menulis kepada kami di bagian komentar di bawah ini.
Baca Juga :Cara Menjalankan dan Menjadwalkan Playbook yang Memungkinkan Menggunakan AWX GUI
Cara Memperpanjang Partisi Root XFS tanpa LVM di Linux Cara Membuat dan Menggunakan Fakta Kustom di AnsibleLinux