Cara Membuat dan Menggunakan Template di Ansible Playbooks
Cara Membuat dan Menggunakan Template di Ansible Playbooks
Cara Membuat dan Menggunakan Template di Ansible Playbooks
Cara Membuat dan Menggunakan Template di Ansible Playbooks
Cara Membuat dan Menggunakan Template di Ansible Playbooks
Ansible Playbooks berguna untuk mempermudah pengelolaan beberapa server sekaligus. Sebab, kamu tak perlu menulis perintah yang sama berulang kali di server berbeda. Ada beberapa template Ansible yang bisa kamu gunakan untuk membuat file baru pada node menggunakan model yang sudah ditentukan. Pelajari cara membuat dan menggunakan template Ansible Playbooks di bawah 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.
Template yang ada di Ansible memungkinkanmu membuat file baru pada node menggunakan model berdasarkan sistem template Jinja2. Template Ansible biasanya disimpan dengan format .tpl dan mendukung penggunaan variabel, loops, dan conditional expression.
Biasanya, template ini digunakan untuk mengonfigurasi layanan berdasarkan nilai variabel yang dapat diatur pada Playbooks dalam file variabel atau diperoleh melalui facts. Hal ini memungkinkanmu untuk membuat perintah lebih serbaguna yang dapat menyesuaikan behavior berdasarkan dynamic information.
Baca Juga: Cara Install dan Konfigurasi Ansible di Ubuntu 20.04
Cara Membuat dan Menggunakan Template di Ansible Playbooks
Berikut ini adalah beberapa hal yang perlu kamu persiapkan agar dapat membuat dan menggunakan template Ansible Playbooks:
- Memiliki 2 VPS yang aktif dengan OS Ubuntu 20.04.
- Memiliki akses root.
- Satu VPS Ansible Control Node yang sudah terinstal Ansible.
Dua VPS yang perlu disiapkan untuk:
- Satu Ansible Control Node: Ansible Control Node yang akan digunakan untuk connect dan control ke Ansible Host melalui SSH.
- Satu Ansible Hosts: Ansible Host nantinya akan dikontrol oleh Ansible Control Node yang sudah dikonfigurasi untuk otomatisasi.
Kemudian, ada beberapa poin untuk langkah utama yang akan kita lakukan:
- Update Server
- Create User
- Create Directory
- Create Inventory
- Create Template File
- Create File Playbook
- Run Playbook
Simak penjelasan dari langkah di atas berikut ini.
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
Create User
Pembuatan user diperlukan untuk membuat dan menggunakan template di Ansible Playbooks, kamu bisa mempelajari caranya di bawah ini. Jangan lupa untuk mengubah username “raka” dengan nama yang ingin kamu gunakan. Namun, jika kamu sudah memiliki user, kamu bisa melewati langkah ini.
$ sudo adduser raka Adding user `raka' ... Adding new group `raka' (1000) ... Adding new user `raka' (1000) with group `raka' ... Creating home directory `/home/raka' ... Copying files from `/etc/skel' ... New password: Retype new password: passwd: password updated successfully Changing the user information for raka Enter the new value, or press ENTER for the default Full Name []: Raka Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [Y/n] y
Tambahkan user ke Sudo Group.
$ usermod -aG sudo raka
Create Directory
Buat direktori ansible-practice dan files di dalam ansible-practice.
$ cd ~ $ mkdir ansible-practice $ mkdir ansible-practice/files
Create Inventory
Inventory di sini adalah daftar IP server yang akan dijadikan sebagai Ansible Host atau remote Host.
$ cd ansible-practice $ nano inventory 103.xxx.xxx.201
Kemudian simpan dan keluar. Jangan lupa untuk mengubah alamat IP di atas menjadi IP server yang kamu gunakan.
Baca Juga: IP Address: Pengertian dan Jenis-Jenis Alamat IP
Create Template File
Buat file untuk template HTML testing page seperti di bawah ini.
$ nano ~/ansible-practice/files/testing-page.html.j2
Tempelkan script di bawah ini.
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title></title> <meta name="description" content="Hi from Ansible"> </head> <body> <h1></h1> <p></p> </body> </html>
Lalu simpan dan keluar. Template di atas menggunakan 2 variabel, yaitu page_title dan page_description yang nantinya akan dideklarasikan di Playbooks dan menggantikan default template dari Nginx, yaitu index.html.
Create File Playbook
Buat file playbook baru dengan nama playbook-te01.yml di direktori ansible-practice.
$ nano ~/ansible-practice/playbook-te01.yml
Tempelkan script di bawah ini.
--- - hosts: all become: yes vars: page_title: My Testing Page page_description: This is my Testing page description. tasks: - name: Install Nginx apt: name: nginx state: latest - name: Apply Page Template template: src: files/testing-page.html.j2 dest: /var/www/html/index.html - name: Allow all access to tcp port 80 ufw: rule: allow port: '80' proto: tcp
Run Playbook
Jalankan perintah ansible-playbook agar dapat mengeksekusi file yang baru dibuat sebelumnya.
$ ansible-playbook -i inventory playbook-te01.yml -u raka -K
Kemudian akan keluar output seperti di bawah ini.
BECOME password: PLAY [all] ********************************************************************* TASK [Gathering Facts] ********************************************************* Enter passphrase for key '/root/.ssh/id_rsa': ok: [103.xxx.xxx.201] TASK [Install Nginx] *********************************************************** ok: [103.xxx.xxx.201] TASK [Apply Page Template] ***************************************************** changed: [103.xxx.xxx.201] TASK [Allow all access to tcp port 80] ***************************************** ok: [103.xxx.xxx.201] PLAY RECAP ********************************************************************* 103.xxx.xxx.201 : ok=4 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
Setelah prosesnya selesai, kamu bisa mengecek hasilnya dengan membuka URL IP, domain Ansible Host, atau remote server yang sudah kamu tambahkan di inventory, di sini kami menggunakan 103.xxx.xxx.201. Jika proses membuat dan menggunakan template ansible-playbooks berhasil dijalankan, tampilannya akan seperti gambar berikut ini.
Baca Juga: KernelCare Mengatasi Meltdown dan Spectre Tanpa Reboot Server
Simpulan
Jika diikuti dengan tepat, berarti kamu sudah berhasil membuat dan menggunakan template Ansible Playbooks. Provisioning tool ini bisa kamu manfaatkan untuk menginstal atau mengonfigurasi Control Node agar dapat diterapkan secara otomatis ke Hosts tanpa repot melakukan instalasi dan konfigurasi manual di setiap server.
Jika saat ini kamu belum memiliki server atau ingin menambah server baru, pastikan kamu menggunakan cloud VPS dari Dewaweb agar website-mu aman, cepat, dan selalu bisa diandalkan. Demikian artikel cara membuat dan menggunakan template di Ansible Playbooks ini, jangan sungkan untuk meninggalkan ide-ide topik yang ingin kamu baca di blog Dewaweb. Salam sukses online!
The post Cara Membuat dan Menggunakan Template di Ansible Playbooks appeared first on Blog Dewaweb.
Blog Dewaweb https://ift.tt/3nwyr3B
via Blogger https://ift.tt/3nzoh2j
September 14, 2021 at 11:43AM
via Blogger https://ift.tt/3nrQAje
September 14, 2021 at 11:44AM
via Blogger https://ift.tt/3Ed2MdF
September 14, 2021 at 11:44AM
via Blogger https://ift.tt/3nrgqnv
September 14, 2021 at 11:44AM
via Blogger https://ift.tt/3hr0o99
September 14, 2021 at 11:44AM
via Blogger https://ift.tt/3hvtl42
September 14, 2021 at 12:53PM