Zabbixの設定

Zabbixは無料で使えるネットワーク監視パッケージで、ネットワークの各Hostの状態 (CPU使用状況、メモリ・ストレージ使用量、ネットワーク速度等)をリアルタイムで監視できる。 ここではMariaDBとApacheを使ってZabbixを構築する。




Zabbixのサーバー構築


参考 : 公式サイト

まずはMariaDB、Apache2をインストールする。MariaDBはこちらを参照。
Apache2をインストールする。

$ sudo apt install apache2

次にZabbixをインストールする。

$ wget https://repo.zabbix.com/zabbix/6.2/debian/pool/main/z/zabbix-release/zabbix-release_6.2-1%2Bdebian11_all.deb
$ sudo dpkg -i zabbix-release_6.2-1+debian11_all.deb
$ sudo apt update
$ sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent

Zabbixデータベースの作成

下記は同じサーバーにZabbix serverとMySQLを入れる場合だが、もし異なるサーバーに入れたい場合は下記のlocalhostの部分を適宜変える。

例:

$ mysql -u root -p
mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
mysql> create user zabbix@localhost identified by '<パスワード>';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> set global log_bin_trust_function_creators = 1;
mysql> quit;
$ zcat /usr/share/doc/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix
$ mysql -u root -p
mysql> set global log_bin_trust_function_creators = 0;
mysql> quit;

ZabbixからMySQLに接続できるようにする。/etc/zabbix/zabbix_server.confに以下を追記。

DBPassword=<パスワード>

もし、Zabbix serverとMySQLのサーバーが異なるhostで運用する場合以下も追記

(中略)
DBHost=<MySQLサーバーのIPアドレス>
(中略)
DBPort=<MySQLのport(MariaDBのdefaultは3306)>

Zabbixの再起動と自動起動の設定。

$ sudo systemctl restart zabbix-server zabbix-agent apache2
systemctl enable zabbix-server zabbix-agent apache2

Zabbixのクライアント側設定


クライアント側でもzabbix-agentをインストールする。

sudo apt install zabbix-agent
$ sudo systemctl restart zabbix-agent
$ sudo systemctl enable zabbix-agent

次にサーバーを指定する。/etc/zabbix/zabbix_agentd.confのServerとServerActiveを書き換える。

### Option: Server
(中略)
Server=<サーバーのIP>
(中略)
### Option: ServerActive
(中略)
ServerActive=<サーバーのIP>

Raspberry piの場合以下を追記するとZabbixでCPUの温度を監視できる。

UserParameter=system.cpu.temperature,cat /sys/class/thermal/thermal_zone0/temp