Server Dokumentation: Unterschied zwischen den Versionen
Aeroid (Diskussion | Beiträge) (→Karten-Frontend Hopglass) |
Aeroid (Diskussion | Beiträge) |
||
(7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 8: | Zeile 8: | ||
=== SSL Certificate === | === SSL Certificate === | ||
Wir verwenden für nordheide.freifunk.net SSL-Certificates von [https://letsencrypt.org/ Let's Encrypt]. D.h. über die root crontab wird regelmässig geprüft ob das Certificate demnächst ausläuft und die Aktualisierung angefordert. Leider gibt es verschiedene Gründe warum das evtl. schief gehen kann. | Wir verwenden für nordheide.freifunk.net SSL-Certificates von [https://letsencrypt.org/ Let's Encrypt]. D.h. über die root crontab wird regelmässig geprüft ob das Certificate demnächst ausläuft und die Aktualisierung angefordert. Leider gibt es verschiedene Gründe warum das evtl. schief gehen kann. | ||
+ | |||
Das Log liegt unter | Das Log liegt unter | ||
− | : /var/log/ | + | : '''/var/log/le-renew.log''' |
Manuell kann man die evtl. anstehende Aktualisierung so anstoßen: | Manuell kann man die evtl. anstehende Aktualisierung so anstoßen: | ||
− | : sudo /usr/local/sbin/le-renew nordheide.freifunk.net | + | : <code>sudo /usr/local/sbin/le-renew nordheide.freifunk.net</code> |
== map.freifunk-nordheide.net == | == map.freifunk-nordheide.net == | ||
Zeile 18: | Zeile 19: | ||
Die Daten der Freifunkkonten werden mit einem [https://github.com/hopglass/hopglass-server Hopglass Server] aggregiert dem Karten-Frontend (s.u.) zur Darstellung übergeben. | Die Daten der Freifunkkonten werden mit einem [https://github.com/hopglass/hopglass-server Hopglass Server] aggregiert dem Karten-Frontend (s.u.) zur Darstellung übergeben. | ||
− | Der Server | + | Der Server ist unter '''/opt/hopglass/server/''' installiert und liefert via Apache Reverse Proxy und /hopglass/ aus. Das ermöglicht Komprimierung der JSON-Responses und die Nutzung eines SSL-Zertifikats. |
− | Seine Einstellungen und | + | Seine Einstellungen und Daten liegen unter '''/etc/hopglass-server/ffnh/'''. |
Die Daten werden alle 5 Minuten zwischengespeichert und jede Stunde auf die letzten 7 Tage reduziert. | Die Daten werden alle 5 Minuten zwischengespeichert und jede Stunde auf die letzten 7 Tage reduziert. | ||
− | Betrieben wird er über <code>systemctl restart hopglass-server@ffnh.service</code>. | + | '''Achtung:''' das letzte Release ist sehr alt und läuft nicht richtig mit der aktuellen Knotenliste. Daher mit <code>git clone https://github.com/hopglass/hopglass-server server</code> (ohne Release) klonen. |
+ | |||
+ | Betrieben wird er über <code>[https://manpages.debian.org/jessie/systemd/systemctl.1.en.html systemctl] restart hopglass-server@ffnh.service</code>. | ||
Bereitgestellte URLs: | Bereitgestellte URLs: | ||
− | *[http://map.freifunk-nordheide.de | + | *[http://map.freifunk-nordheide.de/hopglass/nodes.json /nodes.json] HopGlass nodes.json v2 |
− | *[http://map.freifunk-nordheide.de | + | *[http://map.freifunk-nordheide.de/hopglass/graph.json /graph.json] HopGlass graph.json v1 |
− | *[http://map.freifunk-nordheide.de | + | *[http://map.freifunk-nordheide.de/hopglass/mv/nodes.json /mv/nodes.json] Meshviewer nodes.json v2 |
− | *[http://map.freifunk-nordheide.de | + | *[http://map.freifunk-nordheide.de/hopglass/mv/graph.json /mv/graph.json] Meshviewer graph.json v1 |
− | *[http://map.freifunk-nordheide.de | + | *[http://map.freifunk-nordheide.de/hopglass/mv1/nodes.json /mv1/nodes.json] Meshviewer nodes.json v1 |
− | *[http://map.freifunk-nordheide.de | + | *[http://map.freifunk-nordheide.de/hopglass/mv1/graph.json /mv1/graph.json] Meshviewer graph.json v1 |
− | *[http://map.freifunk-nordheide.de | + | *[http://map.freifunk-nordheide.de/hopglass/raw.json /raw.json] Raw data collected, same as the raw.json save file |
− | *[http://map.freifunk-nordheide.de | + | *[http://map.freifunk-nordheide.de/hopglass/nodelist.json /nodelist.json] format (github.com/ffansbach/nodelist) |
− | *[http://map.freifunk-nordheide.de | + | *[http://map.freifunk-nordheide.de/hopglass/hosts /hosts] hosts file to be placed in /etc/hosts |
− | *[http://map.freifunk-nordheide.de | + | *[http://map.freifunk-nordheide.de/hopglass/metrics /metrics] Prometheus metrics |
− | *[http://map.freifunk-nordheide.de | + | *[http://map.freifunk-nordheide.de/hopglass/wifi-aliases.txt /wifi-aliases.txt] Aliases file for Wifi Analyzer app |
− | *[http://map.freifunk-nordheide.de | + | *[http://map.freifunk-nordheide.de/hopglass/WifiAnalyzer_Alias.txt /WifiAnalyzer_Alias.txt] Aliases file for Wifi Analyzer app |
− | <!--*[http://map.freifunk-nordheide.de | + | <!--*[http://map.freifunk-nordheide.de/hopglass/ffapi.json /ffapi.json] Freifunk API file--> |
− | *[http://map.freifunk-nordheide.de | + | *[http://map.freifunk-nordheide.de/hopglass/nodes.zone /nodes.zone] Named DNS zone file |
==== Karten-Frontend Hopglass ==== | ==== Karten-Frontend Hopglass ==== | ||
Zeile 51: | Zeile 54: | ||
=== Nodelist === | === Nodelist === | ||
− | Die [https://github.com/freifunkMUC/nodelist Kontenliste] unter [http://map.freifunk-nordheide.de/nodelist/ map.freifunk-nordheide.de/nodelist] zeigt alle verfügbaren Knotendaten im Netz. Sie visualisiert die Daten ([http://map.freifunk-nordheide.de | + | Die [https://github.com/freifunkMUC/nodelist Kontenliste] unter [http://map.freifunk-nordheide.de/nodelist/ map.freifunk-nordheide.de/nodelist] zeigt alle verfügbaren Knotendaten im Netz. Sie visualisiert die Daten ([http://map.freifunk-nordheide.de/hopglass/nodes.json /nodes.json] und [http://map.freifunk-nordheide.de/hopglass/graph.json /graph.json]) aus obigem Hopglass-Server. |
+ | |||
+ | Die Karten-Anwendung ist unter '''/home/freifunker/nodelist''' installiert und wird über den Apache ausgeliefert. | ||
+ | |||
+ | == statistik.freifunk-nordheide.de == | ||
+ | === Freifunk-Collector === | ||
+ | Ein Ruby-Script bereitet die Knoten- und Graph-Daten aus dem Hopglass-Backend kontinuierlich auf und befüllt damit die InfluxDB. | ||
+ | * Seine Einstellungen liegen unter '''/etc/freifunk-collector/ffnh/'''. | ||
+ | * Das Script liegt unter '''/opt/ffnh-stats/scripts/'''. | ||
+ | * Es läuft via <code>[https://manpages.debian.org/jessie/systemd/systemctl.1.en.html systemctl] status freifunk-collector@ffnh.service</code>. | ||
+ | |||
+ | Dabei nutzt es die beiden JSONs: | ||
+ | * graph_json = http://map.freifunk-nordheide.de/hopglass/graph.json | ||
+ | * nodes_json = http://map.freifunk-nordheide.de/hopglass/mv1/nodes.json | ||
+ | |||
+ | === InfluxDB === | ||
+ | Die [https://docs.influxdata.com/influxdb/ InfluxDB] speichert zeitlich anfallende Statistik-Daten. | ||
+ | Die genutzte Datenbank ist '''freifunk'''. | ||
+ | |||
+ | === Grafana === | ||
+ | Das Analyse-Werkzeug [https://grafana.com/ Grafana] erlabut die Visualisierung und Analyse der Daten aus der InfluxDB. Eine Reihe von Dashboards wird vom Karten-Frontend Hopglass eingebunden (siehe [http://map.freifunk-nordheide.de/config.json config.json]) und sind so leicht aus der Karte erreichbar. Dies sind: | ||
+ | * das [http://map.freifunk-nordheide.de/grafana/dashboard/db/status?orgId=1 Status Dashboard], welches den Gesamtüberblick über Anzahl/Qualität von Clients und Verbindungen abbildet | ||
+ | * die Statistik zu jedem [http://map.freifunk-nordheide.de/grafana/dashboard/db/knotenid?orgId=1 Knoten] | ||
+ | * die Statistik zu jeder [http://map.freifunk-nordheide.de/grafana/dashboard/db/verbindung?orgId=1 Verbindung] | ||
+ | |||
+ | Einbindungen der Charts über PNG-Bilder anstatt der iFrames legen die Bilder lokal unter '''/srv/ff/grafana/lib/png/''' ab. | ||
− | + | Das gesamte Grafana-Frontend wird, wie Hopglass via Apache Reverse Proxy unter /grafana/ auf map.freifunk-nordheide.de ausgeliefert. |
Aktuelle Version vom 1. Januar 2018, 18:49 Uhr
Inhaltsverzeichnis
Dokumentation
Auch Server brauch hin und wieder mal einen Klapps oder etwas Hilfe. Hier einfach mal ein paar Hilfestellungen
Github vom Freifunk Nordheide
Freifunk Nordheide Github Repo
Wiki nordheide.freifunk.net
SSL Certificate
Wir verwenden für nordheide.freifunk.net SSL-Certificates von Let's Encrypt. D.h. über die root crontab wird regelmässig geprüft ob das Certificate demnächst ausläuft und die Aktualisierung angefordert. Leider gibt es verschiedene Gründe warum das evtl. schief gehen kann.
Das Log liegt unter
- /var/log/le-renew.log
Manuell kann man die evtl. anstehende Aktualisierung so anstoßen:
-
sudo /usr/local/sbin/le-renew nordheide.freifunk.net
map.freifunk-nordheide.net
Freifunkkarte
Karten-Backend Hopglass Server
Die Daten der Freifunkkonten werden mit einem Hopglass Server aggregiert dem Karten-Frontend (s.u.) zur Darstellung übergeben.
Der Server ist unter /opt/hopglass/server/ installiert und liefert via Apache Reverse Proxy und /hopglass/ aus. Das ermöglicht Komprimierung der JSON-Responses und die Nutzung eines SSL-Zertifikats. Seine Einstellungen und Daten liegen unter /etc/hopglass-server/ffnh/. Die Daten werden alle 5 Minuten zwischengespeichert und jede Stunde auf die letzten 7 Tage reduziert.
Achtung: das letzte Release ist sehr alt und läuft nicht richtig mit der aktuellen Knotenliste. Daher mit git clone https://github.com/hopglass/hopglass-server server
(ohne Release) klonen.
Betrieben wird er über systemctl restart hopglass-server@ffnh.service
.
Bereitgestellte URLs:
- /nodes.json HopGlass nodes.json v2
- /graph.json HopGlass graph.json v1
- /mv/nodes.json Meshviewer nodes.json v2
- /mv/graph.json Meshviewer graph.json v1
- /mv1/nodes.json Meshviewer nodes.json v1
- /mv1/graph.json Meshviewer graph.json v1
- /raw.json Raw data collected, same as the raw.json save file
- /nodelist.json format (github.com/ffansbach/nodelist)
- /hosts hosts file to be placed in /etc/hosts
- /metrics Prometheus metrics
- /wifi-aliases.txt Aliases file for Wifi Analyzer app
- /WifiAnalyzer_Alias.txt Aliases file for Wifi Analyzer app
- /nodes.zone Named DNS zone file
Karten-Frontend Hopglass
Die Hopglass-Karte unter map.freifunk-nordheide.de wird im Browser zusammengestellt und zeigt den aktuellen Zustand und Vernetzung der Knoten in Freifunk Nordheide. Sie nutzt eine wählbare Leaflet-Karte als Hintergrund und stellt darauf u.a. folgendes dar:
- Freifunkknoten mit Geo-Koordinaten
- Netzverbindung und Verbindungsqualität
- Anzahl der Nutzer/Geräte am jeweiingen Knoten
Die Kartenanwendung ist unter /home/freifunker/hopglass/build installiert und die Einstellungen in der config.json abgelegt. Diese zeigt den Kartenbereich von mindestens 25Km rund um Buchholz und die neuen Knoten werden für einen Tag als grün gekennzeichnet.
Sie wird über den Apache ausgeliefert.
Nodelist
Die Kontenliste unter map.freifunk-nordheide.de/nodelist zeigt alle verfügbaren Knotendaten im Netz. Sie visualisiert die Daten (/nodes.json und /graph.json) aus obigem Hopglass-Server.
Die Karten-Anwendung ist unter /home/freifunker/nodelist installiert und wird über den Apache ausgeliefert.
statistik.freifunk-nordheide.de
Freifunk-Collector
Ein Ruby-Script bereitet die Knoten- und Graph-Daten aus dem Hopglass-Backend kontinuierlich auf und befüllt damit die InfluxDB.
- Seine Einstellungen liegen unter /etc/freifunk-collector/ffnh/.
- Das Script liegt unter /opt/ffnh-stats/scripts/.
- Es läuft via
systemctl status freifunk-collector@ffnh.service
.
Dabei nutzt es die beiden JSONs:
- graph_json = http://map.freifunk-nordheide.de/hopglass/graph.json
- nodes_json = http://map.freifunk-nordheide.de/hopglass/mv1/nodes.json
InfluxDB
Die InfluxDB speichert zeitlich anfallende Statistik-Daten. Die genutzte Datenbank ist freifunk.
Grafana
Das Analyse-Werkzeug Grafana erlabut die Visualisierung und Analyse der Daten aus der InfluxDB. Eine Reihe von Dashboards wird vom Karten-Frontend Hopglass eingebunden (siehe config.json) und sind so leicht aus der Karte erreichbar. Dies sind:
- das Status Dashboard, welches den Gesamtüberblick über Anzahl/Qualität von Clients und Verbindungen abbildet
- die Statistik zu jedem Knoten
- die Statistik zu jeder Verbindung
Einbindungen der Charts über PNG-Bilder anstatt der iFrames legen die Bilder lokal unter /srv/ff/grafana/lib/png/ ab.
Das gesamte Grafana-Frontend wird, wie Hopglass via Apache Reverse Proxy unter /grafana/ auf map.freifunk-nordheide.de ausgeliefert.