harumaki.net

インフラ屋の覚書や、ラーメン食べある記とか。

GNU/Linux infra nagios 運用

nagios core​/1.インストール

投稿日:2010年11月25日

Last Updated on 2021年7月4日 by かんりにん

 
[pukiwiki]
ものすっごい久しぶり、5年ぶりくらいに環境をセットアップしたので一応メモ。
インストールおよび初期設定までの作業ログ。
コンフィグの書式とかはなんとなく覚えてるけど、どれが何の設定か、とかはすっかり忘れてしまったので
一から勉強し直し、というところで。

*要件

– 原則すべて/usr/local/nagios以下に配置する
– リソース監視のステータスはグラフに落とし込んで出力する。
– 原則RDBMSは使用しない。
– CGIを利用できること
– クライアントのリソース監視には原則SNMPを利用する。
– 深夜にバッチ処理の影響によりロードが上昇するホストがあるので、定時ダウンタイムの機能を持たせる。

*運用環境 [#s8b9372d]

サーバールート :/usr/local/nagios
実行ユーザー :nagios
CGI実行グループ :nagcmd
*作業ログ [#x69f2be9]

**1)nagios実行ユーザー作成 [#ga582220]

+nagios実行ユーザー
# useradd -u 1001 nagios
# passwd nagios
パスワード:nagios(暫定) →絶対後で変更しておくこと!
+nagiosのCGI実行許可グループ作成
Webの管理画面からのCGI実行を許可するため、apacheの実行ユーザーもアクセスできるグループを作成。
以下で、apache/httpdの実行ユーザー”apache”をnagcmdに登録(実行ユーザーは環境に応じて都度読み替える)。
# groupadd nagcmd
# usermod -G nagcmd nagios
# usermod -G nagcmd apache

**2)nagios coreインストール [#q38dedef]

下記でwgetしている3.2.3は2010/10/27時点での最新バージョンなので
作業する際に都度最新バージョンを確認してからダウンロードすること。

$ pwd
/home/user/src
$ wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.3.tar.gz
$ cd nagios-3.2.3
$ ./configure –prefix=/usr/local/nagios –with-command-group=nagcmd
※nagios管理画面からのCGIを領しない場合は、”–with-command-group=nagcmd”は不要。
$ make all
$ su –
# cd /home/user/src/nagios-3.2.3
# make install
# make install-init
# make install-config
# make install-commandmode ←nagios管理画面のCGI実行用
# make install-webconf
※全インスコする場合は以下で↓
# make fullinstall

**3)nagios-plugin [#s7fac798]

$ pwd
/home/user/src
$ wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.15.tar.gz
$ tar zxvf nagios-plugins-1.4.15.tar.gz
$ cd nagios-plugins-1.4.15
$ ./configure –with-nagios-user=nagios –with-nagios-group=nagios –enable-perl-modules
$ make
$ su –
# cd /home/user/src/nagios-plugins-1.4.15
# paco -lD make install

**4)nagios core 初期設定 [#q647a6d7]

※この時点ではnagios coreの正常起動、動作を確認するのみとして
リソースやサービスの監視は未設定。

-コンフィグテスト
インストールしたツルシの状態でのコンフィグテスト
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
— 中略 —

Total Warnings: 0
Total Errors: 0

Things look okay – No serious problems were detected during the pre-flight check

-Webコンソールへのログインユーザー登録
初期の動作確認のため、{NAGIOSROOT}/etc/cgi.cfgで設定されている
デフォルトユーザーでひとまず登録
# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
# ll /usr/local/nagios/etc/htpasswd.users
-chkconfig登録
# chkconfig –add nagios
# chkconfig –level 2345 nagios on
# chkconfig –list | grep nagios
nagios 0:off 1:off 2:on 3:on 4:on 5:on 6:off
#

-起動テスト
++プロセス起動
# /etc/init.d/nagios start
Starting nagios: done.
++プロセス確認
# ps -aef | grep nagios
nagios 6282 1 0 18:50 ? 00:00:00 /usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg
root 6292 22333 0 18:50 pts/0 00:00:00 grep nagios
++ログ確認
# cat /usr/local/nagios/var/nagios.log
[1290073824] Nagios 3.2.3 starting… (PID=6281)
[1290073824] Local time is Thu Nov 18 18:50:24 JST 2010
[1290073824] LOG VERSION: 2.0
[1290073824] Finished daemonizing… (New PID=6282)

**5)追加カスタマイズ [#p76bcc73]

***5-1.ログ出力先の変更 [#c46fde91]

後からインストールするRRDtoolやnagiosgraphなどの環境と統一するため
ログ出力先を/usr/local/nagios/var/以下のlog/ディレクトリに変更。

/usr/local/nagios/var/nagios.log

/usr/local/nagios/var/nagios.log

– コンフィグ変更
# vi /usr/local/nagios/etc/nagios.cfg
-[変更箇所]
19c19
< log_file=/usr/local/nagios/var/nagios.log — > log_file=/usr/local/nagios/var/log/nagios.log
– ログディレクトリ作成、シンボリックリンク作成
segmentation faultを防ぐため、デーモンを止めておく。
# /etc/init.d/nagios stop
# cd /usr/local/nagios/var/
# mkdir log
– ログファイルをlog/ディレクトリへ移動
# mv nagios.log log/
– もともとの出力ファイルをシンボリックリンクへ変更
設定変更後、再起動するとnagios.cfgで指定したファイルへ出力されるようになるが
なぜかもともとのvar/nagios.logに空ファイルを生成してしまう。
おそらくビルド時に指定すれば問題ないと思われるが、紛らわしいのでリンクにしておく。
# ln -s log/nagios.log nagios.log
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
→ Things look okay – No serious problems were detected during the pre-flight check
# /etc/init.d/nagios stop
→変更先のログへの正常出力を確認。

***5-2.nagios.cmdのパーミッションを変更 [#g317afc8]

nagiosのWeb画面から各種操作が出来るよう、nagios.cmdのグループを
”nagcmd”へ変更し、httpd実行ユーザーからの読み書きを許可する。
※Web画面からの操作を有効にしない場合は設定不要。

nagios.cmdはプロセスファイルなので、出力先である/usr/local/nagios/var/rw/の
グループ権限を変更。
nagiosプロセスを停止してから変更を実施すること。

-nagcmdグループにhttpd実行ユーザーを追加
本環境ではhttpd実行ユーザーは””apache””なので、nagcmdグループにapacheユーザーを追加。
# usermod -G nagcmd apache
-nagios.cmdが作成されるディレクトリのグループ権限を変更
# chgrp nagcmd /usr/local/nagios/var/rw/

[/pukiwiki]
 
 

 

-GNU/Linux, infra, nagios, 運用
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

no image

[Juniper]SRX アプリケーション別のタイムアウト設定

社内で利用しているアプリケーションのセッションが一定時間操作がない状態で切れてしまうため、回避のため設定を追加。 具体的にはTCPセッションにて、指定したポートの通信タイムアウトを指定する方法。 環境 …

[Windows]NTttcp.exeで帯域を測定してみる

  社内LANにある端末のスループット調査にて、マイクロソフト謹製のNTttcp.exe(ttcpのNT版、という位置づけの様子)を使ってみることに。 普段はiperfのお世話になることが多いが、今回 …

no image

ただのメモ:cron実行内容をloggerを使ってログファイルに書き出す

crontabでジョブを実行する際、標準出力やスクリプト内にechoで出力した内容を パイプにてloggerコマンドを使って/var/log/messagesへ書き出す。 オプション”-t …

[AWS]EC2インスタンスにS3をマウントしてみる(s3fs)

EC2インスタンスにS3のバケットをファイルシステムとしてマウントし、ファイル転送などを試してみる。 実際に使ってみた感じではmountコマンドと同様に利用でき、扱いやすそう。 -参考ページ:お世話に …

YAMAHA RTX1200でIPsec VPN設定(クライアント接続)ドキュメント1.ルーター編

  [pukiwiki] わりと久々にRTX1200でIPsec VPNを設定したのでメモしました。 今回はPPPoEするルーターとVPNのプロファイルを設定するルーターが別のマシン、 対向側がルータ …

Amazon プライム対象