その他
    ホーム 技術発信 DoRuby 監視ツール Nagios

    監視ツール Nagios

    この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。

    他のメンバーがすでに「munin」や「cacti」について
    記事を投稿していますので、私は「nagios」について書いてみたいと思います。

    ■nagiosとは?
    ネットワーク・サーバ監視のためのアプリケーションソフト。
    オープンソースで開発をされ、自由に使用できる。

    また各種プラグインも豊富であり
    機器の生死確認以外にも、機器のリソース(memory使用量やHDD使用量など)についても
    監視ができるなかなかの優れものです。

    □入手先
    Nagiosの公式HP
    http://www.nagios.org/

    他にも「yum」や「apt」でインストールが出来るようです。
    今まで、centOSやdebianの環境で動くnagiosサーバを見たことありますが
    ソースからコンパイルした場合とパッケージ管理からインストールした時の違いや
    バージョンによるデフォルトに用意されているコンフィグファイルの違いなど
    それぞれ違いがありますので、複数台用意する際は注意が必要です。



    ■インストールについて
     OS        =    CentOS 5.3 (selinuxは今回停止をしています)

     nagiosの種類    =    nagios-3.0.6 (執筆時の最新安定版)
     

    □必要なモジュールやソフトを確認

    <参照>
    http://nagios.sourceforge.net/docs/3_0/about.html#requirements
    1. A web server (preferrably Apache)
    2. Thomas Boutell’s gd library version 1.6.3 or higher (required by the statusmap and trends CGIs)


    「1」のwebサーバについては当たり前というところでしょう。
    その他に「gd」を必要とするようですのでインストールされいなければ
    インストールをしておきます。

    例)
    # yum -y install httpd gd gd-devel

    また、この他にもソースをコンパイルする際にCのコンパイラが必要となりますので
    「gcc」あたりもインストールされていなければ、インストールをしておきます。

    例)
    # yum -y install gcc glibc glibc-common


    □インストールを開始
    ・nagiosユーザの追加、パスワードの設定

    useradd -m nagios
    passwd nagios


    ・nagiosの制御に関係するグループを追加、ユーザーの追加を行う

    groupadd nagcmd
    usermod -a -G nagcmd nagios
    usermod -a -G nagcmd apache(webサーバの実行ユーザ!)


    ・ソフトとプラグインをダウンロードしてくる
    cd /usr/local/src/
    wget  http://osdn.dl.sourceforge.net/sourceforge/nagios/nagios-3.0.6.tar.gz
    wget http://osdn.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.11.tar.gz


    ・nagiosのコンパイル・インストール
    tar zxvf nagios-3.0.6.tar.gz
    cd nagios-3.9.6
    ./configure –with-command-group=nagcmd
    make all
    make install
    make install-init        (起動スクリプトのインストール)
    make install-config        (コンフィグファイルのインストール)
    make install-commandmode    (各種コマンドのインストール)
    make install-webconf        (webサーバ向けのコンフィグをインストール)


    ・ベーシック認証用のパスワードファイルを作成
    htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
    (パスワードを聞かれるので入力をする。)


    ■プラグインのインストール
    監視の際に使うコマンドが定義されたプログラムファイルをインストールします。

    ・ソフトとプラグインをダウンロードしてくる
    cd /usr/local/src/
    wget http://osdn.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.11.tar.gz


    ・プラグインのコンパイル・インストール
    tar zxvf nagios-plugins-1.4.11.tar.gz
    cd nagios-plugins-1.4.11
    ./configure –with-nagios-user=nagios –with-nagios-group=nagios
    make
    make install


    これだけ。
    あとは「/usr/local/nagios/libexec/」に「check-***」がという実行ファイルが大量にあれば成功。


    ■nagiosの起動
    ・ウェブサーバを再起動をする(省略)

    ・コンフィグファイルの構文にミスがないか、確認を行う
    /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

    errorやwarningが「0」であればOK。
    もしもおかしい場所があれば教えてくれるので、大変便利なコマンドです!

    ・nagiosの起動
    /etc/init.d/nagios start


    http://??.????.??/nagios/
    アクセスして確認してみましょう!


    ———————–

    基本的なnagiosのインストールは以上です。
    このほか、nagiosのコマンドにPATHを通したり
    「chkconfig」コマンドを使用、naigosの自動起動の設定など
    行った方が良いでしょう。

    また、今回はselinuxは停止した環境で構築を行いましたが
    selinuxを使用されている場合

    chcon -R -t httpd_sys_content_t /usr/local/nagios/sbin/
    chcon -R -t httpd_sys_content_t /usr/local/nagios/share/

    このような感じで、設定をしておく必要があるかと思われます。