0Pricing
DevOps Bootcamp · Pelajaran

Mendefinisikan Handler & Pola Mulai Ulang

Tulis handler mulai ulang layanan yang dapat digunakan kembali.

Mendefinisikan Handler & Pola Mulai Ulang 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.

Tempat Handler Berada

Handler ditempatkan di bagian handlers tersendiri dalam play, terpisah dari tugas biasa. Dengan begitu, tindakan reaktif tetap dikelompokkan dengan jelas.

tasks:
  - name: Deploy config
    ansible.builtin.template:
      src: app.conf.j2
      dest: /etc/app.conf
    notify: Restart app
handlers:
  - name: Restart app
    ansible.builtin.service:
      name: app
      state: restarted

Handler Adalah Tugas

Handler menggunakan sintaks yang sama persis seperti tugas: sebuah nama dan pemanggilan modul. Satu-satunya perbedaan adalah handler menunggu notifikasi.

Nama Adalah Kontrak

Nama handler adalah string yang dirujuk tugas lain dalam notify. Perlakukan nama tersebut sebagai label stabil dan persis yang akan Anda gunakan kembali.

Memulai Ulang dengan service

Handler mulai ulang klasik menggunakan modul service dengan state yang diatur ke restarted. Modul tersebut menghentikan dan memulai unit dalam satu langkah.

- name: Restart nginx
  ansible.builtin.service:
    name: nginx
    state: restarted

Muat Ulang vs Mulai Ulang

Utamakan reloaded saat layanan mendukungnya. Muat ulang membaca kembali konfigurasi tanpa memutus koneksi, berbeda dari mulai ulang penuh.

- name: Reload nginx
  ansible.builtin.service:
    name: nginx
    state: reloaded

Gunakan systemd Secara Langsung

Modul systemd memberikan kontrol yang lebih terperinci pada host systemd, termasuk daemon_reload setelah Anda mengubah berkas unit.

- name: Restart app
  ansible.builtin.systemd:
    name: app
    state: restarted
    daemon_reload: true

Buat Handler Tetap Umum

Tulis satu handler Restart nginx yang dapat digunakan ulang dan beri notifikasi kepadanya dari banyak tugas. Hindari menyalin logika mulai ulang yang sama di mana-mana.

Handler Berjalan Sesuai Urutan Definisi

Saat beberapa handler masuk antrean, handler tersebut berjalan sesuai urutan saat didefinisikan, bukan urutan saat diberi notifikasi. Rencanakan urutan tersebut.

Urutan Penting untuk Dependensi

Jika pemuatan ulang harus terjadi sebelum mulai ulang, definisikan keduanya dalam urutan tersebut di daftar handler agar antrean berjalan dengan benar.

Handler dalam Role

Dalam sebuah role, handler berada di handlers/main.yml. Tugas dalam role memberi notifikasi kepadanya berdasarkan nama, sama seperti dalam playbook biasa.

Penamaan untuk Kejelasan

Gunakan nama bergaya tindakan seperti Restart nginx atau Muat ulang sshd. Nama yang jelas membuat keluaran mudah dibaca dan baris notify mudah dikenali.

Pemeriksaan Singkat

Anda mengubah konfigurasi dan ingin layanan yang sedang berjalan memuatnya tanpa memutus koneksi. State mana yang terbaik?

Ringkasan

Sekarang Anda dapat mendefinisikan handler di bagian handlers, memilih mulai ulang atau muat ulang, dan mengandalkan eksekusi berdasarkan urutan definisi. 🎯

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Mendefinisikan Handler & Pola Mulai Ulang” gratis?

Ya — teks lengkap “Mendefinisikan Handler & Pola Mulai Ulang” 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 “Mendefinisikan Handler & Pola Mulai Ulang”?

Tulis handler mulai ulang layanan yang dapat digunakan kembali. 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 “Mendefinisikan Handler & Pola Mulai Ulang” 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. Memberi Notifikasi kepada Handler saat Terjadi Perubahan
  2. Mendefinisikan Handler & Pola Mulai Ulang
  3. Kapan Handler Berjalan & flush_handlers
  4. Listen: Satu Pemicu, Banyak Handler
← Kembali ke DevOps Bootcamp