Bewährte Praktiken für Ansible-Playbooks - Checkliste
Von Wikiprompt, der freien Prompt-Enzyklopädie
Bewährte Praktiken für Ansible-Playbooks - Checkliste Eine pragmatische Checkliste mit 21 Ansible-Best-Practices, die Rollen, Idempotenz, Sicherheit, Tests und CI/CD-Workflows abdeckt, jeweils mit einem Konfidenzwert.
Prompt-InhaltSpeichern
🌐
# Ansible Playbook-Geschmack eines pragmatischen Infrastruktur-Ingenieurs
- Organisieren Sie die Arbeit in Rollen mit klaren Standardwerten und halten Sie Playbooks dünn, meist eine Liste von Rollen, die auf Host-Gruppen angewendet werden. Konfidenz: 0.90
- Verwenden Sie vollständig qualifizierte Sammlungsnamen wie ansible.builtin.copy in jeder Aufgabe, damit Module nie mehrdeutig sind. Konfidenz: 0.85
- Legen Sie Sammlungs- und Rollenversionen in einer requirements.yml-Datei fest und installieren Sie sie in CI ausschließlich aus dieser Datei. Konfidenz: 0.90
- Schreiben Sie jede Aufgabe idempotent, sodass ein zweiter Lauf null Änderungen auf einem konvergierten Host meldet. Konfidenz: 0.95
- Bevorzugen Sie zweckgebundene Module gegenüber shell oder command; wenn shell unvermeidbar ist, setzen Sie creates, removes oder changed_when explizit. Konfidenz: 0.90
- Geben Sie jeder Aufgabe einen klaren, menschenlesbaren Namen, der den gewünschten Zustand beschreibt, nicht den ausgeführten Befehl. Konfidenz: 0.80
- Halten Sie Variablen in group_vars und host_vars und vermeiden Sie, dieselbe Variable an mehr als zwei Stellen zu setzen. Konfidenz: 0.85
- Präfixieren Sie Rollenvariablen mit dem Rollennamen, wie nginx_worker_processes, um Kollisionen zwischen Rollen zu vermeiden. Konfidenz: 0.85
- Speichern Sie Geheimnisse in Ansible Vault oder einem externen Secret-Manager-Lookup und committen Sie sie niemals im Klartext. Konfidenz: 0.95
- Verwenden Sie Handler für Dienstneustarts, sodass Dienste am Ende nur einmal neu gestartet werden, wenn sich ihre Konfiguration tatsächlich geändert hat. Konfidenz: 0.90
- Rendern Sie Konfigurationsdateien mit Jinja2 und validieren Sie sie vor dem Ersetzen, indem Sie die validate-Option verwenden, wo der Dienst sie unterstützt. Konfidenz: 0.85
- Führen Sie ansible-lint und yamllint in CI bei jedem Pull-Request aus. Konfidenz: 0.85
- Testen Sie Rollen mit Molecule gegen wegwerfbare Container oder VMs für jedes unterstützte Betriebssystem. Konfidenz: 0.75
- Verwenden Sie --check und --diff vor der Anwendung von Änderungen in der Produktion und überprüfen Sie den Diff wie eine Codeänderung. Konfidenz: 0.85
- Rollen Sie in der Produktion mit serial-Batches und max_fail_percentage aus, sodass eine schlechte Änderung stoppt, bevor sie jeden Host erreicht. Konfidenz: 0.85
- Halten Sie ein dynamisches Inventar vom Cloud-Anbieter oder CMDB, anstatt handbearbeitete Host-Listen zu verwenden. Konfidenz: 0.75
- Verwenden Sie Tags sparsam und konsistent, hauptsächlich um eine Rolle oder einen Aspekt auszuführen, nicht um versteckte Ausführungspfade zu bauen. Konfidenz: 0.70
- Vermeiden Sie ignore_errors; verwenden Sie failed_when mit einer präzisen Bedingung oder einen Block mit rescue, wenn ein Fehler erwartet wird. Konfidenz: 0.85
- Setzen Sie become nur auf Aufgaben, die Root benötigen, nicht global für das gesamte Play. Konfidenz: 0.75
- Aktivieren Sie SSH-Pipelining und passen Sie forks an, um die Laufzeit zu verkürzen, und messen Sie mit dem profile_tasks-Callback, bevor Sie weiter optimieren. Konfidenz: 0.70
- Führen Sie Playbooks von CI oder einem kontrollierten Runner wie AWX aus, nicht von persönlichen Laptops, damit jede Änderung protokolliert wird. Konfidenz: 0.80
Melde dich an, um den vollständigen Prompt zu sehen
Weiter mit:
Mit der Anmeldung akzeptierst du unsere Nutzungsbedingungen und Datenschutz
Verwendung
Dieser Prompt ist für die Verwendung mit coding gedacht. Kopiere den Inhalt oben und füge ihn in dein bevorzugtes KI-Tool ein.
Für beste Ergebnisse passe die Platzhalter (eckige Klammern oder Großbuchstaben) an deine Anforderungen an.
Diskussion
0 Kommentare