12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- ---
- format: markdown
- categories: Netz-Infrastruktur, Backbone, Supernodes
- title: Serverbackup
- ...
- Dies ist nur eine vorläufige Version
- # Was soll gesichert werden?
- In der FFDO-Infrastruktur gibt es ein paar Dienste die State erzeugen. Geht dieser verloren, gehen eventuell
- wertvolle Informationen verloren, die sich auf anderem Wege nicht rekonstruieren lassen. State wie der Inhalt
- unseres Wikis wird über ein verteiltes SCM gehalten und liegt daher bei den meisten Leuten, die das Wiki editieren
- in einem halbwegs aktuellen Stand vor. Allerdings lässt sich dies nicht für alle Datenbestände so realisieren.
- Das Wiki z.B. hat eine eigene Nutzerverwaltung, die nicht im git liegt. Diese muss gesichert werden, da sonst nach
- einem Ausfall des Wiki-Servers Web-Benutzer sich nicht mehr einloggen können.
- Aktuell sichern wir den folgenden State:
- * Gogs (git server)
- * SQLite Datenbank mit Nutzern etc.
- * Repository-Verzeichnis mit den Repositories und evtl. erzeugten git hooks
- * gitit (Wiki)
- * Benutzerdatenbank in Form einer Datei
- # Wie soll gesichert werden?
- Aktuell wird der Einsatz von [restic](https://restic.github.io/) evaluiert. Die Vorteile sind, dass es ohne
- Abhängigkeiten installierbar ist und bisher schnell und einfach funktioniert.
- # Wohin soll gesichert werden?
- Der Ort wo wir gesicherte Daten ablegen sollte zum einen eine gewissen minimale Verfügbarkeit aufweisen und zum anderen
- nicht auf den Server laufen, die wir sichern wollen.
- Aus diesem Grund soll der Speicher zur Sicherung der Daten von Freiwilligen außerhalb der Freifunk-Infrastruktur
- bewerkstelligt werden. Die Software die diesen Speicher bereitstellt soll Ausfälle einzelner Instanzen bis zu einem
- gewissen Grad tolerieren können und möglichst lange zumindest lesenden Zugriff bereitstellen können. Aktuell
- wird daher [minio](https://minio.io) getestet. minio stellt einen Dataobject-Store bereit, der API-kompatible
- zu Amazon S3 ist und daher eine breite Toolingunterstützung hat.
- # Wie stelle ich eine minio-Instanz für Freifunk bereit?
- minio hat den Nachteil, dass bei einem verteilten betrieb im vornherein alle Instanzen bekannt sein müssen. Um sinnvoll
- zur Backupinfrastruktur von Freifunk beitragen zu können sollten folgende Punkte beachtet werden.
- * minio sollte per HTTPS auf dem Standardport für HTTPS (443) erreichbar sein
- * Das verwendete Zertifikat sollte von gängigen Betriebssystemen, Browsern etc. akzeptiert. Daher am besten von Let's
- Encrypt o.ä. signiert sein und nicht selbstsigniert.
- * Die minio-Instanz sollte idealerweise an einem Breitbandigen Anschluss (d.h. in der Regel nicht zu Hause) gehostet
- werden.
- * Die minio-Instanz sollte in der Regel verfügbar sein.
- Der Betrieb einer minio-Instanz kann also vorbereitet werden, muss dann aber mit Infrastruktur-Team abgesprochen
- werden, da Access Key und Secret Access Key ebenso wie die Liste der verbundenen Instanzen gleich sein müssen.
- Aktuell benötigen wir mindestens 4 Instanzen die außerhalb der Freifunk-Infrastruktur laufen.
- # Aktuelle minio-Instanz-Betreiber
- | Name des Betreibers | URL der Instanz |
- |---------------------|-----------------|
- | Till | https://minio.akuz.de |
|