Web-, sovellus- ja tietokantakerrosten koordinointi
Järjestäkää monikerroksinen käyttöönotto.
Web-, sovellus- ja tietokantakerrosten koordinointi on ilmainen Ansible Academy-oppitunti CoddyKitissä. Tämä on oppitunti 3/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.
Oikeissa sovelluksissa on tasoja
Tyypillinen pino jakautuu tasoihin: web-palvelimiin, sovelluspalvelimiin ja tietokantaan. Jokaisella tasolla on oma roolinsa ja oma käyttöönottamisjärjestyksensä. 🏗️
Järjestyksellä on merkitystä
Yleensä käynnistätte ensin tietokannan, sitten sovelluksen ja lopuksi web-tason. Tasojen määrittäminen väärässä järjestyksessä rikkoo käyttöönoton.
Yksi play kutakin tasoa kohti
Antakaa kullekin tasolle oma play yhdessä playbookissa. Playt suoritetaan ylhäältä alas, joten niiden järjestys määrittää käyttöönoton vaiheet.
- hosts: db
roles: [postgres]
- hosts: app
roles: [backend]
- hosts: web
roles: [nginx]Ryhmät vastaavat tasoja
Inventoryn ryhmät, kuten db, app ja web, vastaavat niitä isäntiä, joihin kukin play kohdistuu. Inventory muodostaa orkestroinnin perustan.
[db]
db01
[app]
app01
app02
[web]
web01
web02Välittäkää tietoja tasojen välillä
Web-taso tarvitsee usein sovelluspalvelinten IP-osoitteet. Lukekaa ne hostvars-muuttujien ja ryhmien avulla, jotta voitte yhdistää yhden tason toiseen.
backends: "{{ groups['app'] | map('extract', hostvars, 'ansible_host') | list }}"Odottakaa, että taso on valmis
Varmistakaa ennen sovelluksen käynnistämistä, että tietokannan portti on avoinna, käyttämällä wait_for-moduulia. Näin ette etene hitaamman palvelun edelle.
- ansible.builtin.wait_for:
host: db01
port: 5432
timeout: 60Suorittakaa migraatiot kerran
Tietokannan skeeman muutokset tulee suorittaa vain kerran. Yhdistäkää run_once delegointiin, jotta yksi sovellussolmu siirtää jaetun tietokannan uuteen skeemaan.
- ansible.builtin.command: ./migrate.sh
run_once: true
delegate_to: app01Yltäkää tasojen yli delegate_to-avainsanalla
Sovelluksen play voi käsitellä web-tasoa delegoimalla tehtävän web-isännälle. Yksi playbook voi koordinoida kaikkia tasoja.
Merkitkää tasot kohdennettuja ajoja varten
Lisätkää playeihin tags-tunnisteita, kuten db, app ja web, jotta voitte ottaa yksittäisen tason uudelleen käyttöön --tags-valitsimella, kun vain yksi taso muuttui.
- hosts: web
tags: web
roles: [nginx]Pysäyttäkää koko pino heti virheen sattuessa
Asettakaa any_errors_fatal, jotta db-tason virhe pysäyttää koko ajon ennen kuin app-taso otetaan käyttöön rikkinäisen tason päälle.
- hosts: db
any_errors_fatal: true
roles: [postgres]Koko pino yhdessä tiedostossa
Usean playn playbookista tulee käyttöönoton ohje: kaikki tasot oikeassa järjestyksessä ja tasojen väliset yhteydet kuvattuna yhdessä paikassa.
Pikatarkistus
Tarkistetaan, miten tasot järjestetään.
Kertaus
Koordinoikaa tasoja yhdellä play-rakenteella kutakin kerrosta kohti oikeassa käyttöönottamisjärjestyksessä ja yhdistäkää ne ryhmien, hostvars-muuttujien, wait_for-asetuksen ja delegoinnin avulla. ✅
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 ”Web-, sovellus- ja tietokantakerrosten koordinointi” ilmainen?
Kyllä – oppitunnin ”Web-, sovellus- ja tietokantakerrosten koordinointi” 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 ”Web-, sovellus- ja tietokantakerrosten koordinointi”?
Järjestäkää monikerroksinen käyttöönotto. 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 3/4.
Kuinka kauan ”Web-, sovellus- ja tietokantakerrosten koordinointi”-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
- Verkkolaitteiden automatisointi cli_commandilla
- delegate_to ja run_once orkestroinnissa
- Web-, sovellus- ja tietokantakerrosten koordinointi
- Kuormantasaajan tyhjennys ja uudelleenaktivointi