Zabbixを使用してMySQLを監視する方法

このチュートリアルでは、Zabbix 4を使用してMySQLを監視するために必要なすべての手順を説明します。

このチュートリアルはUbuntu 18.04でテストされました。

このチュートリアルはZabbix 4.0.3でテストされました。

1. MySQLユーザーをZabbixに設定します

ZabbixはMySQLサーバーにアクセスしてデータベース監視を実行するためのアカウントを必要とします。

MySQLデータベースサーバーで、Zabbixのアカウントを作成します。

Zabbixユーザーに、すべてのMySQLデータベースに対する使用権限を付与します。

CREATE USER 'zabbix_monitor'@'%' IDENTIFIED BY 'kamisama123';
GRANT USAGE ON *.* TO 'zabbix_monitor'@'%';
FLUSH PRIVILEGES;
quit;

作成されたMySQLのユーザー名とパスワードをメモしてください。

2. MySQLサーバーにZabbixエージェントをインストールする

それでは、MySQLサービスを実行しているコンピュータにZabbixエージェントをインストールする必要があります。

Linuxコンソールで、以下のコマンドを使用して必要なパッケージをインストールします。

# groupadd zabbix
# useradd -g zabbix -s /bin/bash zabbix
# apt-get update
# apt-get install build-essential libpcre3-dev

Zabbixインストールパッケージをダウンロードしてください。

# mkdir /downloads
# cd /downloads
# wget https://ufpr.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.0.3/zabbix-4.0.3.tar.gz

Zabbixインストールパッケージを解凍し、Zabbixエージェントをコンパイルしてインストールします。

# tar -zxvf zabbix-4.0.3.tar.gz
# cd zabbix-4.0.3/
# ./configure --enable-agent
# make
# make install

Zabbixパッケージに含まれているスタートアップスクリプトをコピーします。

# cd /downloads/zabbix-4.0.3/
# cp misc/init.d/debian/zabbix-agent /etc/init.d/

システム上のzabbix_agentd.conf構成ファイルの場所を見つけます。

# updatedb
# locate zabbix_agentd.conf
# vi /usr/local/etc/zabbix_agentd.conf

これが私たちの設定の前の、元のファイルです。

LogFile=/tmp/zabbix_agentd.log
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix server

これが私たちの設定による新しいファイルです。

LogFile=/tmp/zabbix_agentd.log
Server=127.0.0.1,200.200.200.200
ServerActive=200.200.200.200
Include=/usr/local/etc/zabbix_agentd.conf.d/

この例では、ZabbixエージェントはZabbixサーバ200.200.200.200からの接続を許可するように設定されています。

IPアドレスが200.200.200.200のZabbixサーバーは、このエージェントからの情報の要求と受信を許可されています。

Localhost 127.0.0.1は、エージェントに対して情報を要求および受信することを許可されています。

ディレクトリzabbix_agentd.conf.dを作成します。

# mkdir /usr/local/etc/zabbix_agentd.conf.d -p

userparameter_mysql.confという名前のファイルをZabbixインストールパッケージからzabbix_agentd.conf.dディレクトリにコピーします。

# cd /downloads/zabbix-4.0.3/conf/zabbix_agentd
# cp userparameter_mysql.conf /usr/local/etc/zabbix_agentd.conf.d/

必要なZabbixエージェントのMySQL認証情報ファイルを作成します。

Zabbixエージェントはこの情報を使用してMySQLサーバーに接続します。

# mkdir /var/lib/zabbix -p
# vi /var/lib/zabbix/.my.cnf

これが私たちの設定です。

[client]

user = zabbix_monitor
password = kamisama123
host = localhost

この例では、ZabbixエージェントはローカルホストにインストールされているMySQLサービスを監視します。

Zabbixエージェントを再起動してください。

# /etc/init.d/zabbix-agent restart

3. ZabbixモニターMySQL

それでは、Zabbixサーバーダッシュボードにアクセスし、MySQLを実行しているLinuxコンピューターをホストとして追加する必要があります。

ブラウザを開き、WebサーバのIPアドレスと/ zabbixを入力します。

この例では、ブラウザに次のURLが入力されています。

•http://200.200.200.200/zabbix

ログイン画面で、デフォルトのユーザ名とデフォルトのパスワードを使用します。

・デフォルトのユーザ名:Admin
•デフォルトパスワード:zabbix

Zabbix Login

ログインが成功すると、Zabbixダッシュボードに送信されます。

Zabbix Dashboard

ダッシュボード画面で、[設定]メニューにアクセスして[ホスト]オプションを選択します。

Zabbix menu

画面の右上にある[Create host]ボタンをクリックします。

Zabbix Create Host

以下の情報を入力してください。

•ホスト名 - MySQLを実行しているLinuxサーバーを識別するためのホスト名を入力します。
•表示ホスト名 - ホスト名を繰り返します。
•グループ - 類似のデバイスを識別するためのグループの名前を選択します。
•エージェントインターフェース - LinuxサーバーのIPアドレスを入力します。

これが、設定前の元の画像です。

Zabbix Add Host

これが私たちの設定による新しいイメージです。

Zabbix MySQL Host

次に、ホストを特定のネットワークモニタテンプレートに関連付ける必要があります。

デフォルトでは、Zabbixにはさまざまなモニタリングテンプレートが付属しています。

画面上部の[Templates]タブにアクセスします。

「選択」ボタンをクリックして、という名前のテンプレートを見つけます。Template DB MySQL

Zabbix Template DB MySQL

追加オプションをクリックします。

追加ボタンをクリックしてください。

数分後、Zabbixダッシュボードに初期結果が表示されます。

あなたの設定をテストするために、MonitoringメニューにアクセスしてGraphsオプションをクリックしてください。

Zabbix Graphs Menu

画面の右上で、ALLという名前のグループを選択します。

MySQLコンピュータのホスト名を選択してください。

MySQL Operationsという名前のグラフを選択します。

Zabbix MySQL Graph

CPU使用率のグラフィックを見ることができるはずです。

Zabbix MySQL Graph Example

おめでとうございます。 MySQLを監視するようにZabbixサーバを設定しました。