group_vars & host_vars-mapper
Organisér variabler efter vært og gruppe.
group_vars & host_vars-mapper er en gratis Intensiv DevOps-uddannelse-lektion på CoddyKit. Dette er lektion 2 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.
Stop med at indlejre variabler
Det bliver hurtigt rodet at gemme værdier direkte i playbooks. Ansible indlæser i stedet automatisk variabler fra mapperne group_vars og host_vars. 🗂️
Sådan indlæses group_vars
En fil i group_vars, der er opkaldt efter en gruppe, anvendes på alle værter i gruppen uden behov for manuel inkludering.
# group_vars/webservers.yml
http_port: 80
worker_processes: 4Gruppen all
En særlig fil, group_vars/all.yml, angiver standardværdier for alle værter i dit inventory og er perfekt til organisationsdækkende indstillinger.
# group_vars/all.yml
timezone: UTC
ntp_server: pool.ntp.orgSådan indlæses host_vars
Filer i host_vars opkaldes efter en enkelt vært og gælder kun for den maskine, hvilket er ideelt til serverspecifikke tilsidesættelser.
# host_vars/web01.example.com.yml
server_id: 1
backup_disk: /dev/sdbNavnet skal matche
Filnavnet skal matche gruppens eller værtens navn præcis, som det står i inventory, ellers springer Ansible det stille over under indlæsningen.
Filer eller mapper
Hver post kan være en enkelt .yml-fil eller en mappe med mange filer. Ansible sammenfletter alle filer i en mappe.
group_vars/
webservers/
network.yml
tuning.ymlVærter har forrang frem for grupper
Når den samme variabel findes begge steder, har host_vars forrang frem for group_vars. Et mere specifikt anvendelsesområde tilsidesætter altid det bredere.
Prioritet for undergrupper
Blandt grupper tilsidesætter en undergruppe sin overordnede gruppe, så indlejrede grupper giver dig lagdelte, forudsigelige standardværdier.
Relativt til inventory
Ansible leder først efter disse mapper ved siden af din inventory-fil og også ved siden af den playbook, der køres.
Referér til dem normalt
I opgaver bruger du disse variabler præcis som alle andre med syntaksen {{ }}. Kilden er usynlig for opgaven.
- name: Open the web port
debug:
msg: "Port is {{ http_port }}"Renere playbooks
Når dataene er flyttet ud, beskriver dine plays hvad der skal gøres, mens group_vars og host_vars indeholder tallene for hvert miljø. 🎯
Hurtigt tjek
En variabel er angivet både i group_vars og host_vars. Hvilken værdi vinder?
Opsummering
Du har lært, hvordan group_vars og host_vars indlæses automatisk ud fra navnet, at værter har forrang frem for grupper, og at undergrupper har forrang frem for overordnede grupper. Flyt dataene ud, og hold dine plays rene. ✅
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 “group_vars & host_vars-mapper” gratis?
Ja — alle 3 lektioner i læringssporet Intensiv DevOps-uddannelse, inklusive “group_vars & host_vars-mapper”, 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 “group_vars & host_vars-mapper”?
Organisér variabler efter vært og gruppe. 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 2 af 4.
Hvor lang tid tager lektionen “group_vars & host_vars-mapper”?
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
- Det anbefalede mappelayout
- group_vars & host_vars-mapper
- Opdeling af playbooks med import & include
- Navngivning, kommentarer & stil, der skalerer