DevOps Bootcamp · Pelajaran

Menggunakan ansible_facts dalam Tugas

Buat percabangan berdasarkan fact OS, memori, dan IP.

Pelajaran 3 dari 413 langkah

Menggunakan ansible_facts dalam Tugas adalah pelajaran DevOps Bootcamp gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar DevOps Bootcamp, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus DevOps Bootcamp mencakup 4 pelajaran total.

Dari Data Menjadi Keputusan

Fakta yang dikumpulkan hanya berguna jika Anda menindaklanjutinya. Sekarang Anda akan mengambil nilai dari ansible_facts langsung ke dalam tugas. 🌟

Rujuk Sebuah Fakta

Gunakan sintaks {{ }} yang sama seperti untuk variabel apa pun. Di dalam kurung kurawal, tuliskan nama fakta yang Anda inginkan, seperti distribution milik host.

- debug:
    msg: "OS is {{ ansible_distribution }}"

Akses Kamus Juga

Anda juga dapat membaca fakta melalui kamus ansible_facts dengan kunci dalam tanda kurung siku. Kedua gaya tersebut menunjuk ke data yang sama.

{{ ansible_facts['distribution'] }}

Buat Percabangan berdasarkan OS

Gabungkan fakta dengan when untuk menjalankan tugas hanya pada host yang sesuai, misalnya memasang paket hanya pada sistem Debian.

when: ansible_os_family == "Debian"

Pilih Paket yang Tepat

Fakta memungkinkan satu tugas melayani banyak distribusi. Pilih apache2 atau httpd berdasarkan keluarga OS, bukan menulis dua playbook.

name: "{{ 'apache2' if ansible_os_family == 'Debian' else 'httpd' }}"

Gunakan Fakta Numerik

Fakta seperti ansible_memtotal_mb berupa angka, sehingga Anda dapat membandingkannya dan melewati pekerjaan pada host yang terlalu kecil.

when: ansible_memtotal_mb > 2048

Akses Nilai Bertingkat

Untuk fakta bertingkat, rangkai kuncinya dengan titik. Alamat IPv4 default berada di bawah ansible_default_ipv4, lalu di bawah address.

{{ ansible_default_ipv4.address }}

Fakta dalam Templat

Nama fakta yang sama dapat digunakan di dalam templat Jinja2. Masukkan hostname atau IP host langsung ke dalam berkas konfigurasi yang dibuat.

server_name {{ ansible_hostname }};

Ulangi Fakta Berupa Daftar

Beberapa fakta berupa daftar, seperti ansible_interfaces. Anda dapat mengulanginya untuk bertindak pada setiap antarmuka jaringan yang dimiliki host.

loop: "{{ ansible_interfaces }}"

Pastikan Sebelum Mempercayai

Tidak yakin dengan nilai persis suatu fakta? Tampilkan terlebih dahulu dengan debug, lalu bangun logika yang bergantung padanya.

- debug:
    var: ansible_distribution_version

Satu Playbook, Banyak Host

Karena fakta berlaku untuk setiap host, tugas yang digerakkan oleh fakta membuat satu playbook berperilaku dengan benar di seluruh kumpulan mesin yang beragam.

Pemeriksaan Singkat

Bagaimana cara menjalankan tugas hanya pada host dari keluarga Debian?

Ringkasan

Anda membaca fakta dengan {{ }}, membuat percabangan menggunakan when, mengakses nilai bertingkat, dan mengulang fakta berupa daftar agar tugas menjadi adaptif. ✨

Gratis untuk memulai

Belajar DevOps Bootcamp dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
142
Pelajaran
568

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Menggunakan ansible_facts dalam Tugas” gratis?

Ya — teks lengkap “Menggunakan ansible_facts dalam Tugas” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus DevOps Bootcamp, upgrade ke CoddyKit PRO. Kursus DevOps Bootcamp mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Menggunakan ansible_facts dalam Tugas”?

Buat percabangan berdasarkan fact OS, memori, dan IP. Kamu berlatih DevOps Bootcamp dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai DevOps Bootcamp?

Tidak diperlukan pengalaman sebelumnya. DevOps Bootcamp di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.

Berapa lama pelajaran “Menggunakan ansible_facts dalam Tugas” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran DevOps Bootcamp ini?

Ya. Setiap pelajaran DevOps Bootcamp menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Apa Itu Facts dan Mengapa Penting
  2. Menjelajahi Facts dengan Modul setup
  3. Menggunakan ansible_facts dalam Tugas
  4. Menonaktifkan Pengumpulan Fact demi Kecepatan
← Kembali ke DevOps Bootcamp