Ansible Grundlagen
Zur Navigation springen
Zur Suche springen
Grundsätzliches
- Open-Source Automatisierungs-Werkzeug zur Orchestrierung und allgemeinen Konfiguration und Administration von Computern.
- Es kombiniert Softwareverteilung, Ad-hoc-Kommando-Ausführung und Konfigurationsmanagement.
- Die Verwaltung von Nodes erfolgt über SSH und erfordert keinerlei zusätzliche Software.
- Module nutzen zur Ausgabe JSON und können in jeder beliebigen Programmiersprache geschrieben sein.
- Das System nutzt YAML zur Formulierung wiederverwendbarer Beschreibungen von Systemen.
Geschichte
- Ansible startete im Februar 2012 und die Plattform wurde von Michael DeHaan erstellt
- Anwender von Ansible sind beispielsweise das Fedora Projekt, Hewlett-Packard Deutschland, Hetzner und die Universität Thessaloniki.
- Ansible ist enthalten in der Fedora-Linux-Distribution des Unternehmens Red Hat Inc.
- Prinzipiell ist Ansible mit allen Unix-artigen Betriebssystemen nutzbar.
- Ab Version 1.7 unterstützen diverse Module auch Windows über Powershell-3.0-Befehle.
- Im Januar 2016 wurde die Version 2.0 veröffentlicht.[5]
AnsibleWorks
Am 4. März 2013 wurde die Firma AnsibleWorks gegründet.
- Sie ist maßgeblich an der Entwicklung von Ansible beteiligt
- Sie bietet verschiedene Produkte rund um Ansible an, darunter Support und eine Browser-basierte Benutzerschnittstelle.
- Am 16. Oktober 2015 wurde bekanntgegeben, dass Ansible Inc.durch Red Hat Inc. übernommen und in das eigene Portfolio integriert wird.
Architektur
- Wie die meisten anderen Konfigurationsmanagement-Systeme unterscheidet Ansible zwischen Konfigurationsüberwachung und Knoten
- Auf den Knoten wird die Konfigurationsänderung durchgeführt.
- Diese Knoten werden von Ansible via SSH verwaltet,
- Wobei die Lage der Knoten im Inventar der Konfigurationsüberwachung verwaltet wird.
Designziele
- minimalistisch
- sicher
- zuverlässig
- leicht erlernbar
Inventar
- Das Inventar ist eine Beschreibung der Knoten, auf die von Ansible zugegriffen werden kann.
- Standardmäßig wird das Inventar durch eine Initialisierungsdatei beschrieben.
- Die Konfigurationsdatei listet entweder die IP-Adresse oder den Hostnamen jedes Knotens auf.
- Knoten können auch gruppiert werden.
Playbooks
- Playbooks beschreiben Konfiguration, Deployment und Orchestrierung in Ansible.
- Das Playbook-Format ist YAML, wobei jedes Playbook eine Gruppe von Hosts zu einer Reihe von Rollen zuordnet.
AWX
- AWX ist eine REST-API, ein Web-Service und eine Web-basierte Konsole.
- Damit kann die mit Ansible verwaltete IT-Infrastruktur zentralisiert werden