Icinga構成で定義したWindowsホストごとに異なるパスワードをcheck_nt/check_nrpeコマンドに渡すことは可能ですか?たとえば、私は3つのWindowsホストを持っています
define Host {
use windows-server
Host_name prod
address 10.0.0.1
}
define Host {
use windows-server
Host_name db
address 10.0.0.2
}
define Host {
use windows-server
Host_name test
address 10.0.0.3
}
およびサービスのセットアップ:
define service{
use generic-service
Host_name prod,db,test
service_description Uptime
check_command check_nt!UPTIME
normal_check_interval 180
}
これは
define command {
command_name check_nt
command_line /usr/lib/nagios/plugins/check_nt -H '$HOSTADDRESS$' -p 12489 -v '$ARG1$'
}
これはすべてうまく機能していますが、ホストごとに異なるパスワードを設定できるようにしたいです(Webインターフェイスからは表示できません)。 USERnマクロがWebインターフェイスに表示されないことは知っていますが、ここでそれらをどのように使用できるかわかりません。 3つの異なるサービスを作成し、その段階で引数としてパスワードを渡すことなく、これを行う簡単な方法はありますか?
はい、コマンド定義を書き直してください。
define command {
command_name check_nt_pwd
command_line /usr/lib/nagios/plugins/check_nt -H '$HOSTADDRESS$' -p 12489 -s '$ARG1$' -v '$ARG2$'
}
次に、次のような3つのサービス定義を使用できます。
define service{
use generic-service
Host_name prod
service_description Uptime
check_command check_nt!PWD1!UPTIME
normal_check_interval 180
}
define service{
use generic-service
Host_name db
service_description Uptime
check_command check_nt!PWD2!UPTIME
normal_check_interval 180
}
または、最新のNagiosでホスト変数(_password)を設定し、次のようなマクロ($ _HOSTPASSWORD $)を使用している場合:
define Host {
use windows-server
Host_name prod
address 10.0.0.1
_password PWD1
}
define service{
use generic-service
Host_name prod,db,test
service_description Uptime
check_command check_nt!$_HOSTPASSWORD$!UPTIME
normal_check_interval 180
}
または、同様の方法でマクロをコマンド定義に直接追加する場合。