統合監視システム Zabbix
サーバー、ネットワーク、アプリケーションを監視するためのソフトウェア Zabbix を導入する。
Zabbixはオープンソース(GPL)で提供されており、Unix系OSでは広く使用されている。
目的
サーバー、ネットワーク、アプリケーションを監視し、各ノードの情報収集、異常検知、障害/復旧通知を行う。
構築条件
構築機器
- 仮想サーバ SUN VirtualBox 4.0 で構築
作成環境
OS | CentOS 5.5 64bit版 |
サーバ作成条件
サーバIP | 192.168.0.10/24 |
ホスト名 | hogehogeServer |
user | hogehoge |
userpasswd | hogehogepass |
mysqlrootパスワード | mysqlpass |
mysqldb名 | アプリ名 |
mysqluser名 | アプリ名user |
mysqluserパスワード | アプリ名pass |
手順記入ルール
- コマンド行頭記号で 「$」はユーザ権限 「#」はスーパーユーザー権限 を表示
- コマンドが長くなる場合は、行末に「\」を記述し複数行に記述。
ファイル入手
サイト
- ZABBIX-JP
http://www.zabbix.jp/
今回インストールしたファイル
- ダウンロードサイト
http://www.zabbix.jp/modules/download1/
- インストールファイル(64bit)
http://www.zabbix.jp/binaries/zabbix/zabbix-1.6/rhel5/x86_64
- インストールファイル(32bit)
http://www.zabbix.jp/binaries/zabbix/zabbix-1.6/rhel5/i386
前準備
- CentOSインストール 実施
- yumリポジトリ設定 実施
- yumリポジトリ設定(独自) 実施 ★環境2:インタネットへのアクセス不可の場合
- LAMPサーバ構築 実施
yum登録
★サーバ環境にあわせて以下rpmのyumリポジトリ登録を実施
- http://www.zabbix.jp/binaries/zabbix/zabbix-1.6/rhel5/x86_64/
zabbix-1.6.9-3.el5.JP.x86_64.rpm
zabbix-agent-1.6.9-3.el5.JP.x86_64.rpm
zabbix-proxy-1.6.9-3.el5.JP.x86_64.rpm
zabbix-server-1.6.9-3.el5.JP.x86_64.rpm
zabbix-server-mysql-1.6.9-3.el5.JP.x86_64.rpm
zabbix-web-1.6.9-3.el5.JP.x86_64.rpm
zabbix-web-mysql-1.6.9-3.el5.JP.x86_64.rpm - http://www.zabbix.jp/binaries/relatedpkgs/rhel5Server/x86_64/
fping-2.4b2-16.el5.JP.x86_64.rpm
iksemel-1.2-13.el5.JP.x86_64.rpm
環境1:インターネットにアクセス可能
★以下サイト内の最新版リポジトリデータを確認。rpm入手はyumで実施
http://www.zabbix.jp/binaries/relatedpkgs/rhel4/i386/
- リポジトリデータ入手
# wget http://www.zabbix.jp/binaries/relatedpkgs/rhel4/i386/zabbix-jp-release-4-3.noarch.rpm
- リポジトリ登録
# rpm -Uvh zabbix-jp-release-4-3.noarch.rpm
- 確認
# ls -l /etc/yum.repos.d/
lrwxrwxrwx 1 root root 35 2月 9 22:24 zabbix-jp.repo -> /etc/alternatives/zabbix-jp-release
環境2:インタネットへのアクセス不可
★手順 yumリポジトリ設定(独自)#rpm にて独自リポジトリにrpmを登録
[今回実施手順]
- ユーザエリア「/home/hogehoge」にrpmファイルをアップ
- ファイルコピー
# cp zabbix* /home/yum/rpm/
# cp fping* /home/yum/rpm/
# cp iksemel* /home/yum/rpm/
- リポジトリ登録
# createrepo -v /home/yum/rpm/
環境3:イントラ内にリポジトリサーバ有り
★手順 yumリポジトリサーバ#server にてリポジトリサーバにrpmを登録
[今回実施手順(yumリポジトリサーバ側)]
- ユーザエリア「/home/hogehoge」にrpmファイルをアップ
- ファイルコピー
# cp zabbix* /var/www/html/yum/rpm/
# cp fping* /var/www/html/yum/rpm/
# cp iksemel* /var/www/html/yum/rpm/
- リポジトリ登録
# createrepo -v /var/www/html/yum/rpm/
yumリポジトリ登録確認
【Telnet】
- rootでログイン
$ su パスワード:
- yumキャッシュクリア
# yum clean all
- 確認
# yum list install zabbix zabbix-agent zabbix-server zabbix-server-mysql zabbix-web zabbix-web-mysql
zabbix.x86_64 1.6.9-3.el5.JP zabbix-jp zabbix-agent.x86_64 1.6.9-3.el5.JP zabbix-jp zabbix-server.x86_64 1.6.9-3.el5.JP zabbix-jp zabbix-server-mysql.x86_64 1.6.9-3.el5.JP zabbix-jp zabbix-web.x86_64 1.6.9-3.el5.JP zabbix-jp zabbix-web-mysql.x86_64 1.6.9-3.el5.JP zabbix-jp
インストール
(1)インストール
- インストール
# yum install zabbix zabbix-agent zabbix-server zabbix-server-mysql zabbix-web zabbix-web-mysql
:
Complete!
MySQLデータベース作成
(1)MySQL データベース作成
【telnet】
- MySQLにログイン
# mysql -u root -pmysqlpass
Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 5.0.77 Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
- 「zabbix」データベース作成
mysql> create database zabbix ;
Query OK, 1 row affected (0.00 sec)
- 「moodle」ユーザ作成
mysql> grant all privileges on zabbix.* to zabbixuser@localhost identified by 'zabbixpass';
Query OK, 0 rows affected (0.00 sec)
- 終了
mysql> exit
Bye #
- データベース接続に問題が無いか確認
# mysql -u zabbixuser -pzabbixpass zabbix
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 Server version: 5.0.77 Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
- 終了
mysql> exit
Bye #
(2)初期設定データコピー
- ZABBIXの初期データベースをインポート
# mysql -uroot -pmysqlpass zabbix < /usr/share/doc/zabbix-server-1.6.9/schema/mysql.sql
# mysql -uroot -pmysqlpass zabbix < /usr/share/doc/zabbix-server-1.6.9/data/data.sql
# mysql -uroot -pmysqlpass zabbix < /usr/share/doc/zabbix-server-1.6.9/data/images_mysql.sql
初期設定
- apache再起動
# /etc/rc.d/init.d/httpd restart
httpd を停止中: [ OK ] httpd を起動中: [ OK ]
起動確認
- http://192.168.0.10/zabbix/ アクセス以下画面が表示
WEB設定
- 「1. Introduction」で「Next」押下
- 「2. Licence Agreement」で「I agree」チェック後「Next」押下
- 「3. Check of pre-requisites」で全てOK確認後「Next」押下
- 「4. Configure DB connection」で「user:zabbixuser」「password:zabbixpass」設定後「Test connection」押下、OK確認後「Next」押下
- 「5. ZABBIX server details」で「Next」押下
- 「6. Pre-Installation Summary」で「Next」押下
- 「7. Install」で「Next」押下
- 「8. Finish」で「Finish」押下
※初期ログイン確認
Login name | admin |
Password | zabbix |
起動登録実施
zabbix_server起動
- zabbix_server.conf編集
# vi /etc/zabbix/zabbix_server.conf
- 以下のとおり編集
# Database user DBUser=zabbix
↓DBUser=zabbixuser
#DBPassword=<password>
↓DBPassword=zabbixpass
- zabbix起動
# /etc/rc.d/init.d/zabbix-server start
Starting zabbix server: [ OK ]
- 自動起動登録
# chkconfig zabbix-server on
- 自動起動登録確認
# chkconfig --list zabbix-server
zabbix-server 0:off 1:off 2:on 3:on 4:on 5:on 6:off
zabbix_agentd起動
- zabbix_agentd.conf編集
# vi /etc/zabbix/zabbix_agentd.conf
- 以下のとおり編集
Hostname=ZABBIX Server
↓Hostname=hogehogeServer
- zabbix-agent起動
# /etc/rc.d/init.d/zabbix-agent start
Starting zabbix agent: [ OK ]
- 自動起動登録
# chkconfig zabbix-agent on
- 自動起動登録確認
# chkconfig --list zabbix-agent
zabbix-server 0:off 1:off 2:on 3:on 4:on 5:on 6:off
他サーバ(Linux)でのagent設定
yum登録
★サーバ環境にあわせて以下rpmのyumリポジトリ登録を実施
- http://www.zabbix.jp/binaries/zabbix/zabbix-1.6/rhel5/x86_64/
zabbix-agent-1.6.9-3.el5.JP.x86_64.rpm
zabbix-1.6.9-3.el5.JP.x86_64.rpm
手順は上記参照
インストール
- 確認
# yum list install zabbix-agent
zabbix-agent.x86_64 1.6.9-3.el5.JP zabbix-jp
- インストール実行
# yum install zabbix-agent
:
Complete!
設定
- zabbix_agentd.conf編集
# vi /etc/zabbix/zabbix_agentd.conf
・以下修正
Server=127.0.0.1 Hostname=Zabbix Server ListenIP=127.0.0.1
↓
Server=192.168.0.10 ←zabbixサーバアドレス Hostname=zabbix_server ←zabbixサーバホスト名 ListenIP=192.168.0.20 ←自サーバアドレス
起動
- 起動
# /etc/rc.d/init.d/zabbix-agent start
Starting zabbix agent: [ OK ]
- 自動起動登録
# chkconfig zabbix-agent on
- 自動起動登録確認
# chkconfig --list zabbix-agent
zabbix-agent 0:off 1:off 2:on 3:on 4:on 5:on 6:off
他サーバ(Windows)でのagent設定
ファイルインストール
- 以下サイトよりファイル入手
http://www.zabbix.jp/modules/download1/
zabbix_agent-1.6.9-3.JP_installer.exe
- ファイルインストール
zabbix_agent-1.6.9-3.JP_installer.exeをインストール実行
設定
- zabbix_agentd.confをいかのとおり修正
C:\Program Files\ZABBIX Agent\zabbix_agentd.conf
Server=NONE Hostname=kvmwinsv2003 #ListenIP=127.0.0.1
↓
Server=192.168.0.10 ←zabbixサーバアドレス Hostname=zabbix_server ←zabbixサーバホスト名 ListenIP=192.168.0.20 ←自サーバアドレス
- サービス再起動
「スタート」→「管理ツール」→「サービス」で
「ZABBIX Agent」を選択
「操作」→「再起動実施」
遭遇したトラブル
''http://192.168.0.10/zabbix/で設定画面が出ない''
問題:
http://192.168.0.10/zabbix/で設定画面が出ず、画面が見つからないになってしまう。
原因:
apcheサーバの再起動手順漏れ
他サーバの監視が出来ない
問題:
zabbixサーバで他サーバのエージェントが「不明」となり、監視情報が取得できない。
原因:
他サーバ側の、zabbix_agentd.confのホスト名設定漏れ。
zabbixサーバIPとzabbixサーバホストが一致しないと通信できない模様。
Windowsサーバの監視が出来ない
問題:
zabbixサーバで他サーバ(Windows)のエージェントが「不明」となり、監視情報が取得できない。
原因:
ファイヤーウォール設定でportが遮断されている。
port10050を例外登録することにより監視可能
謝辞
テキスト作成にあたり、以下サイトを参考にさせて頂きました。ありがとうございます。
http://www.zabbix.jp/modules/bwiki/index.php?ZABBIX%A4%CE%A5%A4%A5%F3%A5%B9%A5%C8%A1%BC%A5%EB
http://ys.blogsite.org/centos/centos5-4azabbix1-8aaafaafafaf/
http://ys.blogsite.org/centos/centos5-5azabbix1-8-2aaafaafafaf/
http://oton28.blog111.fc2.com/blog-entry-18.html