NEWS
InfluxDB Update Retention Policies
-
Hallo in die Runde,
auch ich hab nun den Schritt gewagt und wollte ein Influx Update von 1.8 auf 2.7 machen.Meine Influx db läuft zusammen mit Grafana in einem separaten LXC Container auf Proxmox (v7.4-17). Nur kurz - ein Update von Proxmox auf die 8.3 steht noch an, es gibt aber noch 1-2 Themen völlig unabhängig von iobroker, influxdb und grafana, die dass zu diesem Zeitpunkt nicht möglich machen).
Das dieses Update sehr zäh werden kann hatte ich erwartet, deshalb schiebe ich das auch schon etwas länger vor mir her. Das Grafana Repo habe ich aktualisiert und auch der neue Key für Influx ist angelegt - soweit also alles gut.
Und damit es nicht direkt weh tut, arbeite ich mit einem Clone meines aktiven LXC Containers - nur zur SicherheitAuch habe ich unter influxdb 1.8 noch einen neuen User mit Zugriff auf meine iobroker Datenbank angelegt, da die admin user ja beim Update nicht mitgenommen werden.
Die Installation von Influxdb 2.7 läuft auch sauber durch, ich kann einen neuen User anlegen, Passwort, Organisation und Bucket. Auch das funktioniert.
Aber starte ich den Service, fängt es schon damit an, dass ich einen neuen User anlegen soll und ich mich mit dem direkt in der CLI nach der Installation angelegten User nicht anmelden kann.
Und das wichtigste - die iobroker Datenbank fehlt und taucht nicht als Bucket auf.Fehlermeldung dazu:
{"level":"info","ts":1733055897.3124683,"caller":"upgrade/database.go:51","msg":"Upgrading databases"} {"level":"info","ts":1733055897.3386383,"caller":"upgrade/database.go:101","msg":"Creating mapping","database":"iobroker","retention policy":"autogen","orgID":"893dd660e57d7e99","bucketID":"9275e2fd26101bc2"} {"level":"warn","ts":1733055897.3416088,"caller":"upgrade/database.go:158","msg":"Empty retention policy, no shards found","source":"/var/lib/influxdb/data/iobroker/autogen"} {"level":"info","ts":1733055897.35142,"caller":"upgrade/database.go:101","msg":"Creating mapping","database":"iobroker","retention policy":"global","orgID":"893dd660e57d7e99","bucketID":"6eab817347d1a2da"}
Es ist also irgendwas mit der retention policy nicht in Ordnung. Messwerte warenin der iobroker Datenbank vorhanden, das habe ich gecheckt. Interessant ist auch das die Statndart retention policy bei mir die "global" ist und nicht die "autogen"
An dieser Stelle hört es dann aber auch auf - hat jemand eine Idee, wo es klemmen könnte? Ich wäre um jeden Hinweis Dankbar!
-
@touranie wenn ich hier im Forum richtig gelesen habe, können die Daten aus InfluxDB1 nicht automatisch in InfluxDB2 genutzt werden. Da muss wohl was konvertiert werden.
Ro75.
-
@ro75 den Verdacht habe ich auch - wobei dies bei den meisten Anleitungen die man so findet nicht gemacht wird. Angeblich soll dies ja bei dem influxdb upgrade Befehl von alleine passieren.
Er versucht es ja auch, aber kommt anscheinend nicht zum Ziel - deshalb ja vermutlich auch die Fehlermeldung...
-
@touranie sagte in InfluxDB Update Retention Policies:
Angeblich soll dies ja bei dem influxdb upgrade Befehl von alleine passieren.
Das passiert auch. Aber nur, wenn das V1 Configfile (influxdb.conf) am Standardplatz liegt. Ansonsten musst du es so aufrufen:
influxd upgrade --config-file <path to v1 config file>
-
Ahh - verstehe - dann gehe ich da mal auf die Suche. Vielen Dank für den Tip!!!
-
@marc-berg Das ConfigFile liegt am Standartplatz - ich habe den Befehl aber trotzdem nochmal mit dem Verzeichnis Hinweis hintendran abgeschickt. Die Installation von V2 läuft zwar durch, aber mit den gleichen Fehlermeldungen und dem gleichen Ergebnis wie vorher...
Es ist wirklich ein gefummel mit dem Influx Zeug - ich glaub ich bleib einfach auf v1
-
@touranie sagte in InfluxDB Update Retention Policies:
Die Installation von V2 läuft zwar durch, aber mit den gleichen Fehlermeldungen und dem gleichen Ergebnis wie vorher...
Du meinst das
upgrade
?Die Fehler können ein Zeichen dafür sein, dass die Upgrade-Prozedur die Datenbank-Files nicht findet. Der Ort, an dem die DB-Files liegen, wird aus der influxdb.conf ermittelt. Dort mal reinschauen, hier müsste sowas drin stehen:
[meta] dir = "/var/lib/influxdb/meta" [data] dir = "/var/lib/influxdb/data" engine = "tsm1" wal-dir = "/var/lib/influxdb/wal"
Und dann nachschauen, ob die DB-Files an den angegebenen Pfaden liegen.
-
@marc-berg ja, korrekt ich meine upgrade.
In der Influxdb.conf steht genau das drin jedoch ohne den Eintrag: engine = "tsm1" - der fehlt.
In den Pfad habe ich gerade reingeschaut und da liegt die Datei meta.db - nicht mehr, nicht weniger
-
@touranie sagte in InfluxDB Update Retention Policies:
In den Pfad habe ich gerade reingeschaut und da liegt die Datei meta.db - nicht mehr, nicht weniger
Dann wird das die falsche influxdb.conf sein. Müsstest du mal suchen, z.B. mit:
find / -name influxdb.conf
-
@marc-berg Das habe ich getan.
Ergebnis: /etc/influxdb/influxdb.conf
Also liegt sie richtig und ich habe auch in der richtigen Datei geschaut - zumindest würde ich das so interpretieren