Ketika mengelola lebih dari satu server, mungkin kamu akan menggunakan perintah yang sama untuk server berbeda. Hal ini bisa menjadi kendala jika kamu perlu menulis ulang perintah tanpa menggunakan provisioning tool. Salah satu provisioning tool yang bisa kamu gunakan adalah Ansible. Yuk, pelajari cara install dan konfigurasi Ansible di Ubuntu 20.04 di artikel ini.
Apa Itu Ansible?
Ansible adalah provisioning tool bersifat open source yang dikembangkan oleh Red Hat. Tool ini menjadi salah satu alat termudah untuk melakukan automation (otomatisasi) pada server.
Keberadaan arsitektur yang tidak memerlukan software khusus untuk diinstal pada server/node membuat Ansible bisa kamu gunakan sebagai alternatif yang bagus untuk otomatisasi server. Selain itu, Ansible juga menggunakan SSH untuk mengeksekusi automation task dan file YAML (Yet Another Markup Language) yang bisa dibaca manusia untuk menentukan provisioning details.
Cara Install dan Konfigurasi Ansible di Ubuntu 20.04
Sebelum memulai instalasi dan konfigurasi Ansible, ada beberapa hal yang perlu dipersiapkan:
- Memiliki 3 VPS yang aktif dengan OS Ubuntu 20.04.
- Memiliki akses root.
Tiga buah VPS yang perlu disiapkan untuk:
- Satu Ansible Control Node: Ansible Control Node yang akan digunakan untuk connect dan control ke Ansible Host melalui SSH.
- Dua Ansible Hosts: Ansible Host nantinya akan dikontrol oleh Ansible Control Node yang sudah dikonfigurasi untuk otomatisasi.
Kemudian, berikut ini adalah langkah-langkah utama yang akan kita lakukan untuk meng-install dan mengonfigurasi Ansible di Ubuntu 20.04:
- Update Server
- Install Packages
- Install Firewall
- Add SSH Key
- Install Ansible
- Setting Inventory File
- Testing Connection
- Running Ad-Hoc Command
Simak penjelasannya di bawah ini.
Baca Juga: Menggunakan SSH Key PuTTY pada Server
Update Server
Login sebagai root dan update package yang ada pada server agar up-to-date.
$ apt-get update -y
$ apt-get upgrade -y
$ reboot
Install Packages
Install beberapa packages yang dibutuhkan.
$ apt-get install nano perl wget -y
Install Firewall
Sebelum memulai instalasi dan konfigurasi Ansible di Ubuntu 20.04, kamu perlu perlu meng-install Firewall agar lebih aman. Di tutorial kali ini kita akan menggunakan CSF (ConfigServer Security & Firewall). Instalasinya dilakukan dengan perintah di bawah ini:
$ cd /usr/src
$ wget https://download.configserver.com/csf.tgz
$ tar -xzf csf.tgz
$ cd csf/
$ sh install.sh
Di bagian konfigurasi CSF, ubah “TESTING=’1’ menjadi 0”.
$ nano /etc/csf/csf.conf
Muat ulang rules CSF-nya.
$ csf -r
Add SSH Key
Tambahkan Key SSH di control node untuk masing-masing host dengan cara sebegai berikut :
$cd /home
$ssh-keygen (Ulangi sampai ke server terakhir)
$ ssh-copy-id -i server2 192.168.1.2
$ ssh-copy-id -i server3 192.168.1.3
Install Ansible pada Control Node.
$sudo apt-add-repository ppa:ansible/ansible
$apt update
$ apt-get install ansible -y
Setting Inventory File
Inventory file ini akan berisi mengenai informasi Hosts yang akan di-manage oleh Ansible. Kamu bisa menambahkan banyak server di inventori ini dan bisa diatur berdasarkan group dan subgroup.
$ nano /etc/ansible/hosts
Tambahkan script di bawah ini.
[serversubuntu]
192.168.1.2 ansible_ssh_private_key_file=/home/server2 ansible_ssh_user=root ansible_port=22
192.168.1.3 ansible_ssh_private_key_file=/home/server3 ansible_ssh_user=root ansible_port=22
[all:vars]
ansible_python_interpreter=/usr/bin/python3
$ ansible-inventory --list -y
Maka output-nya akan seperti di bawah ini.
Testing Connection
Setelah melakukan setting pada Inventory File yang memasukan beberapa server sekaligus, sekarang waktunya untuk melakukan pengetesan untuk connect ke Hosts tersebut melalui perintah SSH.
$ ansible all -m ping -u root
Maka output-nya akan seperti ini:
Arti dari “pong” adalah balasan dari Host, di mana kamu dapat menjalankan perintah Ansible.
Baca Juga: Pengertian dan Fungsi Perintah Ping CMD pada Windows
Running Ad-Hoc Command
Setelah dikonfirmasi bahwa kamu dapat menggunakan dan menjalankan perintah Ansible, Control Node dapat berkomunikasi langsung kepada Hosts. Contoh yang akan kami berikan adalah pengecekan Disk Usage pada server Hosts.
$ ansible all -a “df -h” -u root
Output-nya akan seperti di bawah ini.
Kemudian pengecekan uptime bisa dilakukan dengan perintah di bawah ini.
$ ansible serversubuntu -a “uptime” -u root
Output-nya:
0 Comments