端くれプログラマの備忘録 Nagios [Nagois] CentOS 6.5へインストールする

[Nagois] CentOS 6.5へインストールする

ウェブサイトの稼動監視にオープンソースの監視システムであるNagiosの利用を考え中。とりあえずローカルでVagrantベースのCentOS 6.5の環境にインストールして触ってみたい。

> cd c:\temp\centos6.5-lamp
> vagrant up
> ssh 127.0.0.1:2222

手っ取り早くリポジトリからインストールできないか探す。

$ yum info nagios
Error: No matching Packages to list
$ yum info --enablerepo=remi nagios
Error: No matching Packages to list
$ yum info --enablerepo=epel nagios
Available Packages
Name        : nagios
Arch        : x86_64
Version     : 3.5.1
Release     : 1.el6
Size        : 1.2 M
Repo        : epel
Summary     : Nagios monitors hosts and services and yells if somethings breaks
URL         : http://www.nagios.org/
License     : GPLv2
Description : Nagios is a program that will monitor hosts and services on your
            : network.  It has the ability to send email or page alerts when a
            : problem arises and when a problem is resolved.  Nagios is written
            : in C and is designed to run under Linux (and some other *NIX
            : variants) as a background process, intermittently running checks
            : on various services that you specify.
            :
            : The actual service checks are performed by separate "plugin" programs
            : which return the status of the checks to Nagios. The plugins are
            : available at http://sourceforge.net/projects/nagiosplug.
            :
            : This package provides the core program, web interface, and documentation
            : files for Nagios. Development files are built as a separate package.

公式バージョン履歴によると最新版は4.1.1なので、3.5.1だとかなり古い。

Nagios Core 4.x Version History – Nagios
https://www.nagios.org/projects/nagios-core/history/4x/

リポジトリからの取得は諦めて、公式ドキュメントの手順に従ってインストールする。

公式ドキュメント
Nagios Core Documentation – Table Of Contents
https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/4/en/toc.html

Nagios Coreのシステム要件

公式ドキュメントからシステム要件を確認しておく。

System Requirements – About Nagios Core
https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/4/en/about.html#requirements

  • Linuxが稼動するネットワーク接続されたマシン
  • Cコンパイラ

Nagios Coreに含まれるCGIを使う場合には以下も必要。

  • ウェブサーバー (Apache推奨)
  • GDライブラリ 1.6.3以降

インストール手順

公式ドキュメントのインストール手順に従う。

Nagios Quickstart Installation Guides
https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/4/en/quickstart.html

Prerequisites (事前準備)

必要なソフトをインストール

  • Apache
  • PHP
  • GCCコンパイラ
  • GD開発ライブラリ
$ sudo yum install httpd php
$ sudo yum install gcc glibc glibc-common
$ sudo yum install gd gd-devel

1) Create Account Information (アカウント情報の作成)

ユーザ nagios を作成してパスワードを設定する。

$ su -l
# useradd -m nagios
# passwd nagios

Webインタフェース経由で外部コマンド発行を許可するグループ nagcmd を作成して、ユーザnagiosとapacheを追加する。

# groupadd nagcmd
# usermod -a -G nagcmd nagios
# usermod -a -G nagcmd apache

2) Download Nagios and the Plugins (Nagiosとプラグインのダウンロード)

ダウンロード先ディレクトリを作成する。

$ mkdir ~/downloads
$ cd ~/download

NagiosとNagiosプラグインのソースコードをダウンロードする。

$ wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-4.0.8.tar.gz
$ wget http://www.nagios-plugins.org/download/nagios-plugins-2.0.3.tar.gz

3) Compile and Install Nagios (Nagiosのコンパイルとインストール)

ソースコードを解凍する。

$ tar xzf nagios-4.0.8.tar.gz
$ cd nagios-4.0.8

ユーザグループ名を添えて、設定スクリプトを実行する。

$ ./configure --with-command-group=nagcmd

ビルドする。

$ make all

インストールする。

$ sudo make install
$ sudo make install-init
$ sudo make install-config
$ sudo make install-commandmode

4) Customize Configuration (設定のカスタマイズ)

サンプルの設定ファイルを編集して、アラート送信先のメールアドレスを設定しておく。

$ vi /usr/local/nagios/etc/objects/contacts.cfg

5) Configure the Web Interface (Webインターフェースの設定)

Apacheのconf.dディレクトリにNagiosのウェブ設定ファイルをインストールする。

$ sudo make install-webconf

ユーザ nagiosadmin を作成する。

$ sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Apacheを再起動する。

$ sudo service httpd restart

6) Compile and Install the Nagios Plugins (Nagiosプラグインのコンパイルとインストール)

Nagiosプラグインのソースコードを解凍する。

$ cd ~/downloads
$ tar xzf nagios-plugins-2.0.3.tar.gz
$ cd nagios-plugins-2.0.3

コンパイルしてインストールする。

$ ./configure --with-nagios-user=nagios --with-nagios-group=nagios
$ make
$ sudo make install

7) Start Nagios (Nagiosの起動)

自動起動を設定する。

$ sudo chkconfig --add nagios
$ sudo chkconfig nagios on

Nagiosのサンプル設定ファイルをベリファイする。

$ sudo /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

設定ファイルにエラーが無ければ Nagiosを起動する。

$ sudo service nagios start

8) Modify SELinux Settings (SELinuxの設定変更)

Fedoraの場合に限る。今回は必要なし。

9) Login to the Web Interface (Webインタフェースへのログイン)

Nagiosのウェブインターフェースにアクセスする。

http://localhost/nagios/

Basic認証を求められるので、5)の手順で作成したアカウントでログインする

  • ユーザ名: nagiosadmin
  • パスワード: 自分が設定したパスワード

動いた。

Nagios-Core1