
ich habe meinen Monitoring-Linux-Server mit
NRPE Plugin for Nagios
Version: 3.2.1
und ich habe es mit diesem .bat-Skript auf der Windows-Maschine installiert NSClient++
.
set setupfile="NSCP-0.5.2.35-x64.msi"
msiexec /l install.log /i %setupfile% CONF_CAN_CHANGE="TRUE" ALLOWED_HOSTS="1.2.3.4/32,127.0.0.1/32" CONF_NRPE="TRUE" CONF_CHECKS="TRUE" CONF_NSCLIENT="FALSE" CONF_WEB="FALSE" CONF_NSCA="FALSE" /quiet
copy "nrpe_dh_2048.pem" "C:\Program Files\NSClient++\security\nrpe_dh_2048.pem"
cd "C:\Program Files\NSClient++"
nscp.exe settings --activate-module "NRPEServer" --add-defaults
nscp.exe settings --path "/modules" --key "CheckDisk" --set "enabled"
nscp.exe settings --path "/modules" --key "CheckSystem" --set "enabled"
nscp.exe settings --path "/settings/default" --key "bind to" --set ""
nscp.exe settings --path "/settings/NRPE/server" --key "ssl options" --set "no-sslv2,no-sslv3,no-tlsv1"
nscp.exe settings --path "/settings/NRPE/server" --key "dh" --set "${certificate-path}/nrpe_dh_2048.pem"
nscp.exe settings --path "/settings/NRPE/server" --key "allow arguments" --set "true"
nscp.exe settings --path "/settings/log" --key "level" --set "warning"
net stop nscp
net start nscp
mein Befehl sieht so aus:
./check_nrpe --v2-packets-only -H 172.16.0.1 -p 5666 --unknown-timeout --command="Check_drivesize"
Wie kann ich C:
nur nach Festplatten filtern oder den Warn-/Kritik-Schwellenwert ändern?
Die Beispiele haben nicht funktionierthttps://docs.nsclient.org/reference/windows/CheckDisk/#check_drivesize_samples
z.B.
./check_nrpe --v2-packets-only -H 172.16.0.1 -p 5666 --unknown-timeout --command="Check_drivesize" "crit=free<10%" "drive=c:"
Ausgabe:
OK All 3 drive(s) are ok|'C:\ used'=12.46093GB;15.54609;17.48935;0;19.43261 'C:\ used %'=64%;80;90;0;100 'A:\ used'=0B;0;0;0;0 'D:\ used'=0B;0;0;0;0
Antwort1
Ich denke, dass Sie bei Verwendung von check_nrpe Argumente mit der Option -a übergeben müssen:
-a, --args=LIST Optionale Argumente, die an den Befehl übergeben werden sollen, getrennt durch ein Leerzeichen. Falls angegeben, muss dies die letzte Option in der Befehlszeile sein.
in Ihrer nrpe.cfg-Datei: command[xxx]=/usr/lib/nagios/plugins/xxx.sh "$ARG1$" "$ARG2$" "$ARG3$"
Antwort2
Um die ursprüngliche Frage und meine Frage oben zu beantworten.
Dies muss in nsclient.ini festgelegt werden.
[/settings/NRPE/server]
allow arguments = true
allow nasty characters = true
Jetzt funktioniert es.
D:\Program Files\NSClient>check_nrpe host=127.0.0.1 port=15666 certificate=security/ca.pem verify=peer-cert allowed-ciph
ers=ALL command=check_drivesize argument="critical=free < 10%" argument="drive=c:"
OK All 1 drive(s) are ok|'c: free'=25.15175GB;0;4.99969;0;49.99706 'c: free %'=50%;0;10;0;100 'c: used'=24.84531GB;39.99
765;0;0;49.99706 'c: used %'=50%;80;0;0;100