Het project ontwerpen: roles en inventory
Breng de volledige deploymentrepository in kaart.
Het project ontwerpen: roles en inventory is een gratis DevOps-bootcamp-les op CoddyKit. Dit is les 1 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject DevOps-bootcamp. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus DevOps-bootcamp bevat in totaal 4 lessen.
Het doel van het eindproject
Het is tijd om een echte app met meerdere lagen uit te rollen met een stapsgewijze uitrol en nul uitvaltijd. Eerste stap: ontwerp de projectindeling. 🚀
Denk in rollen
Verdeel het systeem in rollen: één per aandachtspunt, zoals common, web, app, db en loadbalancer. Elke rol is afzonderlijk herbruikbaar en te testen.
De indeling op het hoogste niveau
Een overzichtelijke opslagplaats bevat inventory, group_vars, roles en een site.yml-invoerplaybook in de hoofdmap, zodat iedereen snel kan vinden wat nodig is.
deploy/
site.yml
inventory/
group_vars/
host_vars/
roles/site.yml brengt alles samen
Je hoofdplaybook site.yml importeert de plays per laag in de juiste volgorde. Het is de ene opdracht waarmee je de volledige stack uitrolt.
- import_playbook: plays/loadbalancer.yml
- import_playbook: plays/db.yml
- import_playbook: plays/app.yml
- import_playbook: plays/web.ymlKoppel lagen aan groepen
Je inventory definieert één groep per laag: lb, db, app en web. Elke play richt zich precies op de hosts waarvoor deze verantwoordelijk is.
[lb]
lb1
[web]
web1
web2
[app]
app1
app2
[db]
db1group_vars per laag
Bewaar instellingen per laag in group_vars: webpoorten, de appversie en databasegegevens. Hosts nemen deze automatisch over, zonder kopiëren en plakken.
group_vars/web.yml:
nginx_port: 80
upstream: app:8080host_vars voor uitzonderingen
Als één host afwijkt, plaats je de overschrijvingen in host_vars. De primaire database kan bijvoorbeeld replicatie-instellingen bevatten die de andere hosts niet hebben.
host_vars/db1.yml:
postgresql_role: primaryZet de appversie vast
Maak de releaseversie een variabele in plaats van een hardgecodeerde tekenreeks. Met één wijzigingspunt kun je in enkele seconden vooruit- of terugrollen.
group_vars/all.yml:
app_version: "2.4.1"Scheid omgevingen
Houd per omgeving afzonderlijke inventory-mappen bij, zodat staging en productie nooit dezelfde hosts delen. Dezelfde rollen, andere doelen.
inventory/
staging/hosts
production/hostsVergrendel je afhankelijkheden
Vermeld externe Galaxy-rollen in requirements.yml, zodat elk teamlid en elke CI-uitvoering exact dezelfde automatiseringscode installeert.
roles:
- name: geerlingguy.nginx
version: 3.1.4Een goede architectuur loont
Een doordachte indeling verandert een spannende uitrol in enkele voorspelbare opdrachten. Een goede structuur bespaart je later veel brandjesblussen. 🧱
Korte controle
Laten we één configuratieonderdeel op de juiste plek zetten.
Samenvatting
Je hebt de opslagplaats ontworpen: rollen per laag, inventory-groepen, group_vars en host_vars, plus een site.yml die de volledige uitrol uitvoert. ✅
Leer DevOps-bootcamp met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 142
- Lessen
- 568
Veelgestelde vragen
Is de les “Het project ontwerpen: roles en inventory” gratis?
Ja — je kunt hier op het web alle 3 lessen van het leerpad DevOps-bootcamp, waaronder “Het project ontwerpen: roles en inventory”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus DevOps-bootcamp bevat in totaal 4 lessen.
Wat leer ik in “Het project ontwerpen: roles en inventory”?
Breng de volledige deploymentrepository in kaart. Je oefent met DevOps-bootcamp door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met DevOps-bootcamp te beginnen?
Ervaring vooraf is niet nodig. DevOps-bootcamp op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 1 van 4.
Hoe lang duurt de les “Het project ontwerpen: roles en inventory”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over DevOps-bootcamp?
Ja. Elke les over DevOps-bootcamp bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Het project ontwerpen: roles en inventory
- Hosts provisionen, hardenen en bootstrapppen
- Rolling deployment achter de loadbalancer
- Smoke tests, rollback en meldingen