Überblick der
Ansible-Projektstruktur
Ansible besteht heute aus mehreren voneinander getrennten
Projekten:
| Projekt |
Beschreibung |
Verwendung |
| ansible-core |
Core-Engine, CLI-Tools, grundlegende Module |
Basis für alle Ansible-Installationen |
| ansible |
Community-Paket mit Collections |
Vollständige Community-Distribution |
| Red Hat Ansible Automation Platform |
Enterprise-Version mit Support |
Kommerzielle Umgebungen |
| ansible-collections |
Modulsammlungen nach Namespace |
Spezielle Funktionalitäten |
Release-Strategie
- ansible-core: Neue Versionen alle 3 Wochen
- Community-Release (ansible): Alle 3 Monate mit
neuen Collections
- Collections: Unabhängige Versionierung nach
Maintainer-Entscheidung
Dokumentationsbereiche
User-orientierte
Dokumentation
Ansible User Guide
Zentrale Anlaufstelle für Einsteiger und tägliche Nutzung
- Inhalt: CLI-Basics, Playbooks, Variablen,
Templates, Rollen
- Zielgruppe: Ansible-Anwender, Ops-Teams
- Link: User
Guide
Collections-Dokumentation
Modulspezifische Dokumentation nach Namespace organisiert
- Inhalt: Module, Plugins, Rollen pro Collection
- Navigation: Nach Vendor/Namespace (z.B.
cisco.ios, community.general)
- Link: Collections
Index
Vollständige CLI-Referenz für alle Ansible-Kommandos
- Kommandos:
ansible,
ansible-playbook, ansible-inventory,
ansible-vault, etc.
- Verwendung: Parameter, Optionen, Beispiele
- Link: CLI
Documentation
Developer-orientierte
Dokumentation
Contributor Guide
Strukturierte Anleitung für Code-Beiträge
- Prozesse: Pull Requests, Code Reviews, Testing
- Standards: Coding Guidelines,
Dokumentationsstandards
- Link: Contributing
Guidelines
Developer Guide
Technische Details für Module- und Plugin-Entwicklung
Qualitätssicherung und Best
Practices
Ansible Lint
Statische Code-Analyse für Playbooks und Rollen
- Funktionalität: Style-Checks,
Best-Practice-Validierung
- Integration: CI/CD-Pipelines, Pre-commit-Hooks
- Link: ansible-lint
Documentation
Molecule
Test-Framework für Ansible-Rollen und -Playbooks
- Features: Multi-Platform-Testing, verschiedene
Test-Runner
- Backends: Docker, Vagrant, Cloud-Provider
- Link: Molecule Documentation
Spezialisierte Kanäle
Ansible Galaxy
Community-Hub für Rollen und Collections
- Funktionalität: Suche, Installation,
Bewertungen
- API: Programmatischer Zugriff für Automation
- Link: Ansible
Galaxy
Collection-spezifische
Issues
Jede Collection hat eigene Issue-Tracker
- Beispiel:
ansible.posix → GitHub
Repository
- Vorgehensweise: Issues direkt beim
Collection-Maintainer erstellen
Events und Meetups
Offizielle Events
- Ansible Fest: Jährliche Hauptkonferenz
- AnsibleFest Europe: Europäische Konferenz
- Docs Days: Community-Documentation-Sprints
- Link: Events Calendar
Lokale Meetups
- Ansible Meetups: Regionale Nutzergruppen
- DevOps Meetups: Ansible als Teil breiterer
DevOps-Topics
- Link: Meetup.com -
Ansible
Code Contribution
Non-Code Contribution
| Bereich |
Aktivitäten |
Einstieg |
Impact |
| Dokumentation |
Tutorials, API-Docs, Übersetzungen |
Documentation
Repo |
Hoch |
| Testing |
Bug-Verifikation, Regression-Tests |
Testing
Guide |
Sehr hoch |
| Support |
Fragen beantworten, Mentoring |
Matrix, Stack Overflow, GitHub |
Mittel |
| Quality Assurance |
Lint-Rules, Molecule-Tests |
ansible-lint |
Hoch |
Working Groups
Spezialisierte Teams für verschiedene Bereiche
- Network Working Group: Netzwerk-Module und
-Features
- Windows Working Group: Windows-spezifische
Entwicklung
- Cloud Working Group:
Cloud-Provider-Integration
- Link: Working
Groups
Maintainer-Rollen
- Collection Maintainer: Verantwortung für
spezifische Collections
- Core Maintainer: Review-Rechte für
ansible-core
- Documentation Maintainer:
Dokumentations-Governance
- Support: Kommerzieller Support durch Red Hat
- Features: Automation Controller, Private Automation
Hub, Analytics
- Zielgruppe: Enterprise-Umgebungen mit
Compliance-Anforderungen
- Lizenzierung: Subscription-basiert
- Support: Community-basiert, keine SLAs
- Features: Vollständige Funktionalität, neueste
Entwicklungen
- Zielgruppe: Open-Source-Projekte, Entwicklung,
kleinere Organisationen
- Lizenzierung: GPL v3
Migrationspfade
- Community → AAP: Nahtlose Migration mit
zusätzlichen Enterprise-Features
- AAP → Community: Möglich, aber Verlust von Support
und Enterprise-Features
| Tool |
Zweck |
Installation |
Integration |
| ansible-navigator |
Moderne CLI mit TUI |
pip install ansible-navigator |
Ersetzt traditionelle CLI |
| ansible-lint |
Code-Qualität |
pip install ansible-lint |
Pre-commit, CI/CD |
| molecule |
Testing |
pip install molecule |
Test-Automation |
| ansible-builder |
Execution Environments |
pip install ansible-builder |
Container-basierte Ausführung |
IDE-Integration
Troubleshooting und
Support-Strategie
Eskalationspfad
- Lokale Dokumentation:
ansible-doc für
Module und Plugins
- Offizielle Docs: Spezifische
Modul-/Plugin-Dokumentation
- Community-Suche: Stack Overflow, GitHub Issues,
Matrix-Chat-Historie
- Neue Frage stellen: Matrix für Quick-Help, GitHub
Discussions für komplexere Themen
- Bug Report: GitHub Issues mit
Reproduktionsschritten
Best Practices für
Support-Anfragen
# System-Informationen
ansible --version
python --version
uname -a
# Konfiguration
ansible-config dump --only-changed
# Verbosity für Debugging
ansible-playbook -vvv playbook.yml
Issue-Template
befolgen
- Problem: Konkrete Fehlerbeschreibung
- Expected vs. Actual: Was sollte passieren vs. was
passiert
- Reproduktion: Minimales reproduzierbares
Beispiel
- Environment: OS, Ansible-Version,
Python-Version
Weiterführende
Spezialisierung
Zertifizierung
- Red Hat Certified Specialist in Ansible Automation:
Offizielle Zertifizierung
- Ansible Associate: Entry-level Zertifizierung
(geplant)
Advanced Topics
- Custom Module Development: Eigene Module für
spezielle Anforderungen
- Plugin Development: Callback, Filter, Lookup
Plugins
- Execution Environments: Container-basierte
Ansible-Ausführung
- AWX/AAP: Automation Controller für größere
Umgebungen
Weiterbildungsressourcen
- Red Hat Learning Subscription: Offizielle Kurse und
Labs
- Ansible Workshop: GitHub Workshops
- Community Books: “Ansible: Up and Running”,
“Ansible for DevOps”
- YouTube: Jeff Geerling’s Ansible 101 Series