Zabbix4.0:Zabbix監視設定追加(memcached,redis,MariaDB編)

Zabbixは、デフォルトの監視項目以外に「プラグイン」で監視したい項目を増やすことができます。Zabbix4.0.x監視設定に「memcached」「redis」「MariaDB」を追加します。(2019/03/02作成)

高負荷 Tomasz_Mikolajczyk / Pixabay

0.環境

$ cat /etc/system-release
Amazon Linux release 2 (Karoo)

$ zabbix_agentd --version | head -n 1
zabbix_agentd (daemon) (Zabbix) 4.0.3

※Zabbixエージェントが /zabbix-agent/ ディレクトリにインストールされていることを選定にしています。

1.memcached Zabbix-Agentd 監視

1)インストール

$ sudo curl https://raw.githubusercontent.com/tetsuwo/zabbix-memcached-template/master/src/zabbix_agentd.d/userparameter_memcached.conf > /etc/zabbix/zabbix_agentd.d/userparameter_memcached.conf

$ sudo curl https://raw.githubusercontent.com/tetsuwo/zabbix-memcached-template/master/src/bin/memcached-stat.py > /etc/zabbix/bin/memcached-stat.py
$ sudo chown zabbix:zabbix /etc/zabbix/bin/memcached-stat.py
$ sudo chmod +x /etc/zabbix/bin/memcached-stat.py

2)動作確認

$ zabbix_agentd -t memcached.stat[--host,localhost,--port,11211,--item,version]
memcached.stat[--host,localhost,--port,11211,--item,version] [t|1.4.15]

3)Zabbix側設定

{$MEMCACHED_HOST} … Agent から参照する Memcached のホスト
{$MEMCACHED_PORT} … Agent から参照する Memcached のポート番号

2.redis Zabbix 監視

0)README

Usage: https://github.com/rdvn/zabbix-templates/tree/master/redis

1)As root setup a cronjob:

* * * * * /usr/bin/redis-cli info > /tmp/redisstat

2)Add an user parameter to zabbix:

$ sudo vi /etc/zabbix/zabbix_agentd.d/userparameter_redis.conf
UserParameter=redis.stat[*],cat /tmp/redisstat | grep "$1:" | cut -d":" -f2

3.MariaDB Zabbix 監視

1)MariaDB 監視用ユーザの作成

$ mysql -uroot -p
> grant process on *.* to zabbixagent@localhost identified by 'PASSWORD';
> flush privileges;
> quit;

2)MariaDB サーバの状態を表示

$ mysqladmin status -uzabbixagent -p
Enter password:
Uptime: 605870  Threads: 30  Questions: 6345154  Slow queries: 14  Opens: 305  Flush tables: 1  Open tables: 299  Queries per second avg: 10.472

3)パスワードファイルの作成

$ sudo vi /etc/zabbix/zabbix_agentd.d/zabbix_my.cnf
$ sudo chown zabbix:zabbix /etc/zabbix/zabbix_agentd.d/zabbix_my.cnf
$ sudo chmod 600 /etc/zabbix/zabbix_agentd.d/zabbix_my.cnf

4)MariaDB動作確認

show global statusコマンド (Variable_nameは適宜変更)

$ echo "show global status where Variable_name='Slow_queries';" | mysql --defaults-extra-file=/etc/zabbix/zabbix_agentd.d/zabbix_my.cnf -N| awk '{print $2}'

mysql.ping の確認

$ mysqladmin --defaults-extra-file=/etc/zabbix/zabbix_agentd.d/zabbix_my.cnf ping| grep -c alive

バージョンの確認

$ mysql -V
mysql  Ver 15.1 Distrib 10.2.10-MariaDB, for Linux (x86_64) using  EditLine wrapper

5)ユーザパラメータファイルの修正

$ sudo vi /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf

UserParameter=mysql.status[*],echo "show global status where Variable_name='$1';" | mysql --defaults-extra-file=/etc/zabbix/zabbix_agentd.d/zabbix_my.cnf -N | awk '{print $$2}'
UserParameter=mysql.ping,mysqladmin --defaults-extra-file=/etc/zabbix/zabbix_agentd.d/zabbix_my.cnf ping 2>&1 | grep -c alive
UserParameter=mysql.version,mysql -V

6)Zabbix-Agentを再起動

$ sudo systemctl restart zabbix-agent

7)Zabbix動作確認

$ zabbix_get -s localhost -k mysql.ping
1

$ zabbix_get -s localhost -k mysql.version
mysql  Ver 15.1 Distrib 10.2.10-MariaDB, for Linux (x86_64) using  EditLine wrapper

$ zabbix_get -s localhost -k mysql.status[Com_begin]
1525269

$ zabbix_get -s localhost -k mysql.status[Slow_queries]
14

以上

About yoshimasa

埼玉県さいたま市在住、2男3女のパパです。Linux系の技術情報を中心にまとめています。1978年2月生まれ。