Intensiv DevOps-uddannelse · Lektion

Design projektet: Roles & inventory

Strukturér hele deployment-repositoriet.

Lektion 1 af 413 trin

Design projektet: Roles & inventory er en gratis Intensiv DevOps-uddannelse-lektion på CoddyKit. Dette er lektion 1 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i Intensiv DevOps-uddannelse, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Intensiv DevOps-uddannelse-kurset indeholder 4 lektioner i alt.

Målet for afslutningsprojektet

Det er tid til at udrulle en rigtig applikation med flere lag med en rullende udrulning og nul nedetid. Første trin: design projektets struktur. 🚀

Tænk i roller

Opdel systemet i roller: én pr. ansvarsområde, f.eks. common, web, app, db og loadbalancer. Hver rolle kan genbruges og testes for sig.

Strukturen på øverste niveau

Et overskueligt repository har inventar, group_vars, roller og en site.yml-startplaybook i roden, så alle hurtigt kan finde det, de skal bruge.

deploy/
  site.yml
  inventory/
  group_vars/
  host_vars/
  roles/

site.yml binder det hele sammen

Din masterplaybook site.yml importerer plays for hvert lag i rækkefølge. Det er den ene kommando, der udruller hele stakken.

- import_playbook: plays/loadbalancer.yml
- import_playbook: plays/db.yml
- import_playbook: plays/app.yml
- import_playbook: plays/web.yml

Knyt lag til grupper

Dit inventar definerer én gruppe pr. lag: lb, db, app og web. Hvert play er målrettet præcis de værter, det ejer.

[lb]
lb1

[web]
web1
web2

[app]
app1
app2

[db]
db1

group_vars pr. lag

Gem indstillinger for lagene i group_vars: webporte, applikationsversion og databaselegitimationsoplysninger. Værterne arver dem automatisk uden kopiering og indsættelse.

group_vars/web.yml:
  nginx_port: 80
  upstream: app:8080

host_vars til særlige tilfælde

Når én vært adskiller sig, skal du placere tilsidesættelser i host_vars. Den primære database kan f.eks. have replikeringsindstillinger, som de øvrige værter mangler.

host_vars/db1.yml:
  postgresql_role: primary

Fastlås applikationsversionen

Gør udgivelsesversionen til en variabel i stedet for en hardkodet streng. Ét ændringspunkt giver dig mulighed for at rulle frem eller tilbage på få sekunder.

group_vars/all.yml:
  app_version: "2.4.1"

Adskil miljøer

Brug separate inventar-mapper pr. miljø, så staging og produktion aldrig deler værter. Samme roller, forskellige mål.

inventory/
  staging/hosts
  production/hosts

Fastlås dine afhængigheder

Angiv eksterne Galaxy-roller i requirements.yml, så alle på teamet og alle CI-kørsler installerer præcis den samme automatiseringskode.

roles:
  - name: geerlingguy.nginx
    version: 3.1.4

Det betaler sig at starte med arkitekturen

En gennemtænkt struktur forvandler en skræmmende udrulning til nogle få forudsigelige kommandoer. Struktur nu sparer dig for brandslukning senere. 🧱

Hurtigt tjek

Lad os placere ét stykke konfiguration korrekt.

Opsummering

Du designede repositoryet: roller pr. lag, inventargrupper, group_vars og host_vars samt en site.yml, der kører hele udrulningen. ✅

Gratis at komme i gang

Lær Intensiv DevOps-uddannelse med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
142
Lektioner
568

Ofte stillede spørgsmål

Er lektionen “Design projektet: Roles & inventory” gratis?

Ja — alle 3 lektioner i læringssporet Intensiv DevOps-uddannelse, inklusive “Design projektet: Roles & inventory”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Intensiv DevOps-uddannelse-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Design projektet: Roles & inventory”?

Strukturér hele deployment-repositoriet. Du øver dig i Intensiv DevOps-uddannelse med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Intensiv DevOps-uddannelse?

Der kræves ingen tidligere erfaring. Intensiv DevOps-uddannelse på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 1 af 4.

Hvor lang tid tager lektionen “Design projektet: Roles & inventory”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Intensiv DevOps-uddannelse-lektion?

Ja. Alle Intensiv DevOps-uddannelse-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Design projektet: Roles & inventory
  2. Provisionér, hærd og bootstrap værter
  3. Rullende udrulning bag load balanceren
  4. Smoke tests, rollback & notifikationer
← Tilbage til Intensiv DevOps-uddannelse