Modius - Techblog

  • Ansible
  • Docker
  • DevOps
  • Gastautor werden
  • Newsletter abonnieren
  • Über Mich
  • Kontakt

Ansible – get_url Modul zum Laden von Webinhalten

Veröffentlicht am 20. Juli 2018 von Christian Piazzi Hinterlasse ein Kommentar , Aktualisiert am 20. Juli 2018
Geschätzte Lesezeit: 1 Minute

Bei fast jeder größeren Automatisierung ist es früher oder später notwendig Informationen von einem Webserver abzuholen. Egal ob man Installationspakete herunterladen will oder eine Verbindung zu einem Repository aufbaut. Dafür gibt es in Ansible das Modul get_url. Dieses wollen wir uns heute etwas genauer anschaue.

Im ersten Teile werde ich kurz zeigen wie man get_url in Ansible verwendet. Im zweiten Teil schauen wir uns an, welche alternative wir haben um auf https Seiten zuzugreifen, da dies im Moment mit get_url Probleme macht.

Datei herunterladen mit get_url

Als Beispiel für die Verwendung von get_url will ich einen Datei herunter laden. In meine Fall versuchen wir einfach mal die Startseite von Google herunter zu laden

Dafür braucht man als erste eine entsprechende Ansible Rolle. Ich lege dafür eine Rolle mit dem Namen Download an und füge den Ordner tasks und die Datei main.yml hinzu. Das ganze sieht dann so aus:

1
2
3
4
5
tree
.
└── download
    └── tasks
        └── main.yml

Nun öffne ich die Datei main.yml mit einem Editor meiner Wahl. Anschließend schreibe ich den folgenden Inhalt für Ansible get_url in die Datei:

1
2
3
4
- name: get_url test
  get_url:
    url: http://www.google.de
    dest: /tmp/

Um zu testen was nun passiert, weise ich die Ansible Rolle meinem Testhost zu. Wichtig hier bei ist, dass der Zielhost via ssh mit dem User root erreichbar ist. Hier einmal meite site.yml udn meine hosts Datei.

site.yml

YAML
1
2
3
4
5
- name: download
  hosts: download
  remote_user: root
  roles:
    - download

hosts

1
2
[download]
192.168.10.2

Das ausführen des Ansible Playbooks sieht dann wie folgt aus:

1
2
3
4
5
6
7
8
9
10
11
12
ansible-playbook  site.yml -i hosts
 
PLAY [download] ***********************************************************************************
 
TASK [Gathering Facts] ****************************************************************************
ok: [192.168.10.2]
 
TASK [download : get_url test] ********************************************************************
changed: [192.168.10.2]
 
PLAY RECAP ****************************************************************************************
192.168.10.2               : ok=2    changed=1    unreachable=0    failed=0

Wenn wir uns nun auf das Zielsystem verbinden, sehen wir im /tmp Verzeichnis eine Datei index.html. Dabei handelt es sich um die Startseite von Google.

1
2
root@raspberrypi:/tmp# ls
ansible_dmqtiX index.html

Das ganze kann genauso mit SSL Verschlüsselten URLs durchgeführt werden.

Kategorie: Ansible Tags: Ansible, Automatisierung, DevOps, download, get_url, Webinhalte

Über Christian Piazzi

Ich blogge hier über alles, was mir so in meinem ITler Altag über den Weg läuft =)
Man findet mich privat bei Google+ und Twitter

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Kategorien

  • Linux
  • Internet, Bloggen & Co
  • Programmierung
  • Sicherheit
  • Netzwerk & Co
  • Mikrokontroller
  • Windows

Neueste Kommentare

  • Prometheus Installation unter Ubuntu - Modius - Techblog bei Prometheus Installation unter CentOS
  • Rainer bei Docker Container – anzeigen, starten, stoppen und löschen
  • Rainer Wohlfarth bei Docker Container – anzeigen, starten, stoppen und löschen
  • Rainer Wohlfarth bei Docker Container – anzeigen, starten, stoppen und löschen
  • Rainer Wohlfarth bei Docker Container – anzeigen, starten, stoppen und löschen

Werbung

Archive

Kontakt, Datenschutz und Impressum

  • Kontakt
  • Datenschutz
  • Impressum

Schlagwörter

Anleitung Ansible Apache Apple App Store Automatisierung Blogparade C++ Centos centos 7 CentOS7 Container Datenbank DevOps Docker Dr. Racket Dr. Scheme funktional Gastartikel Google HowTo httpd Icinga2 Icinga 2 Installation itsm Linux Minecraft Monitoring mooc MySQL owncloud PHP Plugin Programmierung python Raspberry Pi Schritt für Schritt Server Sicherheit Tutorial Ubuntu Update Windows Wordpress

Copyright © 2025 · Outreach Pro on Genesis Framework · WordPress · Anmelden