挙措進退

思いついたら書きます

Zabbix on Docker on Raspberry Pi 4B

つい先日、ようやく日本においてもRaspberry Pi 4Bの販売が開始されました。
進化したプロセッサと4GBまで増えたRAMがあれば、なんでもできるような気がしてきます。いやそんなことはないか……

私は普段使いの環境に合わせて、ラズパイに初めてArch Linux ARMをインストールしてみて、それなりにサクサク動くのでびっくりしました。折角ラズパイ4Bが手に入ったんだし、ずっとやりたいと思っていたおうちサーバ群の死活監視をやりたいと思い、ラズパイを監視サーバとして利用しようと思い立ちました。

おうちにサーバがあって当たり前といった逸般的な誤家庭にお住まいのみなさまにとっては、サーバの死活監視が問題になることは少なくないでしょう。

今回は、オープンソースの監視ツールZabbixをラズパイ上で運用するにあたって行ったことを書いていきます。

どかどかDockerの準備

最近はなんでもDocker上で立てちゃえば楽じゃん?という風潮があり、私もその一人です。できるだけ他人の書いたDockerfileを使って、あるいは公開されているイメージを使って、環境構築を楽に終わらせたい……ということで、まずはDockerをインストールすることにしました。

ここでDockerとdocker-composeをインストールする話を書こうかと思ったのですが、多分皆さんRaspbianを利用しているものと思われるので、それ用のインストール記事を探してください……

私は

sudo pacman -S docker docker-compose

で終わりました。

Zabbix on Dockerの準備

Dockerfileの準備

作業用ディレクトリに移動したら、ZabbixのDockerfile群を入手します。

Docker Hubにもイメージはありますが、全てamd64向けのビルドで、armv7で使えるビルドはありません。Dockerfileからビルドすることは可能なので、Dockerfileを準備します。

$ git clone https://github.com/zabbix/zabbix-docker.git

これでDockerfileは一通り手に入りました。

docker-compose.ymlを書く

続いて、docker-compose.ymlを書いていきます。

以下のような内容で、作業用ディレクトリに置いておきます。

gist355d796aff3645d2c8bd93b1ca3bc431

変数などの意味については、 https://github.com/zabbix/zabbix-docker にあるリンクをたどって確認していただけると良いかと思います。

docker-compose.ymlの変更が終わったら、

$ docker-compose build

でビルドをします。ビルドが終わったら、

$ docker-compose up -d

するだけ。簡単ですね。

あとはラズパイの80番ポートに接続して、諸々の監視設定をしていきます。監視対象のホストを追加したり、メールの設定をしたりすると良いでしょう。私はSlackに通知が飛ぶようにしました。上の通りだと、alertscriptsにSlack通知用のスクリプトを置いて設定できます。これもよしなに検索していただければ、いい記事がでてくると思います。

 

今回はRaspberry Pi 4B 4GBでDockerを利用してZabbixサーバを立てました。確認はしていませんが、スペックが足りてさえいれば他のラズパイでもいけるはず……多分。

皆様の快適なサーバ監視生活を祈願して、この記事の締めくくりとさせていただきます。ここまでお付き合いいただきありがとうございました。