nagiosでフリーな監視をしてみよう!~nagiosの構築(5)~
nagiosでフリーな監視をしてみよう!~nagiosの構築(5)~
NDOUtilsについて
今回は、Nagiosの監視結果をMySQLなどのデータベースに格納するNDOUtilsについてです。
NDOUtilsとは、Nagiosで扱う情報をMySQL等のデータベースで管理するためのツールです。
NDOUtilsは、次の4つのデーモン・モジュールで構成されます。
・Nagios
・NDOMODブローカーモジュール(NagiosがNDO2DBを使用する為のモジュール)
・NDO2DB(Nagiosとデータベースのやりとりを仲介するデーモン)
・データベース(MySQL, PostgreSQL)
NDOUtilsは、あくまでNagiosからのアウトプットしか扱えません。
ということは、監視結果ファイルをファイルではなくて、MySQLに格納できることになります。
設定情報をMySQLに登録しておけば、それをNagiosに反映してくれるというわけではなく、あくまで、ファイルに設定情報を記載しておく必要があります。
しかし、設定情報をMySQLに出力する機能はあり、他にもログなどのNagiosの情報がすべてMySQLに出力できますので、
NDOUtilsが格納したMySQLの情報を見れば、Nagiosの動作状況についてはすべて把握することが可能となります。
また、NDOUtilsの重要な機能として、複数のNagiosの動作状況を1つのMySQLデータベースに集約することも可能となります。
では、まず、mysqlのインストールを行っていきます。
mysqlのインストール
まずは、データベースであるmysqlのインストールから紹介していきます。
(1)あらかじめ必要なツールを、yumコマンドでインストールしておきます。
# yum install -y cmake ncurses-devel
(2)MySQLをデーモンで起動するためのグループとユーザーを作成し、パスワードを設定します。
# groupadd -g 27 mysql # useradd -u 27 -g mysql -d /usr/local/mysql mysql # passwd mysql ユーザー mysql のパスワードを変更。 新しいパスワード: よくないパスワード: 短かすぎます よくないパスワード: 簡単すぎます 新しいパスワードを再入力してください: passwd: 全ての認証トークンが正しく更新できました。
※パスワードは、ここでは「mysql」と入力していますが、適時環境に合わせてください。
(3)「/usr/local/src」ディレクトリに移動し、wgetコマンドでソースコードをダウンロードします。
# cd /usr/local/src # wget ftp://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.6/mysql-5.6.21.tar.gz
・phpの公式サイト
URL:「http://www-jp.mysql.com/」
[styled_images width=”598px” height=”368px”]
[image title=”1″]https://techpjin.sakura.ne.jp/techpjin_new/wp-content/uploads/2014/11/nagios5-01.png[/image]
[/styled_images]
[clearboth]
(4)ソースコードを解凍し、解凍したディレクトリに移動します。
# tar xfz mysql-5.6.21.tar.gz # cd mysql-5.6.21
(5)cmakeを実行します。
# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DWITH_EXTRA_CHARSETS=all -DDEFAULT_COLLATION=utf8_general_ci -DWITH_PIC=1
オプション | 説明 |
---|---|
-DCMAKE_INSTALL_PREFIX | インストール先の指定 |
-DDEFAULT_CHARSET | デフォルトのキャラクタセットを指定 |
-DWITH_EXTRA_CHARSETS | 追加の文字セット「all」で指定 |
-DDEFAULT_COLLATION | デフォルトの文字セットを「utf8」で指定 |
-DWITH_PIC=1 | 共有ライブラリ使用を指定 |
(6)pacoに登録しつつ、make installを実行します。
# paco -D make install
mysqlの初期設定
mysqlの初期設定を紹介していきます。適時環境に合わせて設定を行ってください。
(1)ディレクトリの所有者を変更します。
# chown -R mysql.mysql /usr/local/mysql
(2)MySQLの環境変数PATHを設定します。
# echo "export MYSQL_HOME=/usr/local/mysql" > /etc/profile.d/mysqld.sh # echo "export PATH=$MYSQL_HOME/bin:$PATH" >> /etc/profile.d/mysqld.sh # source /etc/profile.d/mysqld.sh # echo $PATH /usr/local/mysql/bin:/usr/lib/qt-3.3/bin:/usr/local/apache2/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin # mysql -V mysql Ver 14.14 Distrib 5.6.21, for Linux (i686) using EditLine wrapper
(3)起動スクリプトの設定を行います。
# cp /usr/local/src/mysql-5.6.21/support-files/mysql.server /etc/init.d/mysqld # chmod a+x /etc/init.d/mysqld # chkconfig --add mysqld # chkconfig --list mysqld mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
(4)起動スクリプトを変更します。
# vi /etc/init.d/mysqld
※適時環境に合わせて設定してください。
・「mysqld」ファイルの変更前の内容
# If you change base dir, you must also change datadir. These may get # overwritten by settings in the MySQL configuration files. basedir= datadir=
・「mysqld」ファイルの変更後の内容
# If you change base dir, you must also change datadir. These may get # overwritten by settings in the MySQL configuration files. basedir=/usr/local/mysql datadir=/usr/local/mysql/data
(5)mysqlの設定ファイルをコピーします。
# cp /usr/local/src/mysql-5.6.21/support-files/my-default.cnf /etc/my.cnf
(6)mysqlの設定ファイルを設定値を追加します。
# vi /etc/my.cnf
・追加した後の内容
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES skip-character-set-client-handshake character-set-server = utf8 collation-server = utf8_general_ci init-connect = SET NAMES utf8 [client] default-character-set=utf8 [mysql] default-character-set=utf8
(7)共有ライブラリに「/usr/local/mysql/lib」を追加します。
# echo "/usr/local/mysql/lib" > /etc/ld.so.conf.d/mysql.conf # ldconfig
(8)データベースを初期化します。
# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
mysqlの起動と確認
mysqlの起動と確認、それから、rootのパスワードの設定を紹介します。
(1)mysqlを起動します。
# service mysqld start Starting MySQL..... [ OK ]
(2)アクセスできるかをmysqlコマンドで確認します。
# mysql -u root Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 1 Server version: 5.6.21 Source distribution Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or 'h' for help. Type 'c' to clear the current input statement. mysql>
※mysqlを抜けるには、quitで終了します。
mysql> quit Bye #
(3)rootユーザーにパスワードを設定します。
# mysqladmin -u root password 'password'
※シングルクォーテーションに囲まれているのが設定したパスワードとなります。