3つのノードでProxmoxVEクラスターをセットアップしました。各ノードには、いくつかのVMが実行されています。 PVE Monitor Plugin を使用して、ホストとサービスをセットアップしています。これは正常に機能します。
私の問題は、Nagiosの電子メール送信動作がどういうわけか奇妙だということです。理想的には、ノードと各ノードで実行されているすべてのサービスの両方について、1分に1回チェックしたいと思います。
私の設定ファイルは次のようになります。
# Define the cluster itself as a Host
# the command check_pve_cluster_nodes give us info
# on the member's cluster state
define Host {
Host_name pve-cluster
max_check_attempts 10
check_command check_pve_cluster_nodes
contact_groups admins
check_interval 1
contact_groups admins
notifications_enabled 1
}
# define openvz, qemu and storages as services of the cluster
define service{
use generic-service
Host_name pve-cluster
service_description OpenVZ VMs
check_command check_pve_cluster_openvz
check_interval 1
contact_groups admins
notifications_enabled 1
}
define service{
use generic-service
Host_name pve-cluster
service_description Qemu VMs
check_command check_pve_cluster_qemu
check_interval 1
contact_groups admins
notifications_enabled 1
}
define service{
use generic-service
Host_name pve-cluster
service_description Storages
check_command check_pve_cluster_storage
check_interval 1
contact_groups admins
notifications_enabled 1
}
時間単位の設定は変更していないので、1分に1回のチェックである必要があります。 Nagios Web UIは、ホストがオフラインであることを示していますが、電子メール通知は数分後に送信されます。さらに、電子メールの内容には、最も重要な情報(どのノード/サービスが正確にクリティカル状態にあるか)が欠落しています。
***** Nagios *****
Notification Type: PROBLEM
Host: pve-cluster
State: DOWN
Address: pve-cluster
Info: NODES CRITICAL 2 / 3 working nodes
Date/Time: Fri Mar 6 10:48:25 CET 2015
***** Nagios *****
Notification Type: PROBLEM
Service: Qemu VMs
Host: pve-cluster
Address: pve-cluster
State: CRITICAL
Date/Time: Fri Mar 6 10:40:44 CET 2015
Additional Info:
QEMU CRITICAL 2 / 3 working VMs
ホストとサービス(つまりVM)が1分間隔でチェックされるように構成を設定するにはどうすればよいですか?理想的には、そのステータスの再チェックは、その後15分間隔で送信する必要があります。
これも最高のワークフローですか?または、通知を確認してスケジュールする別のより良い方法はありますか?
Nagiosは、ホストまたはサービスが「ハード」状態になったときにのみ電子メールを送信します。質問に答えるための基本的なレベルでは、ホストまたはサービスがmax_check_attemptsで指定された回数チェックされると、ハード状態になります。デフォルトでは、これは4です。
ソフト/ハード状態に関する情報: http://nagios.sourceforge.net/docs/3_0/statetypes.html max_check_attemptsに関する情報: http://nagios.sourceforge.net/docs /3_0/objectdefinitions.html
プラグインは間違いなく返品の詳細を提供することを意図しているようですが、何らかの理由でそうではありません。残念ながら、これをテストするための環境がないので、質問のその部分にぶら下がっているままにしておく必要があるかもしれません。
Perlの関連セクション:
print "NODES $rstatus{$statusScore} $workingNodes / " .
scalar(@monitoredNodes) . " working nodes" . $br . $reportSummary;
print "STORAGE $rstatus{$statusScore} $workingStorages / " .
scalar(@monitoredStorages) . " working storages" . $br . $reportSummary;
print "OPENVZ $rstatus{$statusScore} $workingVms / " .
scalar(@monitoredOpenvz) . " working VMs" . $br . $reportSummary;
print "QEMU $rstatus{$statusScore} $workingVms / " .
scalar(@monitoredQemus) . " working VMs" . $br .
$reportSummary;
$ reportSummaryには、コードの上位にある問題セクションの詳細が入力されていますが、返されているようには見えません。