こんにちは、鯨井貴博@opensourcetechです。
今回は統合監視ツールであるZabbixの環境構築をし、
Zabbix上でLinux(CentOS)の監視を行ってみようと思います。
※ Zabbixの土台にはCentOS6.7(64ビット)を使用しています。
①apache(httpd)・MySQLのインストール
Zabbixのデータを格納するMySQLとWebブラウザからの操作に対応する為、
apache(httpd)とmysql-serverをインストールします。
yum -y install httpd mysql-server
②apache(httpd)・MySQLの起動
初期設定のままで構わないので、
apache(httpd)とmysql-serverを起動します。
service httpd start
service mysqld start
netstat -tanで起動確認。
TCP80と3306がListenになってます。
chkconfigで自動起動設定をしておきます。
chkconfig httpd on
chkconfig mysqld on
chkconfig --list | grep -E "(httpd|mysqld)"
※おまけ セキュリティの無効化(iptables/SELinux)
iptables -Fとsetenforce 0でセキュリティ無効化。
※必要に応じて、各々適切な設定をして下さい。
③Zabbixのインストール
いよいよZabbixをインストールする為、
まず/etc/yum.repos.dにレポジトリファイルを追加します。
rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm
上記rpmにより、zabbix.repoが追加されました。
追加したレポジトリを使用して、zabbixをインストールします。
yum -y install zabbix-server-mysql zabbix-web-mysql
また、zabbix-agentもインストールしておきます。
yum -y install zabbix-agent
④DB(MySQL)の設定
続いて、DB(MySQL)の設定を行います。
具体的にはDBへrootでログインし、
DB名:zabbix、ユーザー名:zabbixを作成します。
mysql -uroot -p(rootでログイン)
create database zabbix character set utf8 collate utf8_bin;(zabbixデータベースの作成)
show databases;(データベース作成の確認)
create user zabbix identified by 'password';(zabbixユーザーの作成)
show databases;
use mysql;(mysqlデータベースの選択)
show tables;(テーブル一覧表示)
select * from user where User = 'zabbix' ¥G;(zabbixユーザーの作成確認)
※「¥」はバックスラッシュです。
grant all privileges on zabbix.* to zabbix@localhost identified by '';
(zabbixユーザーにzabbixデータベースに対する全ての権限を付与)
quit;(終了)
⑤Zabbix-serverの設定
zabbixのスキーマなどのデータをインポートします。
cd /usr/share/doc/zabbix-server-mysql-2.4.6/create/
mysql -uroot zabbix < schema.sql
mysql -uroot zabbix < images.sql
mysql -uroot zabbix < data.sql
zabbix_server.confにDB(MySQL)接続に必要な情報を設定します。
vi /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=
※ご使用の環境に合わせて下さい。
zabbix-serverを起動します。
service zabbix-server start
chkconfig zabbix-server on
続いて、/etc/httpd/conf.d内のzabbix.confを編集します。
変更箇所は、以下の通り。
php_value date.timezone Asia/Tokyo
※ご使用環境に合わせて下さい。
apache(httpd)を再起動します。
service httpd restart
⑥Zabbixの初期設定
ブラウザよりzabbixへアクセスします。
http://zabbixのIPアドレス/zabbix
全ての項目が「OK」となっていれば、「Next」とします。
それ以外の場合、修正を行います。
DB(MySQL)への接続設定を入力し、
「Test connection」を実施し「OK」となれば次へ進みます。
OK以外の場合は、ここまでのいずれかの設定を見直すなどの対応を行います。
Zabbixサーバのホスト名やIPアドレスとポート番号を指定します。
※基本的にはデフォルトのままで大丈夫。
Summaryで各設定の確認をします。
設定が完了すると、
/etc/zabbix/web/zabbix.conf.phpが作成されます。
念のため、/etc/zabbix/web/zabbix.conf.phpを確認すると、
以下のようになっていました。
⑦Zabbix-serverへのログイン・日本語化
初期設定後、http://zabbix-serverのIPアドレス/zabbixへアクセスすると、
ログイン画面が表示されます。
初期設定であるUsername:Admin、Password:zabbixでログインします。
ログイン後、インターフェイスは英語で表示されますので、
日本語環境に変更します。
Administration > Users > Adminと辿って、
Languageを「Japanese(ja_JP」に変更し、「Update」とします。
ブラウザの画面を更新すると、日本語表示に変わります。
⑧Zabbixによる運用監視
設定 > ホストとたどるとホスト一覧が表示され、
初期状態では「Zabbix server(自分自身)」のみが表示されております
ステータスが「無効」となっているので「有効」にします。
しかし、まだzabbix-agentが起動していないので、
エージェントの状態が赤く点灯しています。
service zabbix-agent startとすることで、
エージェントの状態は緑に変化します。
⑨監視ホストの追加
監視ホストを追加する場合、
設定 > ホスト > ホストの作成 において、
ホストタグとテンプレートタグを設定します。
また、ホストには③を参照にして、zabbix-agentをインストールし、
zabbix-serverとの通信が出来るように設定・起動すれば完了です。
おまけ(グラフによる状況確認など)
監視データ > グラフとすれば、
該当ホストにおけるリソース状況が確認出来ます。
また、ダッシュボードからは障害等の情報が確認出来、
クリックすることで詳細を確認出来ます。
以上、Zabbixの簡単な使用方法でした。