|
|
File last modified 2002/11/23 18:40
Database Support(MySQL)
今回はnagiosのデータベースサポートを有効にします。
現バージョンではデータベースサポートといっても
ログを全部データベースに書き出すわけではないので、
あんまり役に立つとは思えませんが(^^;
今後のバージョンアップに期待したいと思います。
まず、DBが使えるようにnagiosのconfigureから再インストールします。
バージョンnagios-1.0b6にてのインストール。
MySQLがシステムで稼動していることが前提です。
参考:solarisでのMySQLのインストール
MySQLのデフォルトでのインストール先は、
ライブラリファイルは/usr/local/mysql/lib/mysql
インクールドファイルは/usr/local/mysql/include/mysql
configure & make
$ LDFLAGS="-R/usr/local/lib -R/usr/local/mysql/lib/mysql" \
> ./configure --with-command-grp=nagiocmd --with-gd-lib=/usr/local/lib \
> --with-gd-inc=/usr/local/include --with-mysql-lib=/usr/local/mysql/lib/mysql \
> --with-mysql-inc=/usr/local/mysql/include/mysql --with-mysql-xdata
このままmakeするとxdata以下のコンパイルに失敗したので、
xdataディレクトリにある
xrddb.c
xcddb.c
xdddb.c
xeddb.c
xsddb.c
各ファイルの
#include <mysql/mysql.h>
#include <mysql/errmsg.h>
の部分を
#include <mysql.h>
#include <errmsg.h>
に変更
$ make all
$ su
# make install install-init install-commandmode install-config
データベースの作成
# /usr/local/mysql/bin/mysql -u <mysql root user> -h localhost -p
> create database nagios;
テーブルの作成
# cd contrib/database
# /usr/local/mysql/bin/mysql -u <mysql root user> -h localhost -p nagios <./create_mysql
DBユーザーの作成
ユーザー名とパスワードは適宜変更してください
# /usr/local/mysql/bin/mysql -u <mysql root user> -h localhost -p
> INSERT INTO mysql.user SETHost = 'localhost',
> User = 'nagios', Password = PASSWORD( 'password' ) ;
> GRANT Select , Insert , Update ,
> Delete ON `nagios` . * TO 'nagios'@ 'localhost' ;
resource.cfg編集
# vi /usr/local/nagios/etc/resource.cfg
# DB STATUS DATA
xsddb_host=localhost
xsddb_port=3306
xsddb_database=nagios
xsddb_username=nagios
xsddb_password=password
xsddb_optimize_data=1
xsddb_optimize_interval=3600
# DB COMMENT DATA
xcddb_host=localhost
xcddb_port=3306
xcddb_database=nagios
xcddb_username=nagios
xcddb_password=password
xcddb_optimize_data=1
# DB DOWNTIME DATA
xdddb_host=localhost
xdddb_port=3306
xdddb_database=nagios
xdddb_username=nagios
xdddb_password=password
xdddb_optimize_data=1
# DB RETENTION DATA
xrddb_host=localhost
xrddb_port=3306
xrddb_database=nagios
xrddb_username=nagios
xrddb_password=password
xrddb_optimize_data=1
ここで実はハマったのですが、
resource.cfgのパーミッションが必ず600でないとプログラムが動きません。
# chmod 600 /usr/local/nagios/etc/resource.cfg
# chown nagios:nagios /usr/local/nagios/etc/resource.cfg
cgi.cfg編集
# vi /usr/local/nagios/etc/cgi.cfg
# DG EXTENDED DATA
xeddb_host=localhost
xeddb_port=3306
xeddb_database=nagios
xeddb_username=nagios
xeddb_password=password
# DB STATUS DATA (Read-Only For CGIs)
xsddb_host=localhost
xsddb_port=3306
xsddb_database=nagios
xsddb_username=nagios
xsddb_password=password
# DB COMMENT DATA (Read-Only For CGIs)
xcddb_host=localhost
xcddb_port=3306
xcddb_database=nagios
xcddb_username=nagios
xcddb_password=password
# DB DOWNTIME DATA (Read-Only For CGIs)
xdddb_host=localhost
xdddb_port=3306
xdddb_database=nagios
xdddb_username=nagios
xdddb_password=password
以上の設定が完了したら設定ファイルを確認し、起動してみます。
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
# /etc/init.d/nagios start
無事起動すると/usr/local/nagios/var/nagios.logにPIDが書き込まれます。
Nagios 1.0b6 starting... (PID=xxxx)
Finished daemonizing... (New PID=xxxx)
[戻る]
|