Tag Archives: ansible

Raspberry Pi mit einer Wetterstation ws1080/wh1080 verbinden

Es gibt viele Blogs mit Anleitungen wie man eine Wetterstation vom Typ ws1080/wh1080/ws3000 etc. mit einem Raspberry pi verbindet. Ich habe meinen Anleitung nun als Ansible Playbook unter https://github.com/lightszentip/ansible-playbook-weather1080 veröffentlicht. Somit kann schnell und einfach zwischen dem Raspberry pi 2 und Raspberry pi 3 gewechselt werden und auch eine Neuinstallation ist nicht mehr Aufwendig.

Der Vorteil von Ansible ist das man diese Anleitung schnell und einfach an die verschiedenen Wetterstationen anpassen kann. Zudem ist ein Script enthalten um die Daten von der WH1080/Ws1080 in eine mysql Datenbank zu speichern. Damit hat man die Daten in einem einfachen Format und kann diese an anderen Stellen leicht und einfach wieder verwenden. Es muss dafür nicht eine Software mit manueller Eingabe verwendet werden um die Daten aus der Wetterstation auszulesen.

 

Use password with ansible – security

Mit ansible-vault createsecrethostgroupOne  kann man sein Passwort verschlüsseln:
createsecrethostgroupOne = Name der Variable für das Passwort um es später im Script oder der config zu nutzen.

Wenn man create secrethostgroupOne  oder edit secrethostgroupOne  aufruft muss man ein vault Passwort festlegen.

Danach wird ein Editor geöffnet wo man folgendes eingibt:

Dann im Script:

angeben. Damit beim ausführen des Playbooks auch das Passwort beachtet wird, muss man eine Datei vault.txt anlegen (gleiche Ebene wie das playbook) und dort das vault Passwort eintragen.

Danach kann man dann mit dem Zusatz:

das eingeben des sudo Passwortes einfach überspringen .

SSH Key an alle hosts in ansible/hosts kopieren

Wenn man Ansible verwendet, benötigt man den lokalen ssh public key auf allen in der hosts Datei eingetragen Knoten – außer man verwendet das ansible_ssh_pass.
Damit man aber nicht für jeden Knoten einzeln ssh-copy-id aufrufen muss, hilft das folgenden Pyhton Script:



Die komplette Datei findet ihr unter https://gist.github.com/lightszentip/881593f03a7e3d1b107e3be889547941

Das Script baut auf der Datei von Jiri Tyr hostfile.py auf, welches eine hosts Datei parsed.

Der Aufruf sieht wie folgt aus:

Falls man es auf eine Gruppe einschränken möchte, kann man auch noch –group Groupname mitgeben (dieser ist aber optional). Als Beispiel:

Wie ihr den ssh key generiert, seht ihr unter adding-your-ssh-key-to-the-ssh-agent und den public key vom private key gibt es mit

Das ganze könnt ihr dann mit

testen.