allow_duplicates ja roolien idempotenttisuus
Hallitkaa roolien toistuvaa suorittamista.
allow_duplicates ja roolien idempotenttisuus on ilmainen Ansible Academy-oppitunti CoddyKitissä. Tämä on oppitunti 4/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.
Roolit suoritetaan oletuksena kerran
Jos kaksi roolia riippuu samasta common-roolista, Ansible toimii älykkäästi: se suorittaa common-roolin yhden playn aikana vain kerran, ei kahdesti.
Miksi päällekkäisyyksien poisto on olemassa
Tämä deduplication estää yhteisiä alustustusrooleja toistamasta kallista työtä, kuten perusroolin koventamista jokaiselle sovellusroolille erikseen.
Sama rooli, samat parametrit
Ohitus koskee vain tilannetta, jossa roolia pyydetään samoilla parametreilla. Samanlaiset kutsut katsotaan jo käsitellyiksi.
Eri parametrit suorittavat roolin uudelleen
Kutsukaa samaa roolia eri muuttujilla, niin Ansible suorittaa sen uudelleen. Kahdella määrityksellä käytetty vhost-rooli otetaan käyttöön kahdesti, kuten on tarkoitus.
roles:
- role: vhost
vars: { name: site_a }
- role: vhost
vars: { name: site_b }Tutustuminen allow_duplicates-asetukseen
meta/main.yml-tiedoston allow_duplicates-asetus hallitsee tätä toimintaa. Asettakaa sen arvoksi true, niin rooli voidaan suorittaa useita kertoja yhden playn aikana.
# meta/main.yml
allow_duplicates: trueMilloin päällekkäiset suoritukset sallitaan
Ottakaa asetus käyttöön rooleissa, jotka on tarkoitettu toistuvaan käyttöön, kuten useiden käyttäjien tai virtuaalipalvelimien luomiseen, kun jokainen kutsu tekee aidosti uutta työtä.
Oletusarvo on false
Oletuksena allow_duplicates on false, joten samanlaisilla parametreilla kutsuttu rooli suoritetaan vain kerran. Jättäkää asetus pois käytöstä kertaluonteisissa alustustusrooleissa.
Päällekkäisyyksien poisto ei ole idempotenssia
Päällekkäisen kutsun ohittaminen on suorituksenaikainen mukavuusominaisuus. Todellinen idempotenssi tarkoittaa, että jokainen tehtävä saavuttaa tavoitetilan riippumatta siitä, kuinka usein se suoritetaan.
Rakentakaa idempotentteja tehtäviä
Suosikaa roolissa tilapohjaisia moduuleja raakojen command-komentojen sijaan. Aidosti idempotentti rooli on turvallista suorittaa kahdesti ilman haittaa.
include_role suoritetaan aina uudelleen
Huomioikaa, että include_role ei noudata päällekkäisyyksien poistologiikkaa samalla tavalla. Dynaamisesti sisällytetty rooli suoritetaan joka kerta, kun sen kohdalle saavutaan.
Koostettava ja turvallinen
Yhdistämällä päällekkäisyyksien poiston, allow_duplicates-asetuksen ja idempotentit tehtävät voitte rakentaa roolien hierarkioita, jotka koostuvat siististi ja pysyvät turvallisina uudelleensuorituksessa.
Pikatarkistus
Muistakaa asetus, jonka avulla rooli voidaan suorittaa pelissä useammin kuin kerran.
Kertaus
Ansible poistaa identtiset roolikutsut kaksoiskappaleina; asettamalla allow_duplicates-asetukseksi true voitte toistaa yhden kutsun, ja pitämällä tehtävät idempotentteina voitte suorittaa ne turvallisesti uudelleen. ♻️
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 ”allow_duplicates ja roolien idempotenttisuus” ilmainen?
Kyllä – oppitunnin ”allow_duplicates ja roolien idempotenttisuus” 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 ”allow_duplicates ja roolien idempotenttisuus”?
Hallitkaa roolien toistuvaa suorittamista. 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 4/4.
Kuinka kauan ”allow_duplicates ja roolien idempotenttisuus”-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
- Roolien riippuvuudet tiedostossa meta/main.yml
- defaults ja vars: ohitusjärjestys
- include_role ja import_role ajon aikana
- allow_duplicates ja roolien idempotenttisuus