Zabbixの監視情報をGrafanaでグラフィカルなダッシュボードに!!

こんにちは、今回はAzure上のCentOS7にZabbixとGrafanaを導入し、監視情報からグラフィカルなダッシュボードを描写したいと思います。

Grafanaとは

ZabbixやInfluxDBなどをバックエンドとして情報を可視化するツールです。
公式サイトを見ていただくと、そのデザインが想像つくかと思います。

また提供されている拡張プラグインを導入することで、表示形式や取得情報を簡単に増やすことが出来ます。では早速、構築を始めてみましょう。

前提

今回はZabbixを構築したサーバにGrafanaを構築します。
まだ、Zabbixを構築されていない方は、以下記事をご参考ください。

AzureのCentOSにZabbix3.XをAnsibleで構築する

Grafana構築

構築するバージョンは 4.2.0 となります。
以降はroot権限で操作し、SELinuxは無効化にしています。

Grafanaインストール

Grafanaのインストール及び初期設定を実施します。

# wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-4.2.0-1.x86_64.rpm
# yum localinstall grafana-4.2.0-1.x86_64.rpm

設定に関しては後述で一部変更しますが、一旦はデフォルトとします。

Zabbix plugin for Grafana インストール

公式サイトを参考に Zabbix plugin for Grafana のインストールを実施します。

# grafana-cli plugins install alexanderzobnin-zabbix-app
installing alexanderzobnin-zabbix-app @ 3.3.0
from url: https://grafana.net/api/plugins/alexanderzobnin-zabbix-app/versions/3.3.0/download
into: /var/lib/grafana/plugins
? Installed alexanderzobnin-zabbix-app successfully
Restart grafana after installing plugins . <service grafana-server restart>
# systemctl restart grafana-server

Grafana連携用のZabbixユーザ作成

ZabbixのWebUIにアクセスし、Grafana連携用のZabbixユーザ(grafana)を作成します。
今回は全ホストグループに対しての読み取り権限のみを与えました。
[管理] > [ユーザ] > [ユーザの作成]

170428125927_001

Zabbixとの連携設定

WebブラウザからGrafanaのWebUIにアクセスします。

http://[ZabbixサーバのFQDNもしくはIPアドレス]:3000

初期ログインIDとパスワードは「admin」です。

20170427173441

「Enable now」をクリックします。

20170427173646

「Enable」をクリックします。

20170427173654

上部のアイコンをクリックし、プルダウンから「Data Sources」をクリックします。

20170427173729

「Add data source」をクリックします。

20170427173739

以下情報を入力します。

・Name:Zabbix (任意)
・Type:Zabbix
・Default:チェック

■Http settings
・Url:http://[ZabbixサーバIPアドレス or FQDN]/zabbix/api_jsonrpc.php
・Access:direct

■Zabbix API details
・Username:grafana (Grafana連携用のZabbixユーザ)
・Password:*******
・Trends:Enable

20170427173914

「Save & Test」をクリックします。
以下の様に表示されると成功です。

20170427173938

上部のアイコンをクリックし、プルダウンから「Dashboard」をクリックします。
Zabbix plugin for Grafana の標準Dashboard「Zabbix Sever Dashboard」を見ると情報が表示されていることがわかります。

20170427174100

あとは自由にダッシュボードを作成してみてください。

WebUIのURL変更

いまのURLだとWebUIにアクセスしづらいので、
Apacheに設定を追加し、WebUIのURLを以下の様に変更します。

【変更前】
http://[ZabbixサーバIPアドレス or FQDN]:3000

【変更後】
http://[ZabbixサーバIPアドレス or FQDN]/grafana

# vi /etc/httpd/conf.d/grafana.conf
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
ProxyRequests Off
ProxyPass /grafana http://127.0.0.1:3000
ProxyPassReverse  /grafana http://127.0.0.1:3000
# systemctl restart httpd

Grafanaの設定を変更します。

# vi /etc/grafana/grafana.ini
[server]
root_url = http://localhost:3000/grafana ※追加
# systemctl restart grafana-server

もし、Nginxを利用されている場合は、公式サイトに手順がありますのでご参考ください。

まとめ

今回はGrafanaを導入し、グラフィカルなダッシュボードを描写しました。
Grafanaでは、Zabbixでよくある線グラフや積算グラフだけではなく、円グラフや数値表示なども自由なサイズで描写することが可能ですので、システム毎に適した構成に組むことが出来ます。もしかすると障害の予兆をより早く気づけるかもしれません。
また既にご紹介したように、GrafanaはZabbixだけではなく、様々な情報ソースを可視化することができるので、是非利用しては如何でしょうか。

サイオステクノロジー株式会社 山田

Be the first to comment

コメント投稿

Your email address will not be published.


*