家のLibreNMSが沈黙していた。すべてのグラフは描画されなくなり、何故かポーリングだけは淡々と行われていた。これは本当に気づかなかった。いや気付かないの馬鹿なんですけど。
僕、グラフを公開してるんで見りゃわかるんですけども。でも人ってこういうときに「何もしてないのに壊れた」とか言っちゃうのよね。僕も言った。いやしとるがな、apt update && apt upgrade
しとるがな。
LibreNMSの公式インストールガイドどおりにインストールすると、LibreNMSはgitリポジトリ上から自分自身をクローンしてアップデートするのだ。
最初はコレが原因だと思っていたのでそのうちなおるだろとか思っていた。馬鹿ですね。原因が自分のapt update && apt upgrade
だとも思わずに。
しばらく(3ヶ月ぐらい放置)して./validate.phpをしてみると、LibreNMSがmariaDBに接続できていないことに気付く。うわ。なんだこれ。間違いない。絶対LibreNMSのバグなんかじゃない。これなんかおかしい。と思ったのは2025年の長いお正月休みの時でした。
ここにも書いたけど、それまでの/opt/libreNMS/.env はこんな感じだった
APP_KEY=base64:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
DB_HOST=localhost
DB_DATABASE=librenms
DB_USERNAME=librenms
DB_PASSWORD=XXXXXXXX
#APP_URL
NODE_ID=XXXXXXXXXXXX
VAPID_PUBLIC_KEY=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
VAPID_PRIVATE_KEY=0_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
shellからmysqlコマンドは叩けるし、接続もする。なのにLibreNMSはDBに接続できない。php-mysqlがダメなのか、なんでなのかわからなかった。なんでここにたどり着いたかというと、海外のLibreNMSのコミュニティでPoller Not Running from Cronを見つけたから。いや活発なコミュニティがあるツールで助かった。つまりこれ。DB_SOCKET=/run/mysqld/mysqld.sock
を書き足せば良い。最初の.envには無くてよかったんだけど、どうやらmariaDBがバージョンアップにより接続要件を変えたように思える。
さらに物事を複雑化させたのがコレ。/etc/apt/sources.list なんだけど、debian11からテキトーにバージョンアップしたのでこんな感じだった
deb http://cdn-fastly.deb.debian.org/debian bookworm main non-free-firmware
deb-src http://cdn-fastly.deb.debian.org/debian bookworm main non-free-firmware
deb http://security.debian.org/debian-security bookworm-security main non-free-firmware
deb-src http://security.debian.org/debian-security bookworm-security main non-free-firmware
deb http://cdn-fastly.deb.debian.org/debian bookworm-updates main non-free-firmware
deb-src http://cdn-fastly.deb.debian.org/debian bookworm-updates main non-free-firmware
つまりsed -i 's/bullseye/bookworm/g' /etc/apt/sources.list
しただけの状態でapt update && apt upgrade
し続けてたことでどうも何かがアップデートしなかったんですね。でも全部最新だと思い込んでた私。そこにもってきて今回の現象、どうやらmariaDBはバージョンアップしたのかもしれないけど、他がバージョンアップしてたりしてなかったり。
無事、LibreNMSはグラフ描画をするようになり、無事ここにもグラフが出るようになりました。