ホストグループとテンプレート。
テンプレートを使用すると、ホストとサービスのクラスを定義できます。 「通常のサービス」、「重要なサービス」、「低優先度のホスト」。これらは、異なる責任を持つ複数のチームがある場合に責任を分割する便利な方法としても機能するため、「linux ホスト」テンプレートと「windows ホスト」テンプレートを用意し、それぞれが適切な連絡先情報を定義することができます。
1 つのリソースで複数のテンプレートを使用できるため、適切に直交するテンプレートを構成できます。たとえば、
host foo {
use windows-host,normal-priority-host
...
}
これにより、Windows チームの連絡先情報 (およびエスカレーション) と、「通常の」ホストのポーリング レートとしきい値が取り込まれます。
ホストグループを使用すると、ホストのサブセットのすべてのチェックをグループ化できます。負荷、ディスク容量、ssh
をチェックする「baseline-linux-hosts」などがあります。 能力、および監視するすべてのホストに必要なその他のもの。 HTTP 接続、HTTPS 接続、および SSL 証明書の有効期限をチェックする「https-servers」などのグループを追加します。 NFS と SMB のアクセス可能性をチェックし、場合によってはより積極的なディスク チェックを行う「ファイル サーバー」。または、VM アクセシビリティ ツールが適切に実行されているかどうかをチェックする「仮想マシン」。
各ホストとホストグループを独自のファイルに入れます。このファイルには、最初にホストまたはホストグループの定義が含まれ、次にそれに適用されるサービスの定義が含まれている必要があります。
cfg_dir
を使用する場合 nagios.cfg
のディレクティブ ファイル、Nagios はそのディレクトリを再帰的に検索します。それを利用してください。 cfg_dir=/etc/nagios/conf.d
の設定の場合 、次のようなディレクトリ ツリーを持つことができます:
- /etc/nagios/conf.d/
- commands.d/
- http.cfg
- nrpe.cfg
- smtp.cfg
- ssh.cfg
- hosts.d/
- host1.cfg
- host2.cfg
- host3.cfg
- hostgroups.d/
- hostgroup1.cfg
- hostgroup2.cfg
- commands.d/
私は、リソースの種類 (コマンド、連絡先グループ、連絡先、エスカレーション、ホストグループ、ホスト、サービスグループ、期間) ごとにディレクトリを作成する傾向がありますが、サービスは、それらを使用するホストまたはホストグループとグループ化されます.
正確な構造は、組織のニーズによって異なります。以前の仕事では、hosts.d
以下のサブディレクトリを使用していました 異なるサイトごとに。私の現在の仕事では、ほとんどの Nagios ホスト定義が Puppet によって管理されているため、Puppet 管理のホスト用に 1 つのディレクトリがあり、手動管理のホスト用に別のディレクトリがあります。
上記は、コマンドを複数のファイルに、通常はプロトコルごとに分割することにも注意してください。したがって、nrpe.cfg
ファイルにはコマンド check_nrpe
が含まれます と check_nrpe_1arg
、 http.cfg
の間 check_http
を持つことができます 、 check_http_port
、 check_https
、 check_https_port
、および check_https_cert
.
私は通常、膨大な数のテンプレートを持っているわけではないので、通常は hosts.d/templates.cfg
しか持っていません。 ファイルと services.d/templates.cfg
ファイル。それらをより頻繁に使用する場合、templates.d
内の適切な名前のファイルに入れることができます ディレクトリ。
check_http_blindly
も欲しい コマンド、基本的には check_http -H $HOSTADDRESS$ -I $HOSTADDRESS$ -e HTTP/1.
です; 403 レスポンス コードを取得しても OK を返します。
サービスとホストグループ、およびテンプレートを多用します。ホストグループを作成し、ホストグループにサービスを割り当てます。 Web UI での依存関係、エスカレーション、および論理的なグループ化にサービスグループを使用します。
すべてのグループがある場合、新しいホストの追加は、名前、アドレス、テンプレート、および (オプションで) ホストグループの 3 ~ 4 行だけです。すべてをテンプレート化できます。
継承に関するドキュメントと、時間を節約するためのトリックのページを必ず読んでください。多重継承は扱いにくい場合がありますが、正しく使用すると時間を大幅に節約できます。