
Tengo mi servidor Linux de monitoreo con
NRPE Plugin for Nagios
Version: 3.2.1
y lo instalé en la máquina con Windows NSClient++
con este script .bat.
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
mi comando se ve así:
./check_nrpe --v2-packets-only -H 172.16.0.1 -p 5666 --unknown-timeout --command="Check_drivesize"
¿Cómo puedo filtrar C:
solo por disco? ¿O cambiar el umbral de advertencia/crítico?
Los ejemplos no funcionaron.https://docs.nsclient.org/reference/windows/CheckDisk/#check_drivesize_samples
p.ej.
./check_nrpe --v2-packets-only -H 172.16.0.1 -p 5666 --unknown-timeout --command="Check_drivesize" "crit=free<10%" "drive=c:"
Producción:
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
Respuesta1
Creo que al usar check_nrpe necesitas pasar argumentos con opciones -a:
-a, --args=LIST Argumentos opcionales que se deben pasar al comando, separados por un espacio. Si se proporciona, esta debe ser la última opción proporcionada en la línea de comando.
en su archivo nrpe.cfg: comando[xxx]=/usr/lib/nagios/plugins/xxx.sh "$ARG1$" "$ARG2$" "$ARG3$"
Respuesta2
Para responder a la pregunta original y a mi pregunta anterior.
Esto debe configurarse en nsclient.ini.
[/settings/NRPE/server]
allow arguments = true
allow nasty characters = true
Ahora funciona.
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