Cara Membuat dan Mengunduh Peran di Ansible Galaxy dan Menggunakannya - Bagian 9


Di Bagian 9 Seri Ansible, Anda akan mempelajari cara membuat dan mengunduh peran di Ansible Galaxy dan menggunakannya. Ansible adalah manajemen konfigurasi & alat penerapan otomatis yang sederhana namun efektif yang mengotomatiskan tugas-tugas kompleks dengan cara yang efisien. Anda dapat mengelola ratusan atau bahkan ribuan server dari satu node kontrol menggunakan satu file pedoman.

Namun, menulis pedoman untuk mengelola layanan yang sama di lingkungan yang berbeda bisa jadi sangat rumit dan ini biasanya menyebabkan redundansi kode. Selain itu, kompleksitas yang lebih besar dapat menambah kesulitan dalam mengelola semua perangkat.

Akan ada peran. Di Ansible, peran digunakan untuk memecah pedoman menjadi file yang dapat digunakan kembali dan dapat digunakan di beberapa contoh lain ketika diperlukan untuk melakukan tugas serupa. Hal ini menghilangkan kebutuhan untuk menulis ulang pedoman berulang kali dan menghemat banyak waktu dan energi.

Peran hanyalah fungsi dari buku pedoman. Sebuah peran dikirimkan dengan hampir semua hal yang akan menjadi pedoman: Tugas, file, modul, variabel, dan templat. Perhatikan juga bahwa setiap peran terbatas pada tugas tertentu atau hasil yang diinginkan.

Menciptakan Peran yang Mungkin

Untuk membuat peran di Ansible, cukup gunakan sintaksisnya.

ansible-galaxy init role_name 

Beberapa direktori dan file akan dibuat di direktori kerja Anda saat ini. Dalam hal ini, saya memutuskan untuk membuat peran di direktori /etc/ansible/roles.

Mari buat peran yang disebut apache.

ansible-galaxy init apache

Gunakan perintah pohon untuk melihat sekilas struktur direktori peran tersebut.

tree apache

Seperti yang Anda lihat, beberapa direktori telah dibuat, namun tidak semuanya akan digunakan dalam pedoman.

Sekarang, untuk menggunakan peran yang baru Anda buat dalam buku pedoman, tentukan tugas dalam file main.yml yang terdapat dalam direktori tugas peran baru Anda.

/apache/tasks/main.yml

---

- hosts: database_servers

  tasks:

    - name: Install Apache2 on Ubuntu webserver
      apt:
         name: apache2
         state: installed

Setelah itu, buat file playbook dan panggil peran seperti yang ditunjukkan.

--- 
- hosts: webservers
  roles:
   - apache

Memasang Peran dari Ansible Galaxy

Peran memainkan peran penting dalam berbagi kode dengan pengguna lain di komunitas Ansible menggunakan platform Ansible Galaxy. Di Ansible Galaxy, Anda mendapatkan ribuan peran yang melakukan tugas berbeda seperti instalasi server web dan database, alat pemantauan, dll.

Ansible Galaxy adalah database atau tempat penyimpanan peran Ansible yang dapat Anda manfaatkan dalam buku pedoman Anda dan membantu menyederhanakan tugas Anda.

Untuk mencari peran di Ansible Galaxy, cukup jalankan perintah.

ansible-galaxy search <role>

Misalnya untuk mencari peran bernama mysql jalankan.

ansible-galaxy search mysql

Seperti yang Anda lihat, ada ratusan peran yang cocok dengan kata kunci pencarian mysql. Namun, tidak semua peran akan berfungsi sesuai keinginan Anda, jadi disarankan agar Anda membaca instruksinya dengan cermat.

Untuk mengumpulkan lebih banyak informasi tentang suatu peran, cukup jalankan perintah Ansible:

ansible-galaxy info 5KYDEV0P5.skydevops-mysql

Dalam contoh kita, kita akan menginstal peran 5KYDEV0P5.skydevops-mysql.

ansible-galaxy install 5KYDEV0P5.skydevops-mysql

Peran tersebut diunduh dan diekstraksi ke direktori peran default yang terletak di /etc/ansible/roles.

Peran tersebut selanjutnya dapat dipanggil dalam pedoman, misalnya:

---
- name: Install MySQL server
  hosts: webservers

 roles:
    • 5KYDEV0P5.skydevops-mysql

Sekarang Anda dapat menjalankan buku pedoman Ansible dengan aman seperti yang ditunjukkan.

ansible-playbook install_mysql.yml

Selain itu, Anda dapat mengunjungi Ansible Galaxy melalui browser web Anda dan secara manual mencari peran untuk melakukan berbagai tugas seperti yang diuraikan di dasbor.

Misalnya, untuk mencari peran pemantauan seperti elasticsearch, klik opsi ‘Pemantauan’ dan cari peran seperti yang ditunjukkan.

Ansible Galaxy memudahkan pengguna memasang peran terbaik dengan mencantumkan peran paling populer dan paling banyak diunduh. Untuk mendapatkan informasi lebih lanjut tentang peran tertentu, cukup klik peran tersebut.

Dalam sebuah buku pedoman, Anda juga dapat menentukan lebih dari satu peran, misalnya.

---
- name: Install MySQL server
  hosts: webservers

 roles:
    • 5KYDEV0P5.skydevops-mysql
    • Aaronpederson.mariadb

Untuk membuat daftar peran yang diinstal, jalankan saja.

ansible-galaxy list

Kesimpulan

Peran memudahkan penggunaan kembali dan berbagi buku pedoman yang memungkinkan. Dengan cara ini mereka menghemat banyak waktu pengguna saat mencoba menulis banyak kode yang berlebihan dan menghabiskan terlalu banyak waktu yang seharusnya digunakan dalam tugas administrasi sistem lainnya. Dan itu saja untuk panduan ini.