DevOps Bootcamp · Pelajaran

delegate_to & run_once untuk Orkestrasi

Jalankan tugas di satu host untuk banyak host.

Pelajaran 2 dari 413 langkah

delegate_to & run_once untuk Orkestrasi adalah pelajaran DevOps Bootcamp gratis di CoddyKit. Ini adalah pelajaran 2 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.

Tugas Tidak Selalu Berjalan di Tempat yang Anda Kira

Secara default, setiap tugas berjalan di mesin targetnya. Untuk orkestrasi, terkadang Anda perlu menjalankan tugas sepenuhnya di tempat lain. 🎯

Kenali delegate_to

Kata kunci delegate_to menjalankan tugas di mesin yang berbeda dari mesin saat ini, sambil tetap menggunakan variabel mesin tersebut.

- name: Add web node to load balancer
  community.general.haproxy:
    host: "{{ inventory_hostname }}"
    state: enabled
  delegate_to: lb01

Kasus Penggunaan Klasik

Saat melakukan loop pada node web, delegasikan perubahan penyeimbang beban ke mesin LB. Play tetap berjalan per node, tetapi aksinya diterapkan pada LB.

Delegasikan ke localhost

Jalankan tugas pada node kontrol dengan mendelegasikannya ke localhost. Cara ini cocok untuk memanggil API atau mengirim notifikasi dari satu tempat.

- name: Notify chat
  ansible.builtin.uri:
    url: "{{ webhook }}"
    method: POST
  delegate_to: localhost

Variabel Tetap Bersama Mesin Asal

Delegasi memindahkan tempat tugas dijalankan, bukan fakta yang dilihatnya. inventory_hostname tetap menamai target asli, bukan mesin yang menerima delegasi.

Kenali run_once

Kata kunci run_once menjalankan tugas satu kali untuk seluruh kelompok, bukan satu kali per mesin. Ansible memilih mesin pertama untuk mengeksekusinya.

- name: Run database migration
  ansible.builtin.command: ./migrate.sh
  run_once: true

Mengapa run_once Penting

Beberapa aksi harus dilakukan hanya satu kali, seperti migrasi atau pemilihan pemimpin. run_once mencegah setiap mesin mengulangi langkah bersama yang sama.

Gunakan Keduanya Bersama

Gabungkan run_once dengan delegate_to untuk melakukan satu aksi pada satu mesin yang dipilih, seperti menjalankan migrasi dari satu node aplikasi.

- name: Migrate db once
  ansible.builtin.command: ./migrate.sh
  run_once: true
  delegate_to: app01

Hasilnya Dibagikan

Dengan run_once, hasil yang terdaftar dibagikan ke semua mesin dalam kelompok. Semuanya melihat keluaran dari satu eksekusi tersebut.

- ansible.builtin.command: cat /etc/version
  run_once: true
  register: ver

Kumpulkan Fakta dari Mesin Delegasi

Gunakan delegate_facts jika ingin fakta yang dikumpulkan dikaitkan dengan mesin delegasi, bukan mesin saat ini. Secara default, opsi ini tidak aktif.

Orkestrasi, Bukan Sekadar Konfigurasi

Bersama-sama, kata kunci ini mengubah konfigurasi per mesin menjadi orkestrasi yang sebenarnya: mengoordinasikan satu aksi di seluruh kumpulan mesin dari satu titik.

Pemeriksaan Singkat

Mari kita periksa kata kunci orkestrasi ini.

Rangkuman

Gunakan delegate_to untuk menjalankan tugas pada mesin lain dan run_once untuk menjalankannya satu kali per kelompok, yang merupakan inti orkestrasi. ✅

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 “delegate_to & run_once untuk Orkestrasi” gratis?

Ya — teks lengkap “delegate_to & run_once untuk Orkestrasi” 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 “delegate_to & run_once untuk Orkestrasi”?

Jalankan tugas di satu host untuk banyak host. 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 2 dari 4.

Berapa lama pelajaran “delegate_to & run_once untuk Orkestrasi” 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. Mengotomatiskan Perangkat Jaringan dengan cli_command
  2. delegate_to & run_once untuk Orkestrasi
  3. Mengoordinasikan Tingkatan Web, Aplikasi & DB
  4. Mengosongkan & Mengaktifkan Kembali Load Balancer
← Kembali ke DevOps Bootcamp