"jm555"のブログ

Microsoft Azureに関する技術情報を中心に書きます!一個人の見解に基づいた内容であり、Microsoft社の公式見解ではありません。

Nagios 4.3.4 on Azure - (1)監視サーバーのインストール編

OSSを使った監視サーバー on Azure の第2弾は、Nagios にします。

なぜ、Nagios を取り上げることにしたのか?それは、AzureとNagiosの組み合わせに関するドキュメントがあまりにも少ないと感じたからです。


ちなみに、Nagios on Ubuntu については、GitHub にもクイックテンプレートが提供されているので、こちらも活用してみてください。

 

github.com

 

 

上記テンプレートでは、Nagios Coreや Nagios Pluginsのバージョンが最新では無いこともあって、今回は、第1弾のZabbixと同様に、Azure 仮想マシンに最新バージョンでインストールしてみます。

 

[Nagiosサーバー (Azure仮想マシン) の事前準備]

f:id:jm555:20180406151517p:plain

  • NagiosサーバーのDNS名を作成しておきます。

f:id:jm555:20180406151900p:plain

  • NSG受信セキュリティ規則でNagiosサーバーへのssh(TCP/22)とHTTP(TCP/80)を許可しておきます。

f:id:jm555:20180406155737p:plain

  • NagiosサーバーにSwap領域を確保しておきます。(※手順は以下参照)

jm555.hatenablog.jp

 

[Nagios Core のインストールと初期設定]

1. 必要となるパッケージを事前にインストール

$ sudo apt-get update
$ sudo apt-get install -y autoconf gcc libc6 make wget unzip apache2 php libapache2-mod-php7.0 libgd2-xpm-dev

2. ソースをダウンロード

$ cd /tmp
$ wget -O nagioscore.tar.gz https://github.com/NagiosEnterprises/nagioscore/archive/nagios-4.3.4.tar.gz
$ tar xzf nagioscore.tar.gz

# 日本語化パッチのダウンロード (必要に応じて)

wget https://ftp.momo-i.org/pub/security/nagios/patches/nagios-jp-4.3.4.patch.gz

3. コンパイル

$ cd /tmp/nagioscore-nagios-4.3.4/

# 日本語化パッチの適用 (必要に応じて)

gzip -dc ../nagios-jp-4.3.4.patch.gz | patch -p1
# パッチをあてる際に選択肢が発生した場合はすべてyesで答えましょう。
$ sudo ./configure --with-httpd-conf=/etc/apache2/sites-enabled
$ sudo make all

 

4. Nagios用のユーザーとグループを作成

$ sudo useradd nagios
$ sudo usermod -a -G nagios www-data

5. バイナリ / CGI / HTMLファイルをインストール

$ sudo make install

6. サービス / デーモンをインストール

$ sudo make install-init
$ sudo update-rc.d nagios defaults

7. 外部コマンドファイルをインストール

$ sudo make install-commandmode

8. サンプルの設定ファイルをインストール

$ sudo make install-config

9. Apache Web Server の設定ファイルをインストール・初期設定

$ sudo make install-webconf
$ sudo a2enmod rewrite
$ sudo a2enmod cgi

10. Linux Firewallの設定

※Azure Marketplaceの標準のUbuntu Serverイメージをお使いの場合は、ufwはデフォルト:無効です。

$ sudo ufw allow Apache
$ sudo ufw reload

11. Nagiosログインアカウント(nagiosadmin)用パスワードを設定

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

New password: <Nagiosログイン用パスワードを入力>
Re-type new password: <Nagiosログイン用パスワードをもう一度入力>
Adding password for user nagiosadmin

12. Apache Web Server のサービスを再起動

$ sudo systemctl restart apache2.service

13. Nagios Core のサービスを起動

$ sudo systemctl start nagios.service

14. Nagios Core のサービスが自動起動するように設定

$ sudo systemctl enable nagios

Nagios Core のインストールと初期設定は以上です。

では、Nagios Web Interface がブラウザーで正常に表示され、ログインできるか確認しましょう。

f:id:jm555:20180406162922p:plain

 

[Nagios Plugins のインストールと初期設定]

1. ソースをダウンロード

$ cd /tmp
$ wget --no-check-certificate -O nagios-plugins.tar.gz
https://github.com/nagios-plugins/nagios-plugins/archive/release-2.2.1.tar.gz
$ tar zxf nagios-plugins.tar.gz

2. コンパイルとインストール

$ cd /tmp/nagios-plugins-release-2.2.1/
$ sudo ./tools/setup
$ sudo ./configure
$ sudo make
$ sudo make install

 

Nagios Plugins のインストールと初期設定は以上です。

では、Nagios Plugins が正常にインストールされているか確認しましょう。

 

Nagios Core と同様に、Nagios Web Interface にログインします。

画面左の"Current Status"にある"Hosts"もしくは"Services"を選択し、画面右の"Host Commands"に"Re-schedule the next check of this host"を選択します。

f:id:jm555:20180406170414p:plain

 

エラーが表示されずに、以下のように正常に表示されればOKです。 

f:id:jm555:20180406171203p:plain

 

以上、本家サイトを参考にセットアップしてみました。

support.nagios.com

 

Zabbix同様、Nagiosも続編を書こうと思います。