
Kadang ada skenario yang memerlukan kita untuk melakukan suatu perintah (misalnya instal paket) yang sama untuk server dalam jumlah banyak. Kalau server-nya hanya satu atau dua buah mungkin masih bisa dilakukan secara manual. Tapi bagaimana kalau puluhan? Bisa repot kalau dilakukan secara manual. Solusinya, kita bisa pakai tool automasi seperti Ansible.
Apa Itu Ansible?
Singkatnya, Ansible dapat digunakan untuk Server Provisioning & Automation, dapat digunakan untuk melakukan konfigurasi server secara massal agar kita tidak perlu melakukan konfigurasi manual satu per satu.
Contoh Skenario Umum
Misalnya, kita punya tiga buah server. Tanpa Ansible, kita perlu SSH ke server 1, lakukan konfigurasi/instalasi, selesai, lalu SSH lagi ke server 2 dan lakukan hal yang sama sampai selesai.
Dengan Ansible, kita hanya perlu satu buah Ansible Control Host sebagai “kendali” atau server utama.
- Control host akan terhubung ke semua target server menggunakan SSH.
- Ansible akan mengirimkan perintah/perubahan sekaligus ke tiga server tujuan.
- Semua server akan dapat terkonfigurasi secara bersamaan.
Catatan: Untuk kebutuhan testing, kita tidak perlu server khusus. Kita bisa menggunakan komputer lokal sebagai control host-nya.
Ansible Playbook
Dalam Ansible, ada istilah yang dinamakan Playbook. Analogi sederhananya adalah, kalau server diibaratkan sebagai dapur, Ansible sebagai koki, maka Playbook adalah buku resep. Playbook berisi daftar instruksi (formatnya YAML) tentang apa saja yang harus dilakukan pada server tujuan. Misalnya:
- Step 1: Update repository.
- Step 2: Install Nginx.
- Step 3: Copy file konfigurasi.
- Step 4: Restart Nginx.
Version Control
Ada risiko yang dapat terjadi apabila control node kita rusak atau crash. Playbook di dalamnya bisa saja hilang. Maka dari itu, sangat disarankan untuk menggunakan version control system seperti Git agar Playbook lebih aman (dapat disimpan di cloud), perubahan versi (versioning) tercatat dengan lebih rapi, dan juga mendukung kolaborasi dengan tim dengan memungkinkan penggunaan Playbook bersama-sama.

Itu dulu tulisan kali ini. Sampai jumpa. Bye.
Referensi materi: Learn Linux TV
