Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Tutorial Ansible: Menambahkan Variabel Ekstra dan Hosts

Posted on July 5, 2024

Ansible dikenal sebagai tool automation powerful untuk infrastruktur IT. Salah satu fiturnya yang berguna adalah manajemen inventory. Inventory berisi daftar host yang akan dikonfigurasi oleh Ansible playbook. Namun, bagaimana jika daftar host tersebut bersifat dinamis dan tidak bisa ditentukan secara manual di awal? Tenang, Ansible menawarkan solusi! Artikel ini akan membahas dua metode ampuh untuk mengelola inventory dinamis di Ansible.

Metode 1: Memanfaatkan Variabel Ekstra dan hostvars

Metode pertama ini menggunakan kombinasi variabel ekstra dan fitur hostvars untuk mengakses informasi host secara dinamis.

Langkah 1: Siapkan Inventory File

Buat sebuah inventory file sederhana (misalnya: hosts) dengan grup bernama all. Grup ini akan menampung host-host yang ingin Anda target secara dinamis.

[all]

Langkah 2: Rancang Playbook

Selanjutnya, buat playbook Anda (misalnya: playbook.yml) dengan task yang memanfaatkan variabel ekstra dan hostvars.

YAML

---
- hosts: all
  tasks:
    - name: Task menggunakan hostvars
      debug:
        msg: "Hostname: {{ hostvars[inventory_hostname].name }}"

Penjelasan Playbook:

  • hosts: all: Baris ini menentukan target playbook, yaitu grup all yang didefinisikan di inventory file.
  • tasks: Blok ini berisi task-task yang akan dijalankan pada host-host target.
  • name: Task menggunakan hostvars: Baris ini memberi nama pada task untuk memudahkan identifikasi.
  • debug: Modul ini digunakan untuk menampilkan informasi pada saat playbook dijalankan.
    • msg: Opsi ini menentukan pesan yang akan ditampilkan. Perhatikan penggunaan {{ hostvars[inventory_hostname].name }}.
      • hostvars: Fitur ini memungkinkan Anda mengakses variabel spesifik untuk setiap host.
      • inventory_hostname: Variabel ekstra yang akan kita tentukan nanti.
      • .name: Operator titik digunakan untuk mengakses atribut spesifik dari variabel host, dalam hal ini nama host.

Langkah 3: Tentukan Variabel Ekstra

Variabel ekstra inventory_hostname belum didefinisikan. Anda bisa menetapkannya dengan beberapa cara, misalnya:

  • Melalui Command Line:
ansible-playbook playbook.yml -e inventory_hostname=server1,server2

Di sini, inventory_hostname diset menjadi string berisi nama host yang dipisahkan koma. Ansible akan secara otomatis membaginya menjadi list dan menggunakannya untuk menjalankan playbook pada masing-masing host.

  • Melalui Group Vars:

Buat file bernama group_vars/all dan tambahkan baris berikut:

YAML

inventory_hostname: ["server1", "server2"]

Metode 2: Menggunakan Inventory Plugin

Metode kedua melibatkan penggunaan inventory plugin khusus untuk Ansible. Plugin ini bertugas secara mandiri untuk mengambil dan menyediakan daftar host dinamis.

Langkah 1: Instal Inventory Plugin

Beberapa inventory plugin populer yang bisa digunakan antara lain:

  • community.kubernetes.yaml: untuk mengelola host Kubernetes.
  • cloud.aws.ec2: untuk mengelola host Amazon EC2.
  • community.azure.azure_rm: untuk mengelola host Microsoft Azure.

Cara instalasi plugin bervariasi tergantung pada plugin yang dipilih. Umumnya, Anda bisa menggunakan package manager sistem operasi Anda.

Langkah 2: Konfigurasi Inventory File

Sesuaikan inventory file Anda untuk merujuk ke plugin yang digunakan. Konsultasikan dokumentasi plugin terkait untuk mengetahui format konfigurasi yang tepat.

Langkah 3: Jalankan Playbook

Jalankan playbook Anda seperti biasa tanpa perlu menentukan host secara eksplisit. Plugin yang terinstal akan mengambil daftar host dinamis dan menyediakannya ke Ansible.

Tips Keamanan

  • Gunakan metode ini dengan hati-hati, terutama saat menjalankan task yang berpotensi mengubah konfigurasi host.
  • Pastikan Anda memiliki kontrol dan akses terhadap host-host yang terdaftar secara dinamis.

Kesimpulan

Dengan memanfaatkan variabel ekstra dan hostvars atau menggunakan inventory plugin, Anda dapat mengelola inventory secara dinamis di Ansible. Metode ini memudahkan Anda dalam mengotomatisasi pengelolaan infrastruktur yang skalabel dan fleksibel.

Pelajari Lebih Lanjut

  • Dokumentasi Ansible: https://docs.ansible.com/
  • Koleksi Plugin Ansible: https://galaxy.ansible.com/

Yuk, maksimalkan otomatisasi infrastruktur Anda dengan Ansible!

