Konfiguration von HELIOS
HELIOS liest selbst nur wenige Umgebungsvariablen. Alle teilt es sich mit dem Dashboard.
Dazu kommen die Tokens für den Zugriff auf InfluxDB. Die liest HELIOS nicht, es erzeugt sie und verteilt sie an die übrigen Dienste.
Umgebungsvariablen
Abschnitt betitelt „Umgebungsvariablen“SECRET_KEY_BASE
Abschnitt betitelt „SECRET_KEY_BASE“Schlüssel, mit dem Rails die Sitzungs-Cookies signiert. Erzeugt wird er etwa mit openssl rand -hex 64, das ergibt 128 Zeichen. HELIOS und das Dashboard verwenden denselben Wert.
Ohne den Schlüssel startet der Container von HELIOS nicht. Ändert sich der Wert, werden alle Anmeldungen ungültig.
SECRET_KEY_BASE=8f14e45fceea167a5a36dedd4bea2543...ADMIN_PASSWORD
Abschnitt betitelt „ADMIN_PASSWORD“Passwort für den Zugang zu HELIOS. Dasselbe Passwort schützt die Einstellungen im Dashboard, es gibt nur eines.
Fehlt das Passwort, steht die Oberfläche von HELIOS jedem offen, der den Server erreicht. HELIOS sorgt deshalb selbst dafür, dass immer eines gesetzt ist.
ADMIN_PASSWORD=my-secret-passwordZeitzone gemäß Liste. Standardwert ist Europe/Berlin.
Sie bestimmt die Zeitstempel im Protokoll und die Uhrzeit, zu der die automatische Datensicherung läuft.
TZ=Europe/RomeFORCE_SSL
Abschnitt betitelt „FORCE_SSL“Schaltet secure-Cookies, HSTS und die Weiterleitung von HTTP auf HTTPS ein. Erlaubt sind true und false. Standardwert ist false.
Auf true gehört der Wert nur, wenn die Oberfläche hinter einem Reverse Proxy mit TLS-Zertifikat steht. Läuft sie über HTTP, kommt mit secure-Cookies keine Anmeldung zustande.
FORCE_SSL=trueInfluxDB-Tokens
Abschnitt betitelt „InfluxDB-Tokens“Jeder Dienst, der auf die Messwerte in InfluxDB zugreift, braucht dafür einen API-Token. Diese drei Variablen halten die Tokens bereit, die HELIOS bei der Installation erzeugt.
Gelesen werden sie weder von HELIOS noch von InfluxDB. HELIOS gibt jedem Dienst denjenigen Token weiter, der zu seiner Aufgabe passt: Ein Kollektor darf damit nur schreiben, das Dashboard nur lesen. Beim Dienst selbst heißt die Variable dann immer INFLUX_TOKEN.
Wer die Konfiguration von Hand pflegt, legt die Tokens selbst in InfluxDB an und trägt sie hier ein.
INFLUX_TOKEN_READ
Abschnitt betitelt „INFLUX_TOKEN_READ“Token für das Dashboard, das damit lesend auf die Messwerte zugreift. Es bekommt den Wert als INFLUX_TOKEN.
Der Token muss in InfluxDB existieren und den Bucket lesen dürfen. Eine Änderung wirkt beim nächsten Start des Dashboards. Passt der Token nicht, bleiben die Kurven leer.
INFLUX_TOKEN_READ=my-super-secret-read-tokenINFLUX_TOKEN_WRITE
Abschnitt betitelt „INFLUX_TOKEN_WRITE“Token für die Kollektoren, die damit Messwerte schreiben. Jeder Kollektor bekommt den Wert als INFLUX_TOKEN.
Der Token muss in InfluxDB existieren und in den Bucket schreiben dürfen. Eine Änderung wirkt beim nächsten Start der Kollektoren.
INFLUX_TOKEN_WRITE=my-super-secret-write-tokenINFLUX_TOKEN_READWRITE
Abschnitt betitelt „INFLUX_TOKEN_READWRITE“Token für den Power-Splitter, der Messwerte liest und seine Ergebnisse zurückschreibt. Nötig ist er nur, wenn der Power-Splitter läuft. Er bekommt den Wert als INFLUX_TOKEN.
INFLUX_TOKEN_READWRITE=my-super-secret-readwrite-token