Seite 1 von 2
[influxdb] upgrade auf die version 2.x möglich ?
Verfasst: So 17. Jul 2022, 19:06
von Andy
Ich brauche dringend die influxdb in der version 2. Mit der veralteten 1.8 komme ich nicht weiter.
2 Projekte habe ich schon geparkt weil ich so nicht weiter komme und nun habe ich ein drittes Projekt das die Version 2.x voraus setzt.
Ich habe 2 Abende mit upgrade versuchen verbracht aber ich bekomme es einfach nicht auf die Reihe.
Felix kannst du bitte influxdb 2.3 für 64bit bei der Installation zur Auswahl stellen oder einen Weg aufzeigen wie man die veraltet Version 1.x upgraden kann? Die Version 2.x setzt wohl 64bit voraus.
Re: [influxdb] upgrade auf die version 2.x möglich ?
Verfasst: Mi 20. Jul 2022, 13:50
von ei23felix
Upgrade von 1.8 auf 2 ist so 1 zu 1 nicht möglich glaube, wenn ich mich richtig erinnere ist die Datenstruktur ist eine andere. Auch ist die Abfragesprache ja nun eine andere (FLUX).
Also ein ähnliches Problem wie bei Python 2 und 3.
Installation ist aber einfach:
Hab mal ein Template für die 2.3.0 geschrieben. Die Daten wirst du aber vermutlich irgendwie migrieren müssen. Ich werde erstmal noch bei der 1.8.4 bleiben
Wenn du die 1.8.4 nicht mehr brauchst, dann schmeißt sie runter und dann kannst du die ports auch auf die standardwerte ändern.
Hab es getestet: (64Bit Pi OS) läuft.
Code: Alles auswählen
influxdb2:
container_name: influxdb2
image: influxdb:2.3.0
restart: unless-stopped
ports:
- "8087:8086"
# - "8083:8083"
# - "2003:2003"
volumes:
- ./volumes/influxdb2/data:/var/lib/influxdb2
- ./volumes/influxdb2/config:/etc/influxdb2
EDIT:
https://docs.influxdata.com/influxdb/v2 ... v2/docker/
Probiere es gerade mal aus. Migration ist ja immer so einer Sache...
Re: [influxdb] upgrade auf die version 2.x möglich ?
Verfasst: Mi 20. Jul 2022, 15:06
von ei23felix
Hab die Migration hinbekommen - hat mich aber auch ne Stunde gekostet.
Mit diesen Infos hier hat es allerdings geklappt:
https://docs.influxdata.com/influxdb/v2 ... v2/docker/
Folgendes habe ich gemacht:
Code: Alles auswählen
docker exec -it influxdb cp /etc/influxdb/influxdb.conf /var/lib/influxdb/influxdb.conf
sudo mkdir ei23-docker/volumes/influxdb/config
sudo mv ei23-docker/volumes/influxdb/data/influxdb.conf ei23-docker/volumes/influxdb/config/influxdb.conf
sudo mkdir -p ei23-docker/volumes/influxdb2/v1/
sudo cp -r ei23-docker/volumes/influxdb/* ei23-docker/volumes/influxdb2/v1/
Die Docker-Compose von InfluxDB2 sieht so aus:
Code: Alles auswählen
influxdb2:
container_name: influxdb2
image: influxdb:2.3.0
restart: unless-stopped
ports:
- "8087:8086"
environment:
- "DOCKER_INFLUXDB_INIT_MODE=upgrade"
- "DOCKER_INFLUXDB_INIT_USERNAME=deinuser"
- "DOCKER_INFLUXDB_INIT_PASSWORD=deinpasswort"
- "DOCKER_INFLUXDB_INIT_ORG=deineorg"
- "DOCKER_INFLUXDB_INIT_BUCKET=deineDB"
volumes:
- ./volumes/influxdb2/data:/var/lib/influxdb2
- ./volumes/influxdb2/config:/etc/influxdb2
- ./volumes/influxdb2/v1/data:/var/lib/influxdb
- ./volumes/influxdb2/v1/config:/etc/influxdb
und zu guter letzt
zu diesem Zeitpunkt hast du dann deine 1.8.4 wie gewohnt unter 8086 am laufen und die 2 unter 8087
Kannst du wenn alles läuft dann ja ändern und so lange beides parallel testen.
Einer der riesen Vorteile von Docker
PS: Lass uns daran Teilhaben, was du cooles mit der neuen InfluxDB machen willst
Re: [influxdb] upgrade auf die version 2.x möglich ?
Verfasst: Mi 20. Jul 2022, 20:45
von Andy
Ein Segen.....
Ich will die Daten von den Solar Invertern und vom Battery Management System visualisieren und beide Lösungen erwarten eine 2.x Datenbank.
Ich muss auch noch irgendwelche Token erzeugen. Mal sehen wie das geht
BTW. hast du einen formatierungsfehler gepostet.
Code: Alles auswählen
sudo cp -r ei23-docker/volumes/influxdb/*
ei23-docker/volumes/influxdb2/v1/
so sollte es korrekt sein oder?
Code: Alles auswählen
sudo cp -r ei23-docker/volumes/influxdb/* ei23-docker/volumes/influxdb2/v1/
Ich bekomme 2 fehler angezeigt
Code: Alles auswählen
ERROR: yaml.parser.ParserError: while parsing a block mapping
in "./docker-compose.yml", line 1, column 1
expected <block end>, but found '<block mapping start>'
in "./docker-compose.yml", line 105, column 3
===================================================
//// Docker-Compose verursacht Fehler... (siehe oben)
891a1587d364: Pull complete
6a5d1ed6a27d: Pull complete
1186afd5d5e8: Pull complete
2d0df5326ac1: Pull complete
5d6354ffc941: Pull complete
5fcbacb5196e: Pull complete
16ae52c693b9: Pull complete
4278dea3bc40: Pull complete
77049a9c8a36: Pull complete
Creating influxdb2 ... done
Hier die docker-compose-yml
Code: Alles auswählen
version: '3'
networks:
nextcloud: # comment this out if not needed
driver: bridge
internal: true
fireflyiii: # comment this out if not needed
driver: bridge
internal: true
services:
# MQTT-Broker
mosquitto:
container_name: mosquitto
image: eclipse-mosquitto
restart: unless-stopped
user: "1883"
ports:
- "1883:1883"
- "9001:9001"
volumes:
- ./volumes/mosquitto/data:/mosquitto/data
- ./volumes/mosquitto/log:/mosquitto/log
- ./volumes/mosquitto/config:/mosquitto/config
logging:
options:
max-size: "5m"
max-file: "3"
# startpage for ei23-SmartHomeServer
ei23:
image: nginx:alpine
container_name: ei23
volumes:
- ./volumes/ei23/conf:/etc/nginx/conf.d
- ./volumes/ei23/web:/www
- ./volumes/ei23/docs/site:/www/docs
ports:
- "80:80"
# labels:
# - traefik.enable=true
# - traefik.http.routers.ei23-lan.rule=(Host(`192.168.178.2`) || Host(`raspberrypi`))
# - traefik.http.routers.ei23-lan.priority=1
# - traefik.http.routers.ei23-lan.entrypoints=lan
restart: unless-stopped
# Database
influxdb:
container_name: influxdb
image: influxdb:1.8
restart: unless-stopped
ports:
- "8086:8086"
- "8083:8083"
- "2003:2003"
environment:
- "INFLUXDB_DB=MAIN"
# - "INFLUXDB_DATA_ENGINE=tsm1"
- "INFLUXDB_REPORTING_DISABLED=false"
- "INFLUXDB_STORE_ENABLED=false"
- "INFLUXDB_QUERY_LOG_ENABLED=false"
- "INFLUXDB_ADMIN_ENABLED=true"
# - "INFLUXDB_HTTP_AUTH_ENABLED=true"
# - "INFLUXDB_ADMIN_USER=admin"
# - "INFLUXDB_ADMIN_PASSWORD=NvlK9A67SSCCjwy"
- "INFLUXDB_USER=admin"
- "INFLUXDB_USER_PASSWORD=raspberry"
# - "INFLUXDB_READ_USER=readuser"
# - "INFLUXDB_READ_USER_PASSWORD=zRRo65aEbBt4IHM"
# - "INFLUXDB_WRITE_USER=writeuser"
# - "INFLUXDB_WRITE_USER_PASSWORD=vklVQ2t4q6IY0Lj"
# # Enable Traefik Log
# - "INFLUXDB_UDP_ENABLED=true"
# - "INFLUXDB_UDP_BIND_ADDRESS=0.0.0.0:8089"
# - "INFLUXDB_UDP_DATABASE=traefik"
volumes:
- ./volumes/influxdb/data:/var/lib/influxdb
- ./backups/influxdb/db:/var/lib/influxdb/backup
logging:
options:
max-size: "5m"
max-file: "3"
influxdb2:
container_name: influxdb2
image: influxdb:2.3.0
restart: unless-stopped
ports:
- "8087:8086"
environment:
- "DOCKER_INFLUXDB_INIT_MODE=upgrade"
- "DOCKER_INFLUXDB_INIT_USERNAME=deinuser"
- "DOCKER_INFLUXDB_INIT_PASSWORD=deinpasswort"
- "DOCKER_INFLUXDB_INIT_ORG=deineorg"
- "DOCKER_INFLUXDB_INIT_BUCKET=deineDB"
volumes:
- ./volumes/influxdb2/data:/var/lib/influxdb2
- ./volumes/influxdb2/config:/etc/influxdb2
- ./volumes/influxdb2/v1/data:/var/lib/influxdb
- ./volumes/influxdb2/v1/config:/etc/influxdb
grafana:
container_name: grafana
image: grafana/grafana:latest
restart: unless-stopped
user: "0"
ports:
- "3000:3000"
volumes:
- ./volumes/grafana/data:/var/lib/grafana
- ./volumes/grafana/log:/var/log/grafana
- ./volumes/grafana/provisioning:/etc/grafana/provisioning
labels:
- traefik.enable=true
- traefik.http.routers.grafana.rule=Host(`grafana.example.com`)
- traefik.http.services.grafana.loadbalancer.server.port=3000
- traefik.http.routers.grafana.entrypoints=web-secured
- traefik.http.routers.grafana.tls=true
- traefik.http.routers.grafana.tls.certresolver=letsEncrypt
environment:
- GF_PATHS_DATA=/var/lib/grafana
- GF_PATHS_LOGS=/var/log/grafana
# Uncomment this if open access is wanted
# - GF_AUTH_ANONYMOUS_ENABLED=true
# - GF_AUTH_ANONYMOUS_ORG_NAME=org
# - GF_AUTH_ANONYMOUS_ORG_ROLE=Viewer
# - GF_SECURITY_ALLOW_EMBEDDING=true
depends_on:
- influxdb
logging:
options:
max-size: "5m"
max-file: "3"
homeassistant:
container_name: homeassistant
image: homeassistant/home-assistant:stable
restart: unless-stopped
network_mode: host
ports:
- "8123:8123"
volumes:
- ./volumes/homeassistant/config:/config
# environment:
# - "TZ=Europe/Berlin"
logging:
options:
max-size: "5m"
max-file: "3"
portainer:
container_name: portainer
image: portainer/portainer-ce
restart: unless-stopped
ports:
- "8000:8000"
- "9000:9000"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./volumes/portainer/data:/data
sind "deinuser deinpasswort etc." platzhalter oder muss man die Daten gegen was sinnvolles ersetzten ?
Re: [influxdb] upgrade auf die version 2.x möglich ?
Verfasst: Mi 20. Jul 2022, 23:12
von Andy
hab ich noch was gefunden.
wenn ich in influxdb2 etwas ändern will bekomme ich eine fehlermeldung.
Code: Alles auswählen
Failed to update bucket: "write:orgs/4d2714eaa7aab105/buckets/6292014a44fcfb58 is unauthorized"
Re: [influxdb] upgrade auf die version 2.x möglich ?
Verfasst: Do 21. Jul 2022, 18:39
von Andy
Es ist schon seltsam.
Ich habe ei23 erneut installiert, erneut influxdb2 eingepflegt und jetzt geht es ohne Fehlermeldung.
Re: [influxdb] upgrade auf die version 2.x möglich ?
Verfasst: Do 21. Jul 2022, 20:56
von ei23felix
Andy hat geschrieben: ↑Mi 20. Jul 2022, 20:45
Ein Segen.....
Ich will die Daten von den Solar Invertern und vom Battery Management System visualisieren und beide Lösungen erwarten eine 2.x Datenbank.
Ich muss auch noch irgendwelche Token erzeugen. Mal sehen wie das geht
BTW. hast du einen formatierungsfehler gepostet.
Code: Alles auswählen
sudo cp -r ei23-docker/volumes/influxdb/*
ei23-docker/volumes/influxdb2/v1/
so sollte es korrekt sein oder?
Code: Alles auswählen
sudo cp -r ei23-docker/volumes/influxdb/* ei23-docker/volumes/influxdb2/v1/
Ich bekomme 2 fehler angezeigt
Code: Alles auswählen
ERROR: yaml.parser.ParserError: while parsing a block mapping
in "./docker-compose.yml", line 1, column 1
expected <block end>, but found '<block mapping start>'
in "./docker-compose.yml", line 105, column 3
===================================================
//// Docker-Compose verursacht Fehler... (siehe oben)
891a1587d364: Pull complete
6a5d1ed6a27d: Pull complete
1186afd5d5e8: Pull complete
2d0df5326ac1: Pull complete
5d6354ffc941: Pull complete
5fcbacb5196e: Pull complete
16ae52c693b9: Pull complete
4278dea3bc40: Pull complete
77049a9c8a36: Pull complete
Creating influxdb2 ... done
Hier die docker-compose-yml
Code: Alles auswählen
version: '3'
networks:
nextcloud: # comment this out if not needed
driver: bridge
internal: true
fireflyiii: # comment this out if not needed
driver: bridge
internal: true
services:
# MQTT-Broker
mosquitto:
container_name: mosquitto
image: eclipse-mosquitto
restart: unless-stopped
user: "1883"
ports:
- "1883:1883"
- "9001:9001"
volumes:
- ./volumes/mosquitto/data:/mosquitto/data
- ./volumes/mosquitto/log:/mosquitto/log
- ./volumes/mosquitto/config:/mosquitto/config
logging:
options:
max-size: "5m"
max-file: "3"
# startpage for ei23-SmartHomeServer
ei23:
image: nginx:alpine
container_name: ei23
volumes:
- ./volumes/ei23/conf:/etc/nginx/conf.d
- ./volumes/ei23/web:/www
- ./volumes/ei23/docs/site:/www/docs
ports:
- "80:80"
# labels:
# - traefik.enable=true
# - traefik.http.routers.ei23-lan.rule=(Host(`192.168.178.2`) || Host(`raspberrypi`))
# - traefik.http.routers.ei23-lan.priority=1
# - traefik.http.routers.ei23-lan.entrypoints=lan
restart: unless-stopped
# Database
influxdb:
container_name: influxdb
image: influxdb:1.8
restart: unless-stopped
ports:
- "8086:8086"
- "8083:8083"
- "2003:2003"
environment:
- "INFLUXDB_DB=MAIN"
# - "INFLUXDB_DATA_ENGINE=tsm1"
- "INFLUXDB_REPORTING_DISABLED=false"
- "INFLUXDB_STORE_ENABLED=false"
- "INFLUXDB_QUERY_LOG_ENABLED=false"
- "INFLUXDB_ADMIN_ENABLED=true"
# - "INFLUXDB_HTTP_AUTH_ENABLED=true"
# - "INFLUXDB_ADMIN_USER=admin"
# - "INFLUXDB_ADMIN_PASSWORD=NvlK9A67SSCCjwy"
- "INFLUXDB_USER=admin"
- "INFLUXDB_USER_PASSWORD=raspberry"
# - "INFLUXDB_READ_USER=readuser"
# - "INFLUXDB_READ_USER_PASSWORD=zRRo65aEbBt4IHM"
# - "INFLUXDB_WRITE_USER=writeuser"
# - "INFLUXDB_WRITE_USER_PASSWORD=vklVQ2t4q6IY0Lj"
# # Enable Traefik Log
# - "INFLUXDB_UDP_ENABLED=true"
# - "INFLUXDB_UDP_BIND_ADDRESS=0.0.0.0:8089"
# - "INFLUXDB_UDP_DATABASE=traefik"
volumes:
- ./volumes/influxdb/data:/var/lib/influxdb
- ./backups/influxdb/db:/var/lib/influxdb/backup
logging:
options:
max-size: "5m"
max-file: "3"
influxdb2:
container_name: influxdb2
image: influxdb:2.3.0
restart: unless-stopped
ports:
- "8087:8086"
environment:
- "DOCKER_INFLUXDB_INIT_MODE=upgrade"
- "DOCKER_INFLUXDB_INIT_USERNAME=deinuser"
- "DOCKER_INFLUXDB_INIT_PASSWORD=deinpasswort"
- "DOCKER_INFLUXDB_INIT_ORG=deineorg"
- "DOCKER_INFLUXDB_INIT_BUCKET=deineDB"
volumes:
- ./volumes/influxdb2/data:/var/lib/influxdb2
- ./volumes/influxdb2/config:/etc/influxdb2
- ./volumes/influxdb2/v1/data:/var/lib/influxdb
- ./volumes/influxdb2/v1/config:/etc/influxdb
grafana:
container_name: grafana
image: grafana/grafana:latest
restart: unless-stopped
user: "0"
ports:
- "3000:3000"
volumes:
- ./volumes/grafana/data:/var/lib/grafana
- ./volumes/grafana/log:/var/log/grafana
- ./volumes/grafana/provisioning:/etc/grafana/provisioning
labels:
- traefik.enable=true
- traefik.http.routers.grafana.rule=Host(`grafana.example.com`)
- traefik.http.services.grafana.loadbalancer.server.port=3000
- traefik.http.routers.grafana.entrypoints=web-secured
- traefik.http.routers.grafana.tls=true
- traefik.http.routers.grafana.tls.certresolver=letsEncrypt
environment:
- GF_PATHS_DATA=/var/lib/grafana
- GF_PATHS_LOGS=/var/log/grafana
# Uncomment this if open access is wanted
# - GF_AUTH_ANONYMOUS_ENABLED=true
# - GF_AUTH_ANONYMOUS_ORG_NAME=org
# - GF_AUTH_ANONYMOUS_ORG_ROLE=Viewer
# - GF_SECURITY_ALLOW_EMBEDDING=true
depends_on:
- influxdb
logging:
options:
max-size: "5m"
max-file: "3"
homeassistant:
container_name: homeassistant
image: homeassistant/home-assistant:stable
restart: unless-stopped
network_mode: host
ports:
- "8123:8123"
volumes:
- ./volumes/homeassistant/config:/config
# environment:
# - "TZ=Europe/Berlin"
logging:
options:
max-size: "5m"
max-file: "3"
portainer:
container_name: portainer
image: portainer/portainer-ce
restart: unless-stopped
ports:
- "8000:8000"
- "9000:9000"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./volumes/portainer/data:/data
sind "deinuser deinpasswort etc." platzhalter oder muss man die Daten gegen was sinnvolles ersetzten ?
jo, da bin ich wohl auf die Enter Taste gekommen
Re: [influxdb] upgrade auf die version 2.x möglich ?
Verfasst: Do 21. Jul 2022, 20:57
von ei23felix
Andy hat geschrieben: ↑Mi 20. Jul 2022, 23:12
hab ich noch was gefunden.
wenn ich in influxdb2 etwas ändern will bekomme ich eine fehlermeldung.
Code: Alles auswählen
Failed to update bucket: "write:orgs/4d2714eaa7aab105/buckets/6292014a44fcfb58 is unauthorized"
Gut möglich, dass man das "upgrade" aus der docker-compose config anschließend rausnehmen muss.
Re: [influxdb] upgrade auf die version 2.x möglich ?
Verfasst: Do 21. Jul 2022, 22:52
von Andy
je nee, ich denke der Fehler wird VOR dem Bildschirm sitzen
ich versuche noch zu ergründen was ich getan habe
Re: [influxdb] upgrade auf die version 2.x möglich ?
Verfasst: Mo 30. Okt 2023, 16:47
von Andi99
Hallo,
ich versuche gerade auf meinem RPI4 influxDB2.x über docker zu installieren.
docker-compose.yml anpassen (wie oben beschrieben) und
ei23 dc
Pulling influxdb2 (influxdb:2.7)...
2.7: Pulling from library/influxdb
ERROR: no matching manifest for linux/arm/v7 in the manifest list entries
uname -a
Linux raspberrypi 6.1.21-v8+ #1642 SMP PREEMPT Mon Apr 3 17:24:16 BST 2023 aarch64 GNU/Linux
Was muss ich machen damit es klappt?
Danke
Andi99