Ansible: Outputs parsen mit TEXTFSM (z.B. von Cisco)

Um Outputs von Kommandos z.B. von Cisco zu parsen in Ansible kann man TEXTFSM verwenden. Dazu muss neben Ansible das textfsm Modul mit pip installiert werden. TEXTFSM ist ein Template basierender Parser für Outputs. Installation der benötigten Pakete: Beispiel TEXTFSM Parser Datei inventory_cisco_ios.textfsm: Für viele Netzwerk Hersteller wie z.B. Cisco gibt es bereits fertige Templates, … Weiterlesen

Ansible Playbooks für Cisco Geräte

Ich habe jetzt mal angefangen kleine Snippets / Playbooks in einem Github Repo zu sammeln. lanbugs/cisco_ansible_playbooks: Ansible playbooks collection for Cisco network devices (github.com) Freue mich auf Feedback und viel Spaß damit 🙂 Beispiel „Interface Description setzen bei Interfaces wo ein Access Point angeschlossen ist“:

Ansible: Proxy / no_proxy für einzelnen Task aktivieren / deaktivieren

In meinem AWX Tower habe ich global einen Proxy hinterlegt. Ich hatte jetzt den Fall das ich für einen Task eine Ausnahme benötigt habe. Das geht wie folgt: Im Task kann unter der Variable environment die Variable http_proxy und no_proxy gesetzt werden, diese gilt dann nur für diesen Task. Hier ein komplettes Beispiel, ich hole … Weiterlesen

AWX hinter einem Proxy erfolgreich installieren

Um AWX hinter einem Proxy mit dem Playbook erfolgreich zu installieren müssen im System, in GIT, in Docker und in den Containern die Proxyeinstellungen hinterlegt werden. Proxy für APT Im Ordner /etc/apt/apt.conf.d/ eine Datei 90proxy mit folgendem Inhalt anlegen. Proxy für GIT Mit folgendem Befehl kann der Proxy global gesetzt werden für GIT. Proxy für … Weiterlesen

Ansible AWX/Tower Check_MK inventory plugin

Das Script kann als Inventory Plugin verwendet werden für AWX / Tower um Hosts von Check_MK in AWX / Tower zu importieren. Dazu muss ein View angelegt werden mit folgenden Spalten: Host, IPv4 address, Host Tags Der Automation User muss Rechte auf den View und die entsprechende Contact Group haben.

Ansible: Template Engine nutzen um Cisco Konfigurationen zu erzeugen

Ansible verwendet als Template Engine Jinja2. Als Beispiel wird für einen Switch die Radius Konfiguration erzeugt. Man kann direkt vom Template aus die Konfiguration auf ein Gerät fallen lassen oder so wie in diesem Fall einfach als File speichern. Eine ausführliche Anleitung was man alles mit der Jinja2 Template Engine machen kann ist unter http://jinja.pocoo.org/docs/2.10/ zu … Weiterlesen

Ansible: CLI Kommandos auf Cisco Devices ausführen und Ausgaben speichern

Beispiel Playbook exec_command.yaml: — – hosts: switch1 connection: local gather_facts: False vars: cli: host: „{{ inventory_hostname }}“ username: „{{ ansible_user }}“ password: „{{ ansible_ssh_pass }}“ tasks: – name: Call show inventory ios_command: commands: show inventory provider: „{{ cli }}“ register: output – name: Store output to file copy: content=“{{ output.stdout[0] }}“ dest=“out/inventory_{{ inventory_hostname }}.txt“ Mit … Weiterlesen

Ansible: Cisco Netzwerkautomatisierung mit Ansible – Erste Schritte

Ich habe kürzlich Angefangen meine ersten Gehversuche mit Ansible zu machen. Ziel ist unteranderem meine Linux Maschinen zu managen als auch Cisco Geräte. Hier meine ersten Erfahrungen mit Ansible. Was ist der Vorteil von Ansible? Opensource reichhaltiges Plugin Angebot (Ansible Galaxy) viele Artikel & Tipps im Internet, kein Nischenprodukt es ist in Python geschrieben 😉 … Weiterlesen