Terbaru

  • Inilah Cara Membuat File Koneksi RDP Secara Manual Biar Akses Remote Kalian Nggak Error Lagi
  • Inilah Cara Clear RDP Cache dan Registry MRU Biar Remote Desktop Kalian Kembali Segar
  • Cara Restore File Association .rdp Agar Remote Desktop Bisa Terbuka Otomatis Lagi
  • Apa itu Probabilistic Methods dalam Klasifikasi Data?
  • Apa itu Klasifikasi Data dengan Metode Feature Selection?
  • Inilah Panduan Lengkap Jalur Afirmasi Disabilitas SPMB Kota Malang 2026, Simak Syarat dan Jadwalnya!
  • Inilah Cara Lengkap Daftar UM Undip 2026: Panduan Teknis, Jadwal, dan Syarat Biar Nggak Salah Langkah!
  • Inilah Daftar Kampus Swasta Terbaik di Indonesia 2026 Versi Webometrics dan QS WUR, Nggak Kalah Sama Negeri!
  • Inilah Cara Daftar PPKB UI 2026, Kesempatan Emas Masuk Kampus Jaket Kuning Tanpa Tes!
  • Inilah Tampilan Baru Aplikasi Cek Bansos Kemensos 2026, Cara Cek Status dan Nominal Bantuan yang Cair!
  • Inilah Aturan PIN SPMB Jatim 2026, Bisa Dipakai Berapa Kali Sih?
  • Apa itu Common Techniques in Data Classification?
  • Inilah Cara Mengatasi Error Loading File Default.rdp Saat Menggunakan Remote Desktop
  • Anak Anies, Mutiara Baswedan Sukses Lulus S2 di Harvard University Sambil Momong Anak, Inspiratif Pol!
  • Inilah Kenapa Nama Cut Salwa Viral di TikTok dan X, Bikin Netizen Penasaran Banget!
  • Inilah Panduan Lengkap Fakultas Vokasi UNY Kampus Wates 2026: Jurusan, Biaya Kuliah, dan Bedanya dengan Gunungkidul
  • Inilah Arti FOMO yang Sebenarnya dan Cara Biar Jenengan Nggak Gampang Ikut-ikutan Tren Viral
  • Inilah Perbedaan Red Flag dan Green Flag Serta Cara Mengenalinya dalam Hubungan
  • Inilah Cara Menghitung Nilai Gabungan Rapor dan TKA SPMB 2026 Supaya Peluang Lolos Makin Besar
  • Inilah Sisi Gelap Dunia Kotak-Kotak, Mengenal Creepypasta Minecraft yang Bikin Pemain Merinding Seharian
  • Inilah Caranya Plotting Bidang Tanah Mandiri Lewat Aplikasi Sentuh Tanahku Supaya Data Jenengan Makin Akurat
  • Inilah Debut Yua Mikami di Drama Netflix Sins of Kujo, Perannya Bikin Banyak Orang Kaget!
  • Inilah Alasan Kenapa Video Viral Rok Hijau di Dapur Jadi Trending Topik dan Bikin Geger Netizen
  • Inilah Arti Rizz yang Viral di Media Sosial dan Rahasia Punya Karisma Alami Tanpa Perlu Banyak Gaya
  • Inilah Cara Menghapus Game Steam Sampai Bersih Biar Penyimpanan Lega dan Library Tetap Rapi
  • Inilah Cara Melacak iPhone Hilang Biar Bisa Motret Muka Pencurinya Secara Otomatis
  • Iki Loh Mitos Jam Posting Instagram yang Sering Bikin Bingung
  • Inilah Arti Withdrawn dalam Saham dan Cara Melakukannya Biar Nggak Bingung Pas Trading
  • Inilah Cara Melihat Nilai UTBK SNBT 2026 dan Tutorial Download Sertifikat Resminya
  • Inilah Kenapa Kalian Harus Pilih View TikTok Gratis Tanpa Login Biar Akun Tetap Aman dan Cepat FYP
  • Make Fedora Login Safe with Authselect and Faillock
  • How Measure Linux Security Use OpenSCAP Lynis and Systemd
  • SELinux Make Nginx Break and How to Fix It Easy
  • How See Hidden SELinux Errors When Your Server Is Broken
  • How Fix SELinux Port Denied Error With Sealert Easy Guide
  • How to Automate Your Entire SEO Strategy Using a Swarm of 100 Free AI Agents Working in Parallel
  • How to create professional presentations easily using NotebookLM’s AI power for school projects and beyond
  • How to Master SEO Automation with Google Gemini 3.1 Flash-Lite in Google AI Studio
  • How to create viral AI video ads and complete brand assets using the Claude and Higgsfield MCP integration
  • How to Transform Your Mac Into a Supercharged AI Assistant with Perplexity Personal Computer
RSS Error: WP HTTP Error: A valid URL was not provided.

©2026 emka.web.id | Design: Newspaperly WordPress Theme