LoginSignup
8
9

More than 5 years have passed since last update.

Nagios version 4 Introduction

Posted at

Nagios version 4 関連の日本語記事が少なかったので、以前のバージョンとの差異をまとめてみました。version 4 では v3 以前と比べパフォーマンス改善がされているなど魅力的なところがあります。

以下のドキュメントを参照しました。

History of Nagios4

Nagios Core 4.x Version Historyによると 4.0.0 が 2013年9月にリリース、2014年11月現在 4.0.8 が最新版。3.x 系が 3.5.1 まで進んでいるので、4.x 系の歴史は浅いようです。

パフォーマンス改善

  • Core workers の導入
    • Core workersはチェックのみ行う軽量プロセス
    • nagios core 全体をforkしていた以前のやり方よりも小さくforkできる
    • nagios core process と in-memory でやり取りする。これまで重い原因だったディスクI/Oのレイテンシが無くせる
  • Configuration Verification の改善。以前は O(n2) のコストがかかっていたがこれを改善
  • Event Queue のinsertコストを改善
  • Macro Resolution(マクロのコンパイルといった訳でしょうか..)。バイナリサーチにより以前より早くなった

Object関連

  • host定義の address アトリビュートは optionalへ
  • hourly_value アトリビュート, contactsへの minimum_value アトリビュートのサポート。integerのバリューで監視項目を重み付けできる。重みにより contact毎に通知するかしないかを制御できる
  • service定義に parents アトリビュートをサポート。サービス間の依存関係を定義可能になる
  • obess_over_hostobsess_over_service アトリビュートの外、より短い obsess アトリビュートをサポート

設定ファイル

  • object_cache_filestatus_file/dev/null を指定可能に。/dev/null を指定することで disk I/Oを無くせる。これは他の方法でもobjectやstatusに関する情報を取得できるようになったから(?)
  • log_current_states ログローテーションの後に監視の current status をログに書き込むかどうか。大規模環境ではこれをoffにすることでdisk spaceを節約できる
  • check_workers 起動時の worker 数。指定しない場合はCPUコア数により決められる
  • query_socket query handler socket のパス。デフォルトは /usr/local/nagios/var/rw/nagios.qh
  • nagios.cfg 内のファイルパスやディレクトリパスは相対パスが利用可能に。相対パスの場合、nagios.cfg の位置が基準に。

マクロ

  • enable_environment_macros マクロの値を環境変数として外部スクリプトに渡すかどうかの設定。offにすることでCPU負荷を下げるとのこと。
  • $CHECKSOURCE$ checkするworkerの名前が入る
  • use_large_installation_tweaksが有効の時、$HOSTGROUPMEMBERS$$SERVICEGROUPMEMBERS$は環境変数としてセットされなくなった

Query Handler

Unix Domain Socketを通じて Nagios Core プロセスとのコミュニケーションが可能になる。現在は5つの種類がある。

  • core Nagios Coreプロセス管理、また情報取得ができる
  • wproc workerプロセスの登録、管理、情報取得
  • nerd Nerdという pub/sub の仕組みを提供
  • help help message

まとめ

core worker の導入により、checkのパフォーマンスが改善されました。効果は要検証ではありますが、Nagios Conference 2013 - Eric Stanley - Whats New Core 4 の中の実例 before/after によるとかなり改善しているようです。

Query Handler、nerd などはよく分かってないので今度試してみます。

8
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
9