Snabbreferens

Ansible Roles Struktur & Design Fuskblad

Snabbreferens för katalogstruktur, uppgifter, hanterare, variabler, standardvärden, mallar och meta-beroenden för Ansible-roller.

· Publicerad

Ansible Roles ger ett standardiserat sätt att paketera uppgifter, hanterare, variabler och mallar för ren återanvändning.

🔗 Related: Ansible Grundläggande Fuskblad · Ansible Snabbstartsguide · Ansible Playbook Exempel

Standard kataloglayout för roller

Generera en rollstruktur med ansible-galaxy init role_name:

roles/
  common/
    tasks/
      main.yml          # Huvudsaklig startpunkt för uppgifter som körs av rollen
    handlers/
      main.yml          # Hanterare som triggas via notify
    templates/          # Jinja2-mallar (.j2) som refereras av template-modulen
    files/              # Statiska filer och skript som överförs via copy-modulen
    vars/
      main.yml          # Variabler med hög prioritet specifika för denna roll
    defaults/
      main.yml          # Standardvariabler med låg prioritet (överskrivningsbara)
    meta/
      main.yml          # Rollberoenden och metadata för upphovsman

Använda roller i Playbooks

---
- name: Apply common and webserver roles
  hosts: webservers
  become: true
  roles:
    - role: common
    - role: nginx
      vars:
        nginx_port: 8080

Variabelprioritet i roller

Variabler som definieras i defaults/main.yml har lägst prioritet i Ansible och fungerar som säkra, överskrivningsbara standardvärden.

Variabler i vars/main.yml har hög prioritet och reserveras för rollens interna konstanter.


Referenser

Relaterade ämnen