Ansible
Installation unter Linux
mkvirtualenv --system-site-packages ansible
workon ansible
pip install ansible
Konfiguration (Simpel Test)
Ansible verwendet keine Programmteile, die dem Betriebssystem fremd sind.
Für Linux bedeutet das, dass Ansible mit SSH zugreift (authorized_keys).
Bei Windows macht Ansible das mit WINRM.
Die von Ansible verwalteten Systeme müssen entsprechend vorbereitet werden,
damit der Zugriff von Ansible auf diese Geräte stattfinden kann.
Ansible selber
Als Vorgabe verwendet Ansible den Ordner /etc/ansible
Um die Kommandozeile kurz zu halten, habe ich hier eine YAML-Datei namens "hosts" angelegt.
linux_servers:
hosts:
tv-desktop:
ansible_host: 192.168.1.2
joebook:
ansible_host: 192.168.1.180
windows_servers:
hosts:
test01:
ansible_host: 192.168.122.133
vars:
ansible_user: Administrator
ansible_password: *********
ansible_port: 5985
ansible_connection: winrm
ansible_winrm_transport: basic
ansible_winrm_scheme: http
ansible_winrm_server_cert_validation: ignore
Vorbereitung Linux
authorized_keys file des root Benutzers
Vorbereitung Windows
hier führt wohl kein Weg an der ausführlichen Dokumentation vorbei...
https://docs.ansible.com/ansible/latest/user_guide/windows_setup.html
Ausführung
Ad-Hoc
Ad-Hoc können Playbook-Anweisungen ausgeführt werden.
Natürlich macht es mehr Sinn, diese Anweisungen in Playbooks zu schreiben.
Windows Software Rollout
ansible test01 -m chocolatey.chocolatey.win_chocolatey -a "name=adoptopenjdk11jre"
ansible test01 -m chocolatey.chocolatey.win_chocolatey -a "name=thunderbird"
ansible test01 -m chocolatey.chocolatey.win_chocolatey -a "name=notepadplusplus state=absent"