Ansible Playbooks adalah tempat penulisan kode Ansible, semacam automation tasks yang dapat menjalankan perintah dengan sedikit atau hampir tidak perlu melibatkan campur tangan manusia. Playbooks adalah salah satu bagian dari Ansible inventory. Dalam artikel ini, kamu akan mempelajari bagaimana cara menulis, membuat hingga menjalankan Ansible Playbooks di server.
Ansible adalah tool manajemen konfigurasi yang modern yang tidak memerlukan software agent pada Remote Nodes atau Hosts Node. Tetapi, kamu hanya perlu menggunakan SSH dan Python saja untuk berkomunikasi dan menjalankan perintah pada Hosts Node. Provisioning tool ini dikembangkan oleh RedHat salah satu pembuat perangkat lunak sumber terbuka yang paling terkenal. Adanya arsitektur yang tidak memerlukan software khusus untuk diinstal pada server/node menjadikan ansible sebagai alternatif yang bagus untuk otomatisasi server. Selain itu, Ansible juga menggunakan SSH untuk melakukan automation task dan file YAML (Yet Another Markup Language) yang dapat dibaca manusia untuk menentukan provisioning details. Ansible memungkinkan pengguna untuk mengelola server dengan dua cara berbeda. Cara pertama adalah melalui Ad-Hoc Command dan yang kedua dengan Playbooks. Playbooks adalah daftar tugas YAML yang perlu dijalankan pada Hosts Node untuk menyelesaikan tasks atau mencapai goal, seperti pengaturan LEMP.
Ada beberapa hal yang perlu di perhartikan: 1. Mempunyai 3 VPS yang aktif dengan OS ubuntu 20.04 2. Mempunyai akses root Tiga VPS yang perlu disiapkan: 1. Satu Ansible Control Node Ansible Control Node yang dapat digunakan untuk connect dan control ke Ansible Host melalui SSH. 2. Dua Ansible Hosts Ansible Host yang nantinya akan dikontrol oleh Ansible Control Node yang sudah dikonfigurasi untuk otomasi. Selanjutnya, kamu akan memulai dan menjalankan Ansible Playbooks dengan cara berikut ini. Create & Running Ansible Playbooks Playbooks menentukan 1 atau lebih beberapa tayangan ulang menggunakan format YAML. Di sini kamu akan memulai dengan membuat direktori baru dengan nama “ansible-practice”. Pada penulisan Ansible Playbooks dilakukan di Ansible Control Node. $ cd ~ $ mkdir ansible-practice $ cd ansible-practice Selanjutnya, Salin inventory file ke direktori yang baru kamu buat yaitu ansible-practice. $ cp ~/ansible/inventory ~/ansible-practice/inventory Membuat file playbook baru $ nano playbook-01.yml Selanjutnya tambahkan Konten dibawah ini --- - hosts: all tasks: - name: Print message debug: msg: Hello Testing Ansible Kemudian simpan dan keluar Jalankan perintah ansible playbook untuk mencoba hasil playbook ini diserver yang kamu atur di file inventaris. Di sini kamu menggunakan inventory file dengan nama inventory dan root untuk terhubung ke remote server atau Ansible Hosts. $ ansible-playbooks -i inventory -u root Playbook di sini berarti suatu konfigurasi yang berisi kumpulan role pada Ansible yang dapat dijalankan untuk mengkonfigurasi sebuah server, di sejumlah server yang ada pada Ansible Hosts.
Ansible menggunakan SSH untuk terhubung ke server dan menjalankan semua instruksi secara jarak jauh. tentu saja hal ini, sama seperti yang biasa kita lakukan saat server jauh. Lebih baik lagi, kamu tidak perlu menginstal agen di setiap server, Cukup instal Ansible di mana pun ansible dijalankan. Bagaimana jika servernya banyak? Itu masih tetap sama, hanya saja kita perlu mengatur hostnya agar mengarah ke beberapa server.
Ada beberapa kelebihan pada ansible berikut ini: 1. Mudah digunakan Ansible mudah digunakan karena dapat langsung digunakan dengan 1 command line. 2. Mudah dipahami Selain digunakan langsung dengan command line, ansible juga mendukung serangkaian tugas yang biasa disebut dengan ansible-playbook, playbook ini berisi pekerjaan pekerjaan yang akan dijalankan secara berurutan. Playbook ini dibuat dengan dalam format yaml yang mudah dipahami. Dengan menggunakan konfigurasi saat ini dan tetap sama seperti konfigurasi di hari berikutnya. 3. Terdokumentasi Jika saat ini melakukan setup satu server dan dalam beberapa bulan kemudian diminta lagi untuk menyiapkan beberapa server berdasarkan penyimpanan sebelumnya yang telah disetup, hasilnya mungkin akan beda. Dengan penggunaan ansible, cukup membuat satu konfigurasi dan bisa dijalankan berkali kali dengan hasil yang sama. 4. Support Command Bash Ansible memiliki banyak modul yang bisa digunakan. Tetapi, Jika ingin menjalankan perintah tertentu dan belum ada di modul ansible, kamu tetap bisa menjalankan dengan modul command dan kemudian kalian bisa isi dengan command yang ingin dijalankan.
1. Meminimalisir human error Karena ansible adalah kode yang berjalan berulang kali, seharusnya konfigurasi di server atau perangkat harus selalu sama karena tidak ada kode yang berubah. Selain itu, kode ansible dapat ditinjau dan di-crosscheck oleh beberapa pihak sebelum dijalankan. 2. Infrastructure as code Saat ini metode IaC sedang banyak diminati karena setiap state dan konfigurasi di dalam infrastruktur dapat direpresentasikan dalam bentuk kode yang dapat disimpan di version control system dan dimanage serupa dengan developer software memanage source code aplikasi. Kode IaC tersebut juga dapat dengan mudah dijalankan apabila kita ingin melakukan restore infrastructure atau rebuild pada environment yang berbeda. 3. Cross platform Ansible juga dapat digunakan pada sistem operasi Linux, Windows, UNIX, dll. Ini juga dapat juga digunakan untuk memanage server, perangkat jaringan baik itu di environment fisik, virtual, ataupun di cloud.
Untuk bermain dengan ansible kalian hanya perlu menginstall dengan mudah. Di Ubuntu sudo apt-get install ansible Di CentOS/ RHel sudo yum install ansible Di Fedora dnf install ansible Di Arch pacman -s ansible Ansible juga dapat diinstall melalui repo python, namun syaratnya di tempat kalian telah terinstall pip-python, untuk menginstall ansible dari repo python cukup gunakan ketik sudo pip install ansible
Pada penjelasan artikel di atas dapat disimpulkan bahwa salah satu bagian Ansible Inventory adalah Playbooks yang berguna untuk melakukan otomasi konfigurasi yang berada pada Ansible Hosts. Saat kamu belum memiliki server atau ingin menambahkan server baru, pastikan kamu menggunakan cloud VPS agar website kamu aman, cepat, dan selalu bisa diandalkan.
Kesempatan lowongan magang terbaru di tahun 2024
Baca Selengkapnya..