Есть Nagios, к нему установлен NRPE. Надо мониторить на уделенном виндовом сервере занятость оперативки (именно оперативки, без swap).
Нашел плагин:
http://exchange.nagios.org/directory/Plugins/Operating-Syste...
Как этот плагин подключить к Nagios? Информации не нашел нигде и никакой.
> Есть Nagios, к нему установлен NRPE. Надо мониторить на уделенном виндовом сервере
> занятость оперативки (именно оперативки, без swap).
> Нашел плагин:
> http://exchange.nagios.org/directory/Plugins/Operating-Syste...
> Как этот плагин подключить к Nagios? Информации не нашел нигде и никакой.наверное здесь https://www.itefix.no/i2/check_winprocess и конкретно вот здесь http://clip2net.com/s/1X0B0
> наверное здесь https://www.itefix.no/i2/check_winprocess и конкретно вот здесь http://clip2net.com/s/1X0B0Описание как пользоваться командой это не то.
>> наверное здесь https://www.itefix.no/i2/check_winprocess и конкретно вот здесь http://clip2net.com/s/1X0B0
> Описание как пользоваться командой это не то.Жесть, я тебе ссылку куда нажать даже стрелкой выделил во второй ссылке. Или никак? Я почему-то вижу полную инструкцию по установке...
> Жесть, я тебе ссылку куда нажать даже стрелкой выделил во второй ссылке.
> Или никак? Я почему-то вижу полную инструкцию по установке...Послушай, для чего мне установка NRPE, который уже стоит? Вопрос конкретный, как совместить одно с другим (плагин (выше ссылка) и NRPE вместе с Nagios).
>> Жесть, я тебе ссылку куда нажать даже стрелкой выделил во второй ссылке.
>> Или никак? Я почему-то вижу полную инструкцию по установке...
> Послушай, для чего мне установка NRPE, который уже стоит? Вопрос конкретный, как
> совместить одно с другим (плагин (выше ссылка) и NRPE вместе с
> Nagios).От упертый)) Вместо того что бы доку почитать... Он тут разгагольствует..
nrpe это не что иное как обычный исполнятель комманд. Вам вывод этой комманды не о чем не говорит?
$ /usr/local/libexec/nagios/check_nrpe2
NRPE Plugin for Nagios
Copyright (c) 1999-2008 Ethan Galstad (nagios@nagios.org)
Version: 2.13
Last Modified: 11-11-2011
License: GPL v2 with exemptions (-l for more info)
SSL/TLS Available: Anonymous DH Mode, OpenSSL 0.9.6 or higher requiredUsage: check_nrpe -H <host> [-n] [-u] [-p <port>] [-t <timeout>] [-c <command>] [-a <arglist...>]
Options:
-n = Do no use SSL
-u = Make socket timeouts return an UNKNOWN state instead of CRITICAL
<host> = The address of the host running the NRPE daemon
[port] = The port on which the daemon is running (default=5666)
[timeout] = Number of seconds before connection times out (default=10)
[command] = The name of the command that the remote daemon should run
[arglist] = Optional arguments that should be passed to the command. Multiple
arguments should be separated by a space. If provided, this must be
the last option supplied on the command line.а файл /usr/local/etc/nrpe.cfg тоже ни на какие мысли не наводит?
>[оверквотинг удален]
> [command] = The name of the command that the remote
> daemon should run
> [arglist] = Optional arguments that should be passed to the
> command. Multiple
>
> arguments should be separated by a space. If
> provided, this must be
>
> the last option supplied on the command line.
> а файл /usr/local/etc/nrpe.cfg тоже ни на какие мысли не наводит?Да, упертый:)
Написано уже все, вот например кусочек nrpe.cfg:
command[check_pdm]=C:\check_pdm\check_pdm.exe --memory physical
Чуть-чуть другая софтинка, но смысл тот же есть exe, есть pl. Exe и pl валяются на стороне хоста, который хочу мониторить.
Делаю [root@freebsdm /usr/local/nagios/libexec]# /usr/local/nagios/libexec/check_nrpe -H 192.168.1.4 -c check_pdm
UNKNOWN: No handler for that command
>[оверквотинг удален]
>> the last option supplied on the command line.
>> а файл /usr/local/etc/nrpe.cfg тоже ни на какие мысли не наводит?
> Да, упертый:)
> Написано уже все, вот например кусочек nrpe.cfg:
> command[check_pdm]=C:\check_pdm\check_pdm.exe --memory physical
> Чуть-чуть другая софтинка, но смысл тот же есть exe, есть pl. Exe
> и pl валяются на стороне хоста, который хочу мониторить.
> Делаю [root@freebsdm /usr/local/nagios/libexec]# /usr/local/nagios/libexec/check_nrpe
> -H 192.168.1.4 -c check_pdm
> UNKNOWN: No handler for that commandа на винде в cmd если запустить c:\check_pdm\check_pdm.exe --memory physical
чо пишет?
> а на винде в cmd если запустить c:\check_pdm\check_pdm.exe --memory physical
> чо пишет?MEMORY OK - Physical usage: 1191 MB (9% of 12226 MB)|'memory in use'=1191MB; 'me
mory usage'=9%;;; 'memory total'=12226MB;
>> а на винде в cmd если запустить c:\check_pdm\check_pdm.exe --memory physical
>> чо пишет?
> MEMORY OK - Physical usage: 1191 MB (9% of 12226 MB)|'memory in
> use'=1191MB; 'me
> mory usage'=9%;;; 'memory total'=12226MB;думаю у вас ошибка в nrpe.cfg
можете показать его полностью?
> думаю у вас ошибка в nrpe.cfg
> можете показать его полностью?Конечно:
#############################################################################
# Sample NRPE Config File
# Written by: Ethan Galstad (nagios@nagios.org)
#
# Last Modified: 03-09-2007
#
# NOTES:
# This is a sample configuration file for the NRPE daemon. It needs to be
# located on the remote host that is running the NRPE daemon, not the host
# from which the check_nrpe client is being executed.
#############################################################################
# PID FILE
# The name of the file in which the NRPE daemon should write it's process ID
# number. The file is only written if the NRPE daemon is started by the root
# user and is running in standalone mode.pid_file=/var/run/nrpe.pid
# PORT NUMBER
# Port number we should wait for connections on.
# NOTE: This must be a non-priviledged port (i.e. > 1024).
# NOTE: This option is ignored if NRPE is running under either inetd or xinetdserver_port=5666
# SERVER ADDRESS
# Address that nrpe should bind to in case there are more than one interface
# and you do not want nrpe to bind on all interfaces.
# NOTE: This option is ignored if NRPE is running under either inetd or xinetdserver_address=127.0.0.1,192.168.1.4
# NRPE USER
# This determines the effective user that the NRPE daemon should run as.
# You can either supply a username or a UID.
#
# NOTE: This option is ignored if NRPE is running under either inetd or xinetdnrpe_user=nagios
# NRPE GROUP
# This determines the effective group that the NRPE daemon should run as.
# You can either supply a group name or a GID.
#
# NOTE: This option is ignored if NRPE is running under either inetd or xinetdnrpe_group=nagios
# ALLOWED HOST ADDRESSES
# This is an optional comma-delimited list of IP address or hostnames
# that are allowed to talk to the NRPE daemon.
#
# Note: The daemon only does rudimentary checking of the client's IP
# address. I would highly recommend adding entries in your /etc/hosts.allow
# file to allow only the specified host to connect to the port
# you are running this daemon on.
#
# NOTE: This option is ignored if NRPE is running under either inetd or xinetdallowed_hosts=127.0.0.1
# COMMAND ARGUMENT PROCESSING
# This option determines whether or not the NRPE daemon will allow clients
# to specify arguments to commands that are executed. This option only works
# if the daemon was configured with the --enable-command-args configure script
# option.
#
# *** ENABLING THIS OPTION IS A SECURITY RISK! ***
# Read the SECURITY file for information on some of the security implications
# of enabling this variable.
#
# Values: 0=do not allow arguments, 1=allow command argumentsdont_blame_nrpe=1
# COMMAND PREFIX
# This option allows you to prefix all commands with a user-defined string.
# A space is automatically added between the specified prefix string and the
# command line from the command definition.
#
# *** THIS EXAMPLE MAY POSE A POTENTIAL SECURITY RISK, SO USE WITH CAUTION! ***
# Usage scenario:
# Execute restricted commmands using sudo. For this to work, you need to add
# the nagios user to your /etc/sudoers. An example entry for alllowing
# execution of the plugins from might be:
#
# nagios ALL=(ALL) NOPASSWD: /usr/lib/nagios/plugins/
#
# This lets the nagios user run all commands in that directory (and only them)
# without asking for a password. If you do this, make sure you don't give
# random users write access to that directory or its contents!# command_prefix=/usr/bin/sudo
# DEBUGGING OPTION
# This option determines whether or not debugging messages are logged to the
# syslog facility.
# Values: 0=debugging off, 1=debugging ondebug=0
# COMMAND TIMEOUT
# This specifies the maximum number of seconds that the NRPE daemon will
# allow plugins to finish executing before killing them off.command_timeout=60
# CONNECTION TIMEOUT
# This specifies the maximum number of seconds that the NRPE daemon will
# wait for a connection to be established before exiting. This is sometimes
# seen where a network problem stops the SSL being established even though
# all network sessions are connected. This causes the nrpe daemons to
# accumulate, eating system resources. Do not set this too low.connection_timeout=300
# WEEK RANDOM SEED OPTION
# This directive allows you to use SSL even if your system does not have
# a /dev/random or /dev/urandom (on purpose or because the necessary patches
# were not applied). The random number generator will be seeded from a file
# which is either a file pointed to by the environment valiable $RANDFILE
# or $HOME/.rnd. If neither exists, the pseudo random number generator will
# be initialized and a warning will be issued.
# Values: 0=only seed from /dev/[u]random, 1=also seed from weak randomness#allow_weak_random_seed=1
# INCLUDE CONFIG FILE
# This directive allows you to include definitions from an external config file.#include=<somefile.cfg>
# INCLUDE CONFIG DIRECTORY
# This directive allows you to include definitions from config files (with a
# .cfg extension) in one or more directories (with recursion).#include_dir=<somedirectory>
#include_dir=<someotherdirectory># COMMAND DEFINITIONS
# Command definitions that this daemon will run. Definitions
# are in the following format:
#
# command[<command_name>]=<command_line>
#
# When the daemon receives a request to return the results of <command_name>
# it will execute the command specified by the <command_line> argument.
#
# Unlike Nagios, the command line cannot contain macros - it must be
# typed exactly as it should be executed.
#
# Note: Any plugins that are used in the command lines must reside
# on the machine that this daemon is running on! The examples below
# assume that you have plugins installed in a /usr/local/nagios/libexec
# directory. Also note that you will have to modify the definitions below
# to match the argument format the plugins expect. Remember, these are
# examples only!
# The following examples use hardcoded command arguments...command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20
command[check_hda1]=/usr/local/nagios/libexec/check_disk -w 20 -c 10 -p /dev/hda1
command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs -w 5 -c 10 -s Z
command[check_total_procs]=/usr/local/nagios/libexec/check_procs -w 150 -c 200
command[check_pdm]=C:\check_pdm\check_pdm.exe --memory physical# The following examples allow user-supplied arguments and can
# only be used if the NRPE daemon was compiled with support for
# command arguments *AND* the dont_blame_nrpe directive in this
# config file is set to '1'. This poses a potential security risk, so
# make sure you read the SECURITY file before doing this.#command[check_users]=/usr/local/nagios/libexec/check_users -w $ARG1$ -c $ARG2$
#command[check_load]=/usr/local/nagios/libexec/check_load -w $ARG1$ -c $ARG2$
#command[check_disk]=/usr/local/nagios/libexec/check_disk -w $ARG1$ -c $ARG2$ -p $ARG3$
#command[check_procs]=/usr/local/nagios/libexec/check_procs -w $ARG1$ -c $ARG2$ -s $ARG3$
>[оверквотинг удален]
> for
> # command arguments *AND* the dont_blame_nrpe directive in this
> # config file is set to '1'. This poses a potential
> security risk, so
> # make sure you read the SECURITY file before doing this.
> #command[check_users]=/usr/local/nagios/libexec/check_users -w $ARG1$ -c $ARG2$
> #command[check_load]=/usr/local/nagios/libexec/check_load -w $ARG1$ -c $ARG2$
> #command[check_disk]=/usr/local/nagios/libexec/check_disk -w $ARG1$ -c $ARG2$ -p $ARG3$
> #command[check_procs]=/usr/local/nagios/libexec/check_procs -w $ARG1$ -c $ARG2$ -s
> $ARG3$allowed_hosts=127.0.0.1 ? Только лупбек? надо ещё дописать ип адрес сервера нагиоса
причем через запятую и без пробела. ну и перезапустить службу(или как там в винде)) nrpe
>[оверквотинг удален]
>> security risk, so
>> # make sure you read the SECURITY file before doing this.
>> #command[check_users]=/usr/local/nagios/libexec/check_users -w $ARG1$ -c $ARG2$
>> #command[check_load]=/usr/local/nagios/libexec/check_load -w $ARG1$ -c $ARG2$
>> #command[check_disk]=/usr/local/nagios/libexec/check_disk -w $ARG1$ -c $ARG2$ -p $ARG3$
>> #command[check_procs]=/usr/local/nagios/libexec/check_procs -w $ARG1$ -c $ARG2$ -s
>> $ARG3$
> allowed_hosts=127.0.0.1 ? Только лупбек? надо ещё дописать ип адрес сервера нагиоса
> причем через запятую и без пробела. ну и перезапустить службу(или как там
> в винде)) nrpeДа, только лупбек.
Дописано и перезагружено...
[root@freebsdm /usr/local/nagios/libexec]# /usr/local/nagios/libexec/check_nrpe -H 192.168.1.4 -c check_pdm
UNKNOWN: No handler for that command
Я в недоумении ...
Если выполнить просто ради теста - [root@freebsdm /usr/local/nagios/libexec]# /usr/local/nagios/libexec/check_nrpe -H 192.168.1.4
I (0.3.9.328 2011-08-16) seem to be doing fine...
>[оверквотинг удален]
>>> #command[check_procs]=/usr/local/nagios/libexec/check_procs -w $ARG1$ -c $ARG2$ -s
>>> $ARG3$
>> allowed_hosts=127.0.0.1 ? Только лупбек? надо ещё дописать ип адрес сервера нагиоса
>> причем через запятую и без пробела. ну и перезапустить службу(или как там
>> в винде)) nrpe
> Да, только лупбек.
> Дописано и перезагружено...
> [root@freebsdm /usr/local/nagios/libexec]# /usr/local/nagios/libexec/check_nrpe
> -H 192.168.1.4 -c check_pdm
> UNKNOWN: No handler for that commandа этот nrpe.cfg точно с винды?
/usr/local/nagios/libexec/check_nrpe -H 192.168.1.4 -c check_users -w 5 -c 10 что покажет?
>[оверквотинг удален]
>>> allowed_hosts=127.0.0.1 ? Только лупбек? надо ещё дописать ип адрес сервера нагиоса
>>> причем через запятую и без пробела. ну и перезапустить службу(или как там
>>> в винде)) nrpe
>> Да, только лупбек.
>> Дописано и перезагружено...
>> [root@freebsdm /usr/local/nagios/libexec]# /usr/local/nagios/libexec/check_nrpe
>> -H 192.168.1.4 -c check_pdm
>> UNKNOWN: No handler for that command
> а этот nrpe.cfg точно с винды?
> /usr/local/nagios/libexec/check_nrpe -H 192.168.1.4 -c check_users -w 5 -c 10 что покажет?а вот ещё что) файл nsc.ini с винды можете показать?
> а этот nrpe.cfg точно с винды?
> /usr/local/nagios/libexec/check_nrpe -H 192.168.1.4 -c check_users -w 5 -c 10 что покажет?Нет, нет это с freebsd.
>> а этот nrpe.cfg точно с винды?
>> /usr/local/nagios/libexec/check_nrpe -H 192.168.1.4 -c check_users -w 5 -c 10 что покажет?
> Нет, нет это с freebsd.комманду для nrpe надо прописывать на хосте
>>> а этот nrpe.cfg точно с винды?
>>> /usr/local/nagios/libexec/check_nrpe -H 192.168.1.4 -c check_users -w 5 -c 10 что покажет?
>> Нет, нет это с freebsd.
> комманду для nrpe надо прописывать на хостеПо поводу команды выше, пробовал, он скажет, что сделать не может, ведь там на другом конце винда:)
А как ее там просать? В ini файле? К сожалению его полный листинг показать не могу, я дома, а фряха на работе и доступа к ней из вне просто нет.
> По поводу команды выше, пробовал, он скажет, что сделать не может, ведь
> там на другом конце винда:)
> А как ее там просать? В ini файле? К сожалению его полный
> листинг показать не могу, я дома, а фряха на работе и
> доступа к ней из вне просто нет.Передайте задание уже админу, а? хватит руки кривить.
>> По поводу команды выше, пробовал, он скажет, что сделать не может, ведь
>> там на другом конце винда:)
>> А как ее там просать? В ini файле? К сожалению его полный
>> листинг показать не могу, я дома, а фряха на работе и
>> доступа к ней из вне просто нет.
> Передайте задание уже админу, а? хватит руки кривить.Так сказать может каждый, а вот подсказать или объяснить нет.
>>>> а этот nrpe.cfg точно с винды?
>>>> /usr/local/nagios/libexec/check_nrpe -H 192.168.1.4 -c check_users -w 5 -c 10 что покажет?
>>> Нет, нет это с freebsd.
>> комманду для nrpe надо прописывать на хосте
> По поводу команды выше, пробовал, он скажет, что сделать не может, ведь
> там на другом конце винда:)
> А как ее там просать? В ini файле? К сожалению его полный
> листинг показать не могу, я дома, а фряха на работе и
> доступа к ней из вне просто нет.У всех выполняет, у вас же не сможет)))
Покажите эти 2 файла с виндовой машины.
>[оверквотинг удален]
>>>>> /usr/local/nagios/libexec/check_nrpe -H 192.168.1.4 -c check_users -w 5 -c 10 что покажет?
>>>> Нет, нет это с freebsd.
>>> комманду для nrpe надо прописывать на хосте
>> По поводу команды выше, пробовал, он скажет, что сделать не может, ведь
>> там на другом конце винда:)
>> А как ее там просать? В ini файле? К сожалению его полный
>> листинг показать не могу, я дома, а фряха на работе и
>> доступа к ней из вне просто нет.
> У всех выполняет, у вас же не сможет)))
> Покажите эти 2 файла с виндовой машины./usr/local/nagios/libexec/check_nrpe -H 192.168.1.4 -c check_users -w 5 -c 10
Скажет ошибку на -w, что не знает такого ключа. Упростил до /usr/local/nagios/libexec/check_nrpe -H 192.168.1.4 -c check_users
Результат:
UNKNOWN: No handler for that command
По поводу nrpe.cfg с винды. Такого файла в клиенте NSCLIENT++ нету.
NSC.ini:
[modules]
NRPEListener.dll
NSClientListener.dll
NSCAAgent.dll
CheckWMI.dll
FileLogger.dll
CheckSystem.dll
CheckDisk.dll
CheckEventLog.dll
CheckHelpers.dll
;# NSCLIENT++ MODULES
;# A list with DLLs to load at startup.
; You will need to enable some of these for NSClient++ to work.
; ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
; * *
; * N O T I C E ! ! ! - Y O U H A V E T O E D I T T H I S *
; * *
; ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
;FileLogger.dll
;CheckSystem.dll
;CheckDisk.dll
;NSClientListener.dll
;NRPEListener.dll
;SysTray.dll
;CheckEventLog.dll
;CheckHelpers.dll
;CheckWMI.dll
;CheckNSCP.dll
;
; Script to check external scripts and/or internal aliases.
;CheckExternalScripts.dll
;
; NSCA Agent if you enable this NSClient++ will talk to NSCA hosts repeatedly (so dont enable unless you want to use NSCA)
;NSCAAgent.dll
;
; LUA script module used to write your own "check deamon".
;LUAScript.dll
;
; RemoteConfiguration IS AN EXTREM EARLY IDEA SO DONT USE FOR PRODUCTION ENVIROMNEMTS!
;RemoteConfiguration.dll
; Check other hosts through NRPE extreme beta and probably a bit dangerous! :)
;NRPEClient.dll
; Extreamly early beta of a task-schedule checker
;CheckTaskSched.dll[crash]
; Archive crash dump files if a crash is detected
;archive=1; Submit crash reports to a crash report server (this overrrides archive)
;submit=0; Restart service if a crash is detected
;restart=1[Settings]
;# OBFUSCATED PASSWORD
; This is the same as the password option but here you can store the password in an obfuscated manner.
; *NOTICE* obfuscation is *NOT* the same as encryption, someone with access to this file can still figure out the
; password. Its just a bit harder to do it at first glance.
;obfuscated_password=Jw0KAUUdXlAAUwASDAAB
;
;# PASSWORD
; This is the password (-s) that is required to access NSClient remotely. If you leave this blank everyone will be able to access the daemon remotly.
;password=secret-password
;
;# ALLOWED HOST ADDRESSES
; This is a comma-delimited list of IP address of hosts that are allowed to talk to the all daemons.
; If leave this blank anyone can access the deamon remotly (NSClient still requires a valid password).
; The syntax is host or ip/mask so 192.168.0.0/24 will allow anyone on that subnet access
;allowed_hosts=127.0.0.1/32
;
;# USE THIS FILE
; Use the INI file as opposed to the registry if this is 0 and the use_reg in the registry is set to 1
; the registry will be used instead.
use_file=1
allowed_hosts=10.10.10.20
password=test
;
; # USE SHARED MEMORY CHANNELS
; This is the "new" way for using the system tray based on an IPC framework on top shared memmory channels and events.
; It is brand new and (probably has bugs) so dont enable this unless for testing!
; If set to 1 shared channels will be created and system tray icons created and such and such...
;shared_session=0
[log]
;# LOG DEBUG
; Set to 1 if you want debug message printed in the log file (debug messages are always printed to stdout when run with -test)
;debug=1
;
;# LOG FILE
; The file to print log statements to
;file=nsclient.log
;
;# LOG DATE MASK
; The format to for the date/time part of the log entry written to file.
;date_mask=%Y-%m-%d %H:%M:%S
;
;# LOG ROOT FOLDER
; The root folder to use for logging.
; exe = the folder where the executable is located
; local-app-data = local application data (probably a better choice then the old default)
;root_folder=exe
[NSClient]
;# ALLOWED HOST ADDRESSES
; This is a comma-delimited list of IP address of hosts that are allowed to talk to NSClient deamon.
; If you leave this blank the global version will be used instead.
;allowed_hosts=
;
;# NSCLIENT PORT NUMBER
; This is the port the NSClientListener.dll will listen to.
;port=12489
;
;# BIND TO ADDRESS
; Allows you to bind server to a specific local address. This has to be a dotted ip adress not a hostname.
; Leaving this blank will bind to all avalible IP adresses.
;bind_to_address=
;
;# SOCKET TIMEOUT
; Timeout when reading packets on incoming sockets. If the data has not arrived withint this time we will bail out.
;socket_timeout=30[NRPE]
;# NRPE PORT NUMBER
; This is the port the NRPEListener.dll will listen to.
;port=5666
;
;# COMMAND TIMEOUT
; This specifies the maximum number of seconds that the NRPE daemon will allow plug-ins to finish executing before killing them off.
;command_timeout=60
;
;# COMMAND ARGUMENT PROCESSING
; This option determines whether or not the NRPE daemon will allow clients to specify arguments to commands that are executed.
allow_arguments=1
;
;# COMMAND ALLOW NASTY META CHARS
; This option determines whether or not the NRPE daemon will allow clients to specify nasty (as in |`&><'"\[]{}) characters in arguments.
;allow_nasty_meta_chars=0
;
;# USE SSL SOCKET
; This option controls if SSL should be used on the socket.
;use_ssl=1
;
;# BIND TO ADDRESS
; Allows you to bind server to a specific local address. This has to be a dotted ip adress not a hostname.
; Leaving this blank will bind to all avalible IP adresses.
; bind_to_address=
;
;# ALLOWED HOST ADDRESSES
; This is a comma-delimited list of IP address of hosts that are allowed to talk to NRPE deamon.
; If you leave this blank the global version will be used instead.
;allowed_hosts=
;
;# SCRIPT DIRECTORY
; All files in this directory will become check commands.
; *WARNING* This is undoubtedly dangerous so use with care!
;script_dir=scripts\
;
;# SOCKET TIMEOUT
; Timeout when reading packets on incoming sockets. If the data has not arrived withint this time we will bail out.
;socket_timeout=30[Check System]
;# CPU BUFFER SIZE
; Can be anything ranging from 1s (for 1 second) to 10w for 10 weeks. Notice that a larger buffer will waste memory
; so don't use a larger buffer then you need (ie. the longest check you do +1).
;CPUBufferSize=1h
;
;# CHECK RESOLUTION
; The resolution to check values (currently only CPU).
; The value is entered in 1/10:th of a second and the default is 10 (which means ones every second)
;CheckResolution=10
;
;# CHECK ALL SERVICES
; Configure how to check services when a CheckAll is performed.
; ...=started means services in that class *has* to be running.
; ...=stopped means services in that class has to be stopped.
; ...=ignored means services in this class will be ignored.
;check_all_services[SERVICE_BOOT_START]=ignored
;check_all_services[SERVICE_SYSTEM_START]=ignored
;check_all_services[SERVICE_AUTO_START]=started
;check_all_services[SERVICE_DEMAND_START]=ignored
;check_all_services[SERVICE_DISABLED]=stopped[External Script]
;# COMMAND TIMEOUT
; This specifies the maximum number of seconds that the NRPE daemon will allow plug-ins to finish executing before killing them off.
;command_timeout=60
;
;# COMMAND ARGUMENT PROCESSING
; This option determines whether or not the NRPE daemon will allow clients to specify arguments to commands that are executed.
;allow_arguments=0
;
;# COMMAND ALLOW NASTY META CHARS
; This option determines whether or not the NRPE daemon will allow clients to specify nasty (as in |`&><'"\[]{}) characters in arguments.
;allow_nasty_meta_chars=0
;
;# SCRIPT DIRECTORY
; All files in this directory will become check commands.
; *WARNING* This is undoubtedly dangerous so use with care!
;script_dir=c:\my\script\dir[Script Wrappings]
vbs=cscript.exe //T:30 //NoLogo scripts\lib\wrapper.vbs %SCRIPT% %ARGS%
ps1=cmd /c echo scripts\%SCRIPT% %ARGS%; exit($lastexitcode) | powershell.exe -command -
bat=scripts\%SCRIPT% %ARGS%[External Scripts]
;check_es_long=scripts\long.bat
;check_es_ok=scripts\ok.bat
;check_es_nok=scripts\nok.bat
;check_vbs_sample=cscript.exe //T:30 //NoLogo scripts\check_vb.vbs
;check_powershell_warn=cmd /c echo scripts\powershell.ps1 | powershell.exe -command -[External Alias]
alias_cpu=checkCPU warn=80 crit=90 time=5m time=1m time=30s
alias_cpu_ex=checkCPU warn=$ARG1$ crit=$ARG2$ time=5m time=1m time=30s
alias_mem=checkMem MaxWarn=80% MaxCrit=90% ShowAll=long type=physical type=virtual type=paged type=page
alias_up=checkUpTime MinWarn=1d MinWarn=1halias_disk=CheckDriveSize MinWarn=10% MinCrit=5% CheckAll FilterType=FIXED
alias_disk_loose=CheckDriveSize MinWarn=10% MinCrit=5% CheckAll FilterType=FIXED ignore-unreadable
alias_volumes=CheckDriveSize MinWarn=10% MinCrit=5% CheckAll=volumes FilterType=FIXED
alias_volumes_loose=CheckDriveSize MinWarn=10% MinCrit=5% CheckAll=volumes FilterType=FIXED ignore-unreadablealias_service=checkServiceState CheckAll
alias_service_ex=checkServiceState CheckAll "exclude=Net Driver HPZ12" "exclude=Pml Driver HPZ12" exclude=stisvc
alias_process=checkProcState "$ARG1$=started"
alias_process_stopped=checkProcState "$ARG1$=stopped"
alias_process_count=checkProcState MaxWarnCount=$ARG2$ MaxCritCount=$ARG3$ "$ARG1$=started"
alias_process_hung=checkProcState MaxWarnCount=1 MaxCritCount=1 "$ARG1$=hung"alias_event_log=CheckEventLog file=application file=system MaxWarn=1 MaxCrit=1 "filter=generated gt -2d AND severity NOT IN ('success', 'informational') AND source != 'SideBySide'" truncate=800 unique descriptions "syntax=%severity%: %source%: %message% (%count%)"
alias_file_size=CheckFiles "filter=size > $ARG2$" "path=$ARG1$" MaxWarn=1 MaxCrit=1 "syntax=%filename% %size%" max-dir-depth=10
alias_file_age=checkFile2 filter=out "file=$ARG1$" filter-written=>1d MaxWarn=1 MaxCrit=1 "syntax=%filename% %write%"alias_sched_all=CheckTaskSched "filter=exit_code ne 0" "syntax=%title%: %exit_code%" warn=>0
alias_sched_long=CheckTaskSched "filter=status = 'running' AND most_recent_run_time < -$ARG1$" "syntax=%title% (%most_recent_run_time%)" warn=>0
alias_sched_task=CheckTaskSched "filter=title eq '$ARG1$' AND exit_code ne 0" "syntax=%title% (%most_recent_run_time%)" warn=>0alias_updates=check_updates -warning 0 -critical 0
check_ok=CheckOK Everything is fine!
[Wrapped Scripts]
;check_test_vbs=check_test.vbs /arg1:1 /arg2:1 /variable:1
;check_test_ps1=check_test.ps1 arg1 arg2
;check_test_bat=check_test.bat arg1 arg2
;check_battery=check_battery.vbs
;check_printer=check_printer.vbs
;check_updates=check_updates.vbs
; [includes]
;# The order when used is "reversed" thus the last included file will be "first"
;# Included files can include other files (be carefull only do basic recursive checking)
;
; myotherfile.ini
; real.ini
[NSCA Agent]
;# CHECK INTERVALL (in seconds)
; How often we should run the checks and submit the results.
;interval=5
;
;# ENCRYPTION METHOD
; This option determines the method by which the send_nsca client will encrypt the packets it sends
; to the nsca daemon. The encryption method you choose will be a balance between security and
; performance, as strong encryption methods consume more processor resources.
; You should evaluate your security needs when choosing an encryption method.
;
; Note: The encryption method you specify here must match the decryption method the nsca daemon uses
; (as specified in the nsca.cfg file)!!
; Values:
; 0 = None (Do NOT use this option)
; 1 = Simple XOR (No security, just obfuscation, but very fast)
; 2 = DES
; 3 = 3DES (Triple DES)
; 4 = CAST-128
; 6 = xTEA
; 8 = BLOWFISH
; 9 = TWOFISH
; 11 = RC2
; 14 = RIJNDAEL-128 (AES)
; 20 = SERPENT
;encryption_method=14
;
;# ENCRYPTION PASSWORD
; This is the password/passphrase that should be used to encrypt the sent packets.
;password=
;
;# BIND TO ADDRESS
; Allows you to bind server to a specific local address. This has to be a dotted ip adress not a hostname.
; Leaving this blank will bind to "one" local interface.
; -- not supported as of now --
;bind_to_address=
;
;# LOCAL HOST NAME
; The name of this host (if empty "computername" will be used.
;hostname=
;
;# NAGIOS SERVER ADDRESS
; The address to the nagios server to submit results to.
;nsca_host=192.168.0.1
;
;# NAGIOS SERVER PORT
; The port to the nagios server to submit results to.
;nsca_port=5667
;;# CHECK COMMAND LIST
; The checks to run everytime we submit results back to nagios
; Any command(alias/key) starting with a host_ is sent as HOST_COMMAND others are sent as SERVICE_COMMANDS
; where the alias/key is used as service name.
;
[NSCA Commands]
;my_cpu_check=checkCPU warn=80 crit=90 time=20m time=10s time=4
;my_mem_check=checkMem MaxWarn=80% MaxCrit=90% ShowAll type=page
;my_svc_check=checkServiceState CheckAll exclude=wampmysqld exclude=MpfService
;host_check=check_ok;# REMOTE NRPE PROXY COMMANDS
; A list of commands that check other hosts.
; Used by the NRPECLient module
[NRPE Client Handlers]
;check_other=-H 192.168.0.1 -p 5666 -c remote_command -a arguments;# LUA SCRIPT SECTION
; A list of all Lua scripts to load.
;[LUA Scripts]
;scripts\test.lua
Продолжу.
[root@freebsdm]# /usr/local/nagios/libexec/check_nrpe -H 192.168.1.4 -c CheckCPU -a warn=80 crit=90 time=20m time=10s time=4
OK CPU Load ok.|'20m'=0%;80;90 '10s'=0%;80;90 '4'=0%;80;90
Работает. Но какого банана не пашет /usr/local/nagios/libexec/check_nrpe -H 192.168.1.4 -c check_pdm, я пока просто не понимаю.
> Продолжу.
> [root@freebsdm]# /usr/local/nagios/libexec/check_nrpe -H 192.168.1.4 -c CheckCPU -a
> warn=80 crit=90 time=20m time=10s time=4
> OK CPU Load ok.|'20m'=0%;80;90 '10s'=0%;80;90 '4'=0%;80;90
> Работает. Но какого банана не пашет /usr/local/nagios/libexec/check_nrpe -H 192.168.1.4
> -c check_pdm, я пока просто не понимаю.Бред. Почему так?
[root@freebsdm]# /usr/local/nagios/libexec/check_nrpe -H 192.168.1.4 -c check_pdm
MEMORY OK - Physical usage: 1227 MB (10% of 12226 MB)|'memory in use'=1227MB; 'memory usage'=10%;;; 'memory total'=12226MB;
Правлю nsc.ini:
[modules]
NRPEListener.dll
NSClientListener.dll
NSCAAgent.dll
CheckWMI.dll
FileLogger.dll
CheckSystem.dll
CheckDisk.dll
CheckEventLog.dll
CheckHelpers.dll
CheckExternalScripts.dll
[NRPE]
;# NRPE PORT NUMBER
; This is the port the NRPEListener.dll will listen to.
port=5666
;# COMMAND ARGUMENT PROCESSING
; This option determines whether or not the NRPE daemon will allow clients to specify arguments to commands that are executed.
allow_arguments=1
;# ALLOWED HOST ADDRESSES
; This is a comma-delimited list of IP address of hosts that are allowed to talk to NRPE deamon.
; If you leave this blank the global version will be used instead.
allowed_hosts=10.10.10.20
[External Scripts]
check_pdm=C:\check_pdm\check_pdm.exe --memory physicalДля чего тогда nrpe.cfg в freebsd?
>[оверквотинг удален]
> allow_arguments=1
> ;# ALLOWED HOST ADDRESSES
> ; This is a comma-delimited list of IP address of hosts
> that are allowed to talk to NRPE deamon.
> ; If you leave this blank the global version will be
> used instead.
> allowed_hosts=10.10.10.20
> [External Scripts]
> check_pdm=C:\check_pdm\check_pdm.exe --memory physical
> Для чего тогда nrpe.cfg в freebsd?Потому что вы с самого начала нифика ничего не поняли и понять не хотели!
> Потому что вы с самого начала нифика ничего не поняли и понять
> не хотели!Видимо жестко тупил ...
Теперь осталось все это дело привязать в Nagios.
Остался малый вопрос:
В NSC.ini оставляю только check_pdm=C:\check_pdm\check_pdm.exe
Далее настройка Нагиоса:
define service{
use generic-service
host_name WIN
service_description Memory physical
check_command check_nrpe!check_pdm!
}
define command{
command_name check_pdm
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -p 5666 -c check_pdm -s test
}
Как добавить сюда ключи --memory physical -w 90 -c 99? Хотя даже только ключ --memory physical
>[оверквотинг удален]
> host_name WIN
> service_description Memory physical
> check_command check_nrpe!check_pdm!
> }
> define command{
> command_name check_pdm
> command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -p 5666 -c check_pdm -s test
> }
> Как добавить сюда ключи --memory physical -w 90 -c 99? Хотя даже
> только ключ --memory physicalзачем параметры передавать с нагиоса? когда у вас уже комманда описана с параметром --memory physical в nsc.ini на винде!
не изобретайте велосипед!
> зачем параметры передавать с нагиоса? когда у вас уже комманда описана с
> параметром --memory physical в nsc.ini на винде!
> не изобретайте велосипед!Мне просто любопытно:) Ведь у остальных команд, например /usr/local/nagios/libexec/check_nrpe -H 192.168.1.4 -c CheckCPU -a warn=80 crit=90 time=20m time=10s time=4 мы же задаем аргументы, так и тут это возможно, как я понимаю ведь есть описание команды Usage: check_nrpe -H <host> [-n] [-u] [-p <port>] [-t <timeout>] [-c <command>] [-a <arglist...>]
Или я ошибаюсь и передать с Нагиоса аргументы удаленно выполняемой команде нельзя?
Кстати это не велосипед, а мониторинг, где все действия проводятся с центра, с минимальной модернизацией клиента. У меня серверов для мониторинга далеко за 50т :) Хочется поудобней сделать.
>[оверквотинг удален]
>> не изобретайте велосипед!
> Мне просто любопытно:) Ведь у остальных команд, например /usr/local/nagios/libexec/check_nrpe
> -H 192.168.1.4 -c CheckCPU -a warn=80 crit=90 time=20m time=10s time=4 мы
> же задаем аргументы, так и тут это возможно, как я понимаю
> ведь есть описание команды Usage: check_nrpe -H <host> [-n] [-u] [-p
> <port>] [-t <timeout>] [-c <command>] [-a <arglist...>]
> Или я ошибаюсь и передать с Нагиоса аргументы удаленно выполняемой команде нельзя?
> Кстати это не велосипед, а мониторинг, где все действия проводятся с центра,
> с минимальной модернизацией клиента. У меня серверов для мониторинга далеко за
> 50т :) Хочется поудобней сделать.Странно, но факт, в графическое отображение значения так и не выходят, в консоле же показывается все на ура.
>[оверквотинг удален]
>> не изобретайте велосипед!
> Мне просто любопытно:) Ведь у остальных команд, например /usr/local/nagios/libexec/check_nrpe
> -H 192.168.1.4 -c CheckCPU -a warn=80 crit=90 time=20m time=10s time=4 мы
> же задаем аргументы, так и тут это возможно, как я понимаю
> ведь есть описание команды Usage: check_nrpe -H <host> [-n] [-u] [-p
> <port>] [-t <timeout>] [-c <command>] [-a <arglist...>]
> Или я ошибаюсь и передать с Нагиоса аргументы удаленно выполняемой команде нельзя?
> Кстати это не велосипед, а мониторинг, где все действия проводятся с центра,
> с минимальной модернизацией клиента. У меня серверов для мониторинга далеко за
> 50т :) Хочется поудобней сделать.ну судя по всему клиента вам и так уже придется модернизировать на всех 50т серверах.
т.к. вы думали что нагиос на фре будет через nrpe исполнять виндовые комманды )))$ cat /usr/local/etc/nagios/objects/commands.cfg
define command{
command_name check_nrpe2
command_line $USER1$/check_nrpe2 -c $ARG1$ -H $ARG2$
}
видите комманду check_nrpe2?
аргументы её видите?
-c 'комманда' -H ип_хоста_для_на_котором_запустится_комманда
define service{
use local-service
host_name host
service_description Current Load
check_command check_nrpe2!check_load!xx.xx.xx.xx
}дальше описывать? или у вас ещё до сих пор просветление не наступило?
>[оверквотинг удален]
> host_name
>
> host
> service_description
> Current Load
> check_command
>
> check_nrpe2!check_load!xx.xx.xx.xx
> }
> дальше описывать? или у вас ещё до сих пор просветление не наступило?Не дошло ... До Nagiosа видимо тоже ... (No output returned from plugin). Кстати почему check_nrpe2? Если через него команды в консоли выполнять то будет выдаваться - CHECK_NRPE: Error receiving data from daemon.
>[оверквотинг удален]
>> service_description
>> Current Load
>> check_command
>>
>> check_nrpe2!check_load!xx.xx.xx.xx
>> }
>> дальше описывать? или у вас ещё до сих пор просветление не наступило?
> Не дошло ... До Nagiosа видимо тоже ... (No output returned from
> plugin). Кстати почему check_nrpe2? Если через него команды в консоли выполнять
> то будет выдаваться - CHECK_NRPE: Error receiving data from daemon.есть nrpe есть nrpe2. у меня стоит nrpe2...
$ pkg_info | grep nrpe
nrpe-2.13 Nagios Remote Plugin ExecutorЧо вы занимаетесь ерундой, не понимая вообще чо делаете!
Всё я больше не буду разгребать вашу неграмотность ) Бай бай!
>[оверквотинг удален]
>>> дальше описывать? или у вас ещё до сих пор просветление не наступило?
>> Не дошло ... До Nagiosа видимо тоже ... (No output returned from
>> plugin). Кстати почему check_nrpe2? Если через него команды в консоли выполнять
>> то будет выдаваться - CHECK_NRPE: Error receiving data from daemon.
> есть nrpe есть nrpe2. у меня стоит nrpe2...
> $ pkg_info | grep nrpe
> nrpe-2.13 Nagios
> Remote Plugin Executor
> Чо вы занимаетесь ерундой, не понимая вообще чо делаете!
> Всё я больше не буду разгребать вашу неграмотность ) Бай бай!Все:) Разобрался. В итоге от плагина этого решил отказаться напрочь и использовать стандартные средства.
Итого:
commands.cfg
define command{
command_name check_memory_physical
command_line /usr/local/nagios/libexec/check_nrpe -H $HOSTADDRESS$ -p 5666 -c CheckMem -a ShowAll=long type=physical MaxWarn=$ARG1$% MaxCrit=$ARG2$%
}
windows.cfg
define service{
use generic-service
host_name WIN
service_description Physical Memory
check_command check_memory_physical!95!99!
}
На выходе имеем:
OK: physical memory: Total: 11.9G - Used: 1.2G (10%) - Free: 10.7G (90%)
Большое спасибо за намеки и направления куда надо, Вам надо работать учителем, очень хорошо получается :)
Проблема кстати была в том, что надо было указывать полностью путь /usr/local/nagios/libexec/check_nrpe, те же тесты указывали на это)
фаааааааааантастика )