Ansible adalah alat otomatisasi untuk mengelola beberapa host jarak jauh dari satu mesin. Ini memberi Anda kemudahan untuk mengkonfigurasi untuk sejumlah besar host jarak jauh. Misalnya, Anda melakukan tugas yang sama di beberapa mesin, Ansible memberi Anda opsi untuk mengotomatiskan tugas-tugas ini.
Tutorial ini akan membantu Anda menginstal Ansible pada sistem Ubuntu 16.04 (Xenial) LTS.
Langkah 1 – Konfigurasikan Akses SSH
Anda dapat mengonfigurasi ssh berbasis kunci untuk host Linux Ansible jarak jauh. Jadi kata sandi tidak akan diperlukan untuk SSH. Ansible juga memungkinkan Anda menggunakan kata sandi untuk ssh, tetapi ssh berbasis kunci lebih aman.
Buat pasangan kunci ssh di server Ansible Anda:
ssh-keygen
Salin kunci publik ke semua host jarak jauh yang Anda perlukan untuk terhubung melalui kunci ssh ini.
ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]_host
Langkah 2 – Instal Ansible di Ubuntu 16.04
Ansible menyediakan PPA resminya untuk instalasi pada sistem Ubuntu. Jalankan perintah berikut untuk mengonfigurasi Ansible PPA ke sistem Ubuntu 18.04 Anda.
sudo apt-add-repository ppa:ansible/ansible
Kemudian jalankan perintah berikut untuk menginstal Ansible:
sudo apt update sudo apt install ansible
Langkah 3 – Konfigurasi Host &Grup yang Memungkinkan
Server Anda siap dengan Ansible untuk manajemen dan otomatisasi host jarak jauh. Anda dapat memiliki sejumlah host yang Anda butuhkan dan mengelolanya dengan satu server Ansible.
Di sini Anda perlu mendefinisikan sistem jarak jauh Anda dalam file host Ansible (/etc/ansible/hosts). Anda juga dapat membuat grup host dengan tipe serupa. Di sini Anda perlu mengatur host Anda ke dalam grup dengan benar. Grup digunakan untuk melakukan satu tugas pada semua host jarak jauh yang ditentukan di bawahnya.
Edit file konfigurasi host yang memungkinkan. Misalnya:
sudo nano /etc/ansible/hosts
Tambahkan host Anda dan atur dengan grup. Sebuah host dapat ditambahkan ke beberapa grup .
[webservers] web-host1 web-host2 [dbservers] db-host1
Gambar di bawah ini akan membantu Anda memahami grup dan host di bawah grup.
Konfigurasi Vars Host Tunggal
Anda perlu menentukan pengaturan untuk host Anda. File khusus host harus dengan nama yang sama dengan host (misalnya:web-host1) di bawah direktori host_vars.
sudo mkdir /etc/ansible/host_vars sudo vi /etc/ansible/host_vars/web-host1
Tambahkan pengaturan SSH ke file ini untuk web-host1.
ansible_ssh_host: 192.168.1.15 ansible_ssh_port: 22 ansible_ssh_user: root
Jika Anda belum menggunakan Langkah 1 untuk koneksi ssh untuk host ini. Anda juga dapat menambahkan salah satu metode di bawah ini ke file konfigurasi web-hosts1 untuk autentikasi.
ansible_ssh_pass: secret_password ansible_ssh_private_key_file: /home/rahul/.ssh/aws.pem
Konfigurasi Grup Vars
Anda dapat mengonfigurasi pengaturan variabel umum Grup di bawah konfigurasi grup. Nama file grup harus sama dengan nama grup (misalnya:server web) di bawah group_vars
direktori.
sudo mkdir /etc/ansible/group_vars sudo vi /etc/ansible/group_vars/webservers
Tambahkan variabel umum ke file ini yang digunakan oleh semua host yang ditambahkan di bawah grup ini.
ansible_ssh_port: 22 ansible_ssh_user: root
Langkah 4 – Uji Penyiapan yang Memungkinkan
Pengaturan Ansible Anda siap untuk diuji. Untuk menguji semua konektivitas host menggunakan modul ping seperti:
ansible -m ping all
Untuk menguji konektivitas untuk host atau grup host tertentu
ansible -m ping web-host1 ## Specific host ansible -m ping webservers ## Specific group
Anda juga dapat menjalankan perintah menggunakan modul shell. Misalnya, uji memori bebas di web-host1. Anda juga dapat melakukan tugas yang sama untuk grup. Cukup gunakan nama grup, bukan nama host.
ansible -m shell -a 'free -m' web-host1