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

  • Beli HP Bekas Flagship Oppo? Ini 3 Rekomendasi Terbaik yang Masih Gahar di 2026
  • Cuma 1 Jutaan! Ini 4 Rekomendasi HP POCO yang Performa Tetap Gila di 2026
  • Inilah Rekomendasi Laptop 5-6 Jutaan Paling Worth It di Pertengahan 2026, Spek Mewah Harga Ramah!
  • Inilah Deretan Smartphone Snapdragon 8s Gen 4 yang Bikin Kompetisi HP Menengah Atas Makin Panas!
  • Mengenal Otak di Balik AI: Apa Itu LLM dan Manfaatnya dalam Keseharian Kita Menurut Sebastian Raschka
  • Inilah Rahasia Spasi FF Salin Biar Nickname Kalian Makin Keren dan Unik Tanpa Aplikasi Tambahan
  • Rekomendasi HP Kamera Bagus 2-6 Jutaan Bulan Juli 2026
  • Cuma 2 Jutaan! Ini 6 Rekomendasi HP Paling Worth It Buat Multitasking dan Gaming Ringan
  • Rumor Galaxy Z Flip8 Jadi Seri Terakhir: Mengapa Samsung Mungkin Berhenti Bikin HP Lipat Clamshell?
  • Inilah Cara Registrasi Kartu SIM Pakai Verifikasi Biometrik Mulai 1 Juli 2026, Gak Bisa Lagi Pake Nomor Bodong!
  • Jangan Asal Lap! Inilah Cara Membersihkan Layar TV LED yang Benar Agar Tidak Rusak
  • Realme Narzo 100x 5G Segera Rilis: Baterai 8.000mAh, Layar 144Hz, dan Sertifikasi Militer
  • Waspada Penipuan Akun Mobile Legends: Kenali Pentingnya Marketplace Resmi dan Status PSE
  • Review DJI Osmo Pocket 4P: Kamera Saku Lensa Ganda yang Bikin Kamera Pro Kelihatan Ribet!
  • Samsung Bisa “AirDrop” ke iPhone? Cek Cara Pakai Fitur Quick Share Terbaru Ini!
  • Vivo X Fold 6 Bakal Masuk Indonesia? Speknya Gila, Baterai 7.000 mAh & Kamera 200 MP!
  • Bocoran iPhone Air 2: Akhirnya Apple Nggak Cuma Jual Tipis, Tapi Juga Baterai Awet dan Kamera Oke!
  • Google Search Console rilis fitur Social Media Property, bisa pantau TikTok & Instagram
  • Hati-hati! 22 Platform Digital Terancam Diblokir Pemerintah, Cek Daftar Hotel dan Maskapainya di Sini
  • Baterai 7.000mAh & Standar Militer, Inilah Moto G77 Power
  • Inilah Cara Shopee dan Meta Bikin Kalian Makin Gampang Dapat Cuan Afiliasi Instagram Tanpa Ribet
  • Gila Sih! Vivo Rilis HP Baterai 8.000 mAh di 2026, Nggak Perlu Ribet Bawa Powerbank Lagi?
  • Infinix Hot 70 vs Tecno Spark 50: Pilih Baterai Jumbo 7000 mAh atau Fast Charging 45W di Harga 2 Jutaan?
  • Gak Perlu HP Mahal buat Pake AI: Intip Fitur Canggih di Samsung Galaxy A37 dan A57 yang Bikin Hidup Lebih Gampang
  • Bocoran Galaxy Unpacked Juli 2026: Z Fold 8 & Z Flip 8 Bakal Fokus ke On-Device AI, Makin Canggih atau Cuma Gimmick?
  • Duel Tablet 2 Jutaan: ADVAN Tab Sketsa 3 vs itel VistaTab 30GT, Mana yang Lebih Worth It buat Kerja?
  • Review Asus ExpertBook PM5 G2: Laptop Bisnis Rasa AI, Ringan tapi Gak Kaleng-kaleng
  • Review Redmi Pad 2 9.7 4G: Tablet Murah yang Bisa Pakai Kartu SIM, Worth It Nggak?
  • Review JBL Quantum Series: Inilah Alasan Kenapa Audio Berkualitas Bisa Bikin Kamu Menang Main Game
  • Review Vivo Y500: HP Baterai Jumbo 8.100mAh yang Bikin Nggak Perlu Cari Colokan Lagi!
  • Deploy Nginx Rootful Container with Podman
  • How to Sandboxing Browser on Linux Desktop with Flatpak
  • How to Hardening Journald on Linux Server (Fedora/AlmaLinux)
  • Block Bad USB on Linux Server with USBGuard
  • How to Secure NetworkManager on Fedora/AlmaLinux
  • 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
  • Mengenal Lotte Shin Kyuk-ho Global Scholarship: Lebih dari Sekadar Bantuan Finansial untuk Mahasiswa Berprestasi
  • Jadwal MU vs Rosenborg malam ini, nonton live streaming pramusim lewat MUTV jam 11 malem
  • 7 Zodiak yang Punya Pemikiran Dewasa dan Bijaksana Melampaui Usia Biologisnya
  • Bedah Teknik Regenerative Aesthetics: Belajar dari Juvelook Advanced Injector Workshop di Bali
  • Prediksi Astrologi Juli 2026: 4 Zodiak yang Bakal Menemukan Ketenangan Setelah Badai Karma

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