Käsittelijöiden määrittäminen ja uudelleenkäynnistysmallit
Kirjoittakaa uudelleenkäytettäviä palvelun uudelleenkäynnistyksen käsittelijöitä.
Käsittelijöiden määrittäminen ja uudelleenkäynnistysmallit on ilmainen Ansible Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Ansible Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Ansible Academy-kurssilla on yhteensä 4 oppituntia.
Missä handlerit sijaitsevat
Handlerit sijoitetaan playn omaan handlers-osioon erilleen tavallisista tehtävistä. Näin reaktiiviset toiminnot pysyvät selkeästi ryhmiteltyinä.
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: restartedHandler on tehtävä
Handler käyttää täsmälleen samaa syntaksia kuin tehtävä: nimi ja moduulikutsu. Ainoa ero on, että se odottaa ilmoitusta.
Nimi on sopimus
Handlerin nimi on merkkijono, johon muut tehtävät viittaavat notify-arvossaan. Käsitelkää sitä vakaana ja täsmällisenä tunnisteena, jota käytätte uudelleen.
Uudelleenkäynnistys servicellä
Klassinen uudelleenkäynnistyshandler käyttää service-moduulia, jonka tilaksi asetetaan restarted. Se pysäyttää ja käynnistää yksikön yhdellä vaiheella.
- name: Restart nginx
ansible.builtin.service:
name: nginx
state: restartedUudelleenlataus vastaan uudelleenkäynnistys
Suosikaa tilaa reloaded, kun palvelu tukee sitä. Uudelleenlataus lukee asetukset uudelleen katkaisematta yhteyksiä, toisin kuin täydellinen uudelleenkäynnistys.
- name: Reload nginx
ansible.builtin.service:
name: nginx
state: reloadedKäyttäkää systemdiä suoraan
systemd-moduuli tarjoaa systemd-isännissä tarkemman hallinnan, mukaan lukien daemon_reload-toiminnon yksikkötiedoston muuttamisen jälkeen.
- name: Restart app
ansible.builtin.systemd:
name: app
state: restarted
daemon_reload: truePitäkää handlerit yleiskäyttöisinä
Kirjoittakaa yksi uudelleenkäytettävä Käynnistä nginx uudelleen -handler ja ilmoittakaa sille useista tehtävistä. Välttäkää saman uudelleenkäynnistyslogiikan kopioimista kaikkialle.
Handlerit suoritetaan määritysjärjestyksessä
Kun useita handlereita on jonossa, ne suoritetaan siinä järjestyksessä, jossa ne on määritetty, ei siinä järjestyksessä, jossa niille ilmoitettiin. Suunnitelkaa järjestys etukäteen.
Järjestyksellä on merkitystä riippuvuuksien kannalta
Jos uudelleenlatauksen on tapahduttava ennen uudelleenkäynnistystä, määritelkää ne tässä järjestyksessä handlers-listassa, jotta jono suoritetaan oikein.
Handlerit rooleissa
Roolissa handlerit sijaitsevat tiedostossa handlers/main.yml. Roolin tehtävät ilmoittavat niille nimen perusteella aivan kuten tavallisessa playbookissa.
Selkeyttä nimillä
Käyttäkää toimintoa kuvaavia nimiä, kuten Käynnistä nginx uudelleen tai Lataa sshd uudelleen. Selkeät nimet tekevät tulosteesta helposti luettavan ja notify-riveistä ilmeisiä.
Pikatarkistus
Muokkasitte asetuksia ja haluatte käynnissä olevan palvelun ottavan ne käyttöön katkaisematta yhteyksiä. Mikä tila on paras?
Kertaus
Osaatte nyt määrittää handlerit handlers-osiossa, valita uudelleenkäynnistyksen ja uudelleenlatauksen välillä sekä hyödyntää määritysjärjestyksen mukaista suorittamista. 🎯
Opi YAML tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 30
- Oppitunnit
- 120
Usein kysytyt kysymykset
Onko oppitunti ”Käsittelijöiden määrittäminen ja uudelleenkäynnistysmallit” ilmainen?
Kyllä – oppitunnin ”Käsittelijöiden määrittäminen ja uudelleenkäynnistysmallit” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Ansible Academy-kurssin, päivitä CoddyKit PROhon. Ansible Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Käsittelijöiden määrittäminen ja uudelleenkäynnistysmallit”?
Kirjoittakaa uudelleenkäytettäviä palvelun uudelleenkäynnistyksen käsittelijöitä. Harjoittelet Ansible Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Ansible Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Ansible Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.
Kuinka kauan ”Käsittelijöiden määrittäminen ja uudelleenkäynnistysmallit”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Ansible Academy-oppitunnilla?
Kyllä. Jokainen Ansible Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Käsittelijän ilmoittaminen muutoksen yhteydessä
- Käsittelijöiden määrittäminen ja uudelleenkäynnistysmallit
- Milloin käsittelijät suoritetaan ja flush_handlers
- Listen: yksi käynnistin, monta käsittelijää