IoT Server Installation und Setup

Nachdem mein Server zweimal durch einen Hardwaredefekt der Systemfestplatte eine Neuinstallation notwendig gemacht hat und das Backup schon einige Wochen alt war und deshalb umfangreich nachkonfiguriert werden musste, habe ich mich entschlossen mein komplettes Setup auf Ansible umzustellen.

Kurz zusammengefasst ist es Automatisiertes SmartHome Server Setup mit dem man quasi per “Knopfdruck” ein zu 100% fertig installiertes und konfiguriertes System erhält. In Verbindung mit Vagrant ergibt sich sogar die Möglichkeit das ganze in einer Virtual Machine zu testen.

Die benötigten Ansible Scripte und das Vagrant Script können unter folgender Url bezogen und ausprobiert werden.

https://github.com/HolgerHees/smartserver

Einfach runter laden, Vagrant installieren und mit

vagrant up

starten.

Arbeitsweise

Vagrant erstellt eine neue virtuelle Maschine oder startet eine bereits existierende. Am Anschluss wird das Ansible Skript ausgeführt welches das System installiert und konfiguriert. Später kann das Ansible Skript auch manuell ausgeführt werden um z.B. Updates oder Konfigurationsänderungen einzuspielen. Wenn im Falle eines Fehlers etwas schief geht (die meisten Fehler sind Netzwerkprobleme bei denen ein externer Server nicht erreichbar ist), kann Ansible jederzeit an der Stelle fortgesetzt werden. Führe das Skript einfach erneut aus. In meinem Fall verwende ich Vagrant um alles zu testen und auf meinem Produktivsystem starte ich Ansible direkt.

Eine Sache, die du beachten solltest. Du solltest das System niemals direkt konfigurieren. Alle Änderungen sollten innerhalb der Ansible Konfigurationen erfolgen und im Anschluss auf dem Server deployed werden. Es gibt 2 Verzeichnisse welche man sich anschauen sollte. Der erste ist der Configordner. Es enthält Variablen für Benutzernamen, Passwort, Dateipfade, Ports usw. Der zweite ist der Rollenordner. Er enthält Ansible Rollen, die die Logik zum Einrichten und Installieren einzelner Teile enthalten.

Einen Überblick über die installierten Dienste erhält man über das Ansible Role Verzeichniss auf github

Zusätzlich gibt es eine unvollständige (work in progress) Wiki Dokumentation

https://intranet-der-dinge.de/
https://intranet-of-things.com/