Kapan Handler Berjalan & flush_handlers
Kendalikan waktu handler berjalan di akhir play.
Kapan Handler Berjalan & flush_handlers 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.
Handler Berjalan di Akhir
Secara bawaan, semua handler yang diberi notifikasi berjalan sekali, di bagian paling akhir play, setelah setiap tugas selesai. Bukan saat handler diberi notifikasi.
Mengapa Menundanya?
Penundaan berarti layanan dimulai ulang sekali meskipun ada banyak perubahan konfigurasi. Hal ini menghindari mulai ulang yang tidak perlu di tengah play dan menghemat waktu.
Per Host, Bukan Global
Waktu eksekusi handler dilacak per host. Setiap host menjalankan handler yang diantrekan sendiri di akhir play, secara independen dari host lainnya.
Masalah Mulai Ulang Terlambat
Terkadang tugas berikutnya memerlukan layanan yang sudah dimulai ulang. Menunggu hingga akhir play sudah terlambat, jadi Anda perlu mengosongkan antrean lebih awal.
Kenali flush_handlers
Tugas meta flush_handlers memaksa semua handler yang tertunda untuk berjalan sekarang juga, di tengah play.
- name: Run queued handlers now
ansible.builtin.meta: flush_handlersIni Adalah Tugas meta
flush_handlers adalah tindakan meta khusus yang mengendalikan Ansible itu sendiri, bukan menyentuh host jarak jauh.
Penggunaan Umum
Ubah konfigurasi, kosongkan antrean agar layanan dimulai ulang, lalu jalankan tugas pengujian dasar pada layanan yang baru dimulai ulang.
- name: Update config
ansible.builtin.template:
src: app.j2
dest: /etc/app.conf
notify: Restart app
- ansible.builtin.meta: flush_handlers
- name: Check health
ansible.builtin.uri:
url: http://localhost/healthKegagalan dan Handler
Jika sebuah host gagal sebelum akhir play, handler yang tertunda biasanya tidak berjalan. Itulah salah satu alasan pengosongan antrean lebih awal dapat lebih aman.
force_handlers sebagai Jaring Pengaman
Atur force_handlers ke true pada play agar handler yang diantrekan tetap berjalan meskipun host mengalami kegagalan setelahnya. Berguna untuk mulai ulang dalam proses pembersihan.
- hosts: web
force_handlers: true
tasks:
- ...Kosongkan Antrean Secukupnya
Gunakan flush_handlers hanya saat urutan benar-benar mengharuskannya. Penggunaan berlebihan menghilangkan manfaat pengelompokan yang diberikan handler.
Linimasa
Tugas berjalan dari atas ke bawah, handler menunggu dalam antrean, lalu semuanya dijalankan pada akhir play kecuali Anda mengosongkan antrean lebih awal. ⏱️
Pemeriksaan Singkat
Anda harus memulai ulang layanan di tengah play agar tugas berikutnya dapat mengaksesnya. Apa yang Anda gunakan?
Ringkasan
Handler biasanya berjalan sekali di akhir play, untuk setiap host. Gunakan flush_handlers untuk menjalankannya lebih awal, dan force_handlers agar tetap berjalan meskipun terjadi kegagalan. 🚀
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Kapan Handler Berjalan & flush_handlers” gratis?
Ya — teks lengkap “Kapan Handler Berjalan & flush_handlers” 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 “Kapan Handler Berjalan & flush_handlers”?
Kendalikan waktu handler berjalan di akhir play. 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 “Kapan Handler Berjalan & flush_handlers” 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
- Memberi Notifikasi kepada Handler saat Terjadi Perubahan
- Mendefinisikan Handler & Pola Mulai Ulang
- Kapan Handler Berjalan & flush_handlers
- Listen: Satu Pemicu, Banyak Handler