Mengenal lebih dekat Ansible

Mengenal lebih dekat Ansible

Ansible is a radically simple IT automation engine that automates cloud provisioning, configuration management, application deployment, intra-service orchestration, and many other IT needs.

Apa itu Ansible? Penjelasan diatas merupakan cuplikan penjelasan Ansible  yang diambil dari website ansible sendiri. Jadi kurang lebih Ansible merupakan tools automation yang digunakan untuk provisioning, configuration management, application and service deployment yang dibuat oleh Redhat. 

Dengan menggunakan ansbile kita tidak akan direpotkan dengan instruksi repetitif atau perulangan di setiap server yang kita setting. Seperti menginstal requirement untuk coding rails, java dan beberapa konfigurasi filenya. 

Mengenal lebih dekat Ansible

Sampelnya hal tersebut tidak masalah bila dilakukan di 1 server saja tapi apabila anda diminta untuk mengkonfigurasi  hal yang sama di 20  bahkan 100 server atau komputer yang sama. Bagaimana anda melakukannya? Menggunakan ansible merupakan salah satu cara untuk mengatasi masalah tersebut.

Berikut beberapa hal yang harus dilakukan untuk menggunakan ansible.

Masuklah ke server dan install package ansible:

$ sudo apt-add-repository ppa:ansible/ansible 
$ sudo apt update
$ sudo apt install ansible

Pastikan ssh public key root sudah digenerate di klien yang akan kita provisioning dengan ansible dan copykan ssh id dengan perintah berikut:

$ sudo ssh-keygen -t rsa
$ sudo ssh-copy-id root@10.14.160.62

Selanjutnya masuk ke file /etc/ansible/hosts/ dan masukan host atau klien yang akan kita provisioning dengan ansible

Mengenal lebih dekat Ansible

Kemudian cek koneksi host dari server dengan menggunakan perintah berikut, jika sukses maka akan muncul balasan seperti dibawah ini. Kita juga bisa menggunakan perintah lain yang bisa dijalankan di server kita tanpa meremote si host secara langsung. Keren kan?

Mengenal lebih dekat Ansible

Kumpulan dari konfigurasi atau service deployment dalam ansible disebut roles. Menggunakan ansible roles akan sangat membantu kita dalam mengelola konfigurasi yang kita inginkan. Dalam hal ini kita bisa mengcustom roles sesuai dengan kebutuhan kita. Roles ini umumnya memiliki ekstensi [.yml]. Berikut contoh roles yang sudah saya buat dengan nama development.yml . Roles dibawah ini berguna untuk menambahkan repository epel dan membuka port firewall si host.

Mengenal lebih dekat Ansible

Untuk menjalankannya lakukan dengan perintah berikut ini, apabila sukses akan muncul tampilan seperti dibawah ini :

$ sudo ansible-playbook -l client development.yml
Mengenal lebih dekat Ansible

Lebih seru bukan? Untuk lebih dekat lagi tentang roles silahkan baca post berikut. Silahkan Mencoba ))

Leave a Reply

Your email address will not be published. Required fields are marked *