Hello,
I woke up this morning unable to log in to my LibreNMS. Using the same credentials I’ve used since first set up, about two months ago. I’m a 15 yr vet of Nagios w/ many custom checks I’ve written. I’ve changed nothing on the server or Docker install/config. I’ve found nothing yet in the logs to indicate any error. I have seen a number of deprecation warnings but nothing that seems related to a problem connecting to the DB or other. Since this is such a new install having to reinstall isn’t the end of the world, but as a SysAdmin, knowing and resolving the issue would be my preferred outcome. I don’t want to have to experience this issue again, for obvious reasons.
To start, does it have anything to do with …:edge release of the docker image? I, like a rookie, missed that in my initial deployment. Is there a stable? I’m thinking your “edge” tag is latest?
docker-compose.yml
version: "3.5"
x-env-global: &env-global
- &MYSQL_DATABASE "librenms"
- &MYSQL_USER "librenms"
- &MYSQL_PASSWORD <obfuscated>
- &TZ "America/Phoenix"
- &PUID "1001"
- &PGID "999"
x-envlibrenms: &envlibrenms
MEMORY_LIMIT: "256M"
UPLOAD_MAX_SIZE: "16M"
OPCACHE_MEM_SIZE: "128"
REAL_IP_FROM: "0.0.0.0/32"
REAL_IP_HEADER: "X-Forwarded-For"
LOG_IP_VAR: "remote_addr"
LIBRENMS_SNMP_COMMUNITY: <obfuscated>
MEMCACHED_HOST: "memcached"
MEMCACHED_PORT: "11211"
LIBRENMS_WEATHERMAP: "true"
LIBRENMS_WEATHERMAP_SCHEDULE: "*/5 * * * *"
services:
db:
image: mariadb:10.4
command:
- "mysqld"
- "--innodb-file-per-table=1"
- "--lower-case-table-names=0"
- "--character-set-server=utf8"
- "--collation-server=utf8_unicode_ci"
volumes:
- ${PWD}/librenms/db:/var/lib/mysql
environment:
TZ: *TZ
#MYSQL_ALLOW_EMPTY_PASSWORD: "yes"
MYSQL_DATABASE: *MYSQL_DATABASE
MYSQL_USER: *MYSQL_USER
MYSQL_PASSWORD: *MYSQL_PASSWORD
MYSQL_ROOT_PASSWORD: <obfuscated>
networks:
- librenms_network
restart: always
memcached:
image: memcached:alpine
environment:
TZ: *TZ
networks:
- librenms_network
restart: always
redis:
image: redis:5.0-alpine
environment:
TZ: *TZ
restart: always
librenms:
image: librenms/librenms:edge
hostname: librenms
cap_add:
- NET_ADMIN
- NET_RAW
ports:
- 8999:8000
depends_on:
- db
- memcached
volumes:
- ${PWD}/librenms/librenms:/data
- ${PWD}/snmp_conf/snmpd.conf:/etc/snmp/snmpd.conf
environment:
<<: *envlibrenms
TZ: *TZ
PUID: *PUID
PGID: *PGID
DB_HOST: "db"
DB_NAME: *MYSQL_DATABASE
DB_USER: *MYSQL_USER
DB_PASSWORD: *MYSQL_PASSWORD
DB_TIMEOUT: "60"
networks:
- librenms_network
restart: always
dispatcher:
image: librenms/librenms:edge
hostname: librenms-dispatcher-1234
cap_add:
- NET_ADMIN
- NET_RAW
depends_on:
- librenms
- redis
volumes:
- ${PWD}/librenms/librenms:/data
environment:
<<: *envlibrenms
TZ: *TZ
PUID: *PUID
PGID: *PGID
DB_HOST: "db"
DB_NAME: *MYSQL_DATABASE
DB_USER: *MYSQL_USER
DB_PASSWORD: *MYSQL_PASSWORD
DB_TIMEOUT: "60"
DISPATCHER_NODE_ID: "dispatcher1234"
REDIS_HOST: "redis"
REDIS_PORT: "6379"
REDIS_DB: "0"
SIDECAR_DISPATCHER: "1"
networks:
- librenms_network
restart: always
dispatcher2:
image: librenms/librenms:edge
hostname: librenms-dispatcher-5678
cap_add:
- NET_ADMIN
- NET_RAW
depends_on:
- librenms
- redis
volumes:
- ${PWD}/librenms/librenms:/data
environment:
<<: *envlibrenms
TZ: *TZ
PUID: *PUID
PGID: *PGID
DB_HOST: "db"
DB_NAME: *MYSQL_DATABASE
DB_USER: *MYSQL_USER
DB_PASSWORD: *MYSQL_PASSWORD
DB_TIMEOUT: "60"
DISPATCHER_NODE_ID: "dispatcher5678"
REDIS_HOST: "redis"
REDIS_PORT: "6379"
REDIS_DB: "0"
SIDECAR_DISPATCHER: "1"
networks:
- librenms_network
restart: always
syslogng:
image: librenms/librenms:edge
hostname: librenms-syslogng
cap_add:
- NET_ADMIN
- NET_RAW
depends_on:
- librenms
volumes:
- ${PWD}/librenms/librenms:/data
environment:
<<: *envlibrenms
TZ: *TZ
PUID: *PUID
PGID: *PGID
DB_HOST: "db"
DB_NAME: *MYSQL_DATABASE
DB_USER: *MYSQL_USER
DB_PASSWORD: *MYSQL_PASSWORD
DB_TIMEOUT: "60"
SIDECAR_SYSLOGNG: "1"
networks:
- librenms_network
restart: always
networks:
librenms_network:
external:
name: librenms_network
Enter LibreNMS container and run ./daily.sh and ./validate.php
[email protected]:(10.0.2.249)~/DockerServices/librenms$ docker exec -it -u librenms librenms_librenms_1 bash
bash-5.0$ cd /opt/librenms/
bash-5.0$ ./daily.sh
Updating SQL-Schema OK
Cleaning up DB OK
bash-5.0$ ./validate.php
====================================
Component | Version
--------- | -------
LibreNMS | 1.70.1
DB Schema | 2021_02_09_084318_remove_perf_times (199)
PHP | 7.3.25
Python | 3.8.5
MySQL | 10.4.17-MariaDB-1:10.4.17+maria~focal
RRDTool | 1.7.2
SNMP | NET-SNMP 5.8
OpenSSL |
====================================
[OK] Installed from the official Docker image; no Composer required
[OK] Database connection successful
[WARN] Your database schema has extra migrations (2020_09_18_230114_create_service_templates_device_group_table, 2020_09_18_230114_create_service_templates_device_table, 2020_09_18_230114_create_service_templates_table, 2020_09_18_230114_extend_services_table_for_service_templates_table, 2020_09_19_230114_add_foreign_keys_to_service_templates_device_group_table, 2020_09_19_230114_add_foreign_keys_to_service_templates_device_table, 2021_02_08_224355_fix_invalid_dates, 2021_02_09_084318_remove_perf_times). If you just switched to the stable release from the daily release, your database is in between releases and this will be resolved with the next release.
[OK] Database schema correct
[WARN] IPv6 is disabled on your server, you will not be able to add IPv6 devices.
[WARN] Log rotation not enabled, could cause disk space issues
[FIX]:
sudo cp /opt/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms
[WARN] Updates are managed through the official Docker image
bash-5.0$
How is it that I see a [WARN] issue with the DB Schema and then the very next line states [OK]? And still unable to log in.
Thank you