Page 1 of 1

Nagios Status unknow Usage:

Posted: Tue Apr 07, 2015 7:30 am
by EKGniels
I run nagios server on debian and i am monitoring a windows machine.
after configuration nagios says:

C:\drivespace UNKNOWN Usage:

and then nothing can someone help me thank you.

Re: Nagios Status unknow Usage:

Posted: Tue Apr 07, 2015 12:24 pm
by jdalrymple
We need a LOT more information.

At a minimum send us your service definition. If you've customized your command definition we'll want that also. If you're using nsclient - what version and you may wish to send us your nsc.ini or nsclient.ini. Obfuscate any passwords that you send us.

Re: Nagios Status unknow Usage:

Posted: Wed Apr 08, 2015 4:06 am
by EKGniels
Hey sorry for the short information here is more:

The problem is : CPU load UNKNOWN 2015-04-08 07:34:03 0d 5h 52m 57s 4/4 Usage:

Nagios Core : 3.4.1
NSclient++: 4.3.131

I am running nagios core on linux debian and i am monitoring a windows server

my windows.cfg:

Code: Select all

###############################################################################
# WINDOWS.CFG - SAMPLE CONFIG FILE FOR MONITORING A WINDOWS MACHINE
#
#
# NOTES: This config file assumes that you are using the sample configuration
#	 files that get installed with the Nagios quickstart guide.
#
###############################################################################




###############################################################################
###############################################################################
#
# HOST DEFINITIONS
#
###############################################################################
###############################################################################

# Define a host for the Windows machine we'll be monitoring
# Change the host_name, alias, and address to fit your situation

define host{
	use		windows-server	; Inherit default values from a template
	host_name	sharepoint	; The name we're giving to this host
	alias		My Windows Server	; A longer name associated with the host
	address		10.10.0.12	; IP address of the host
	}




###############################################################################
###############################################################################
#
# HOST GROUP DEFINITIONS
#
###############################################################################
###############################################################################


# Define a hostgroup for Windows machines
# All hosts that use the windows-server template will automatically be a member of this group

define hostgroup{
	hostgroup_name	windows-servers	; The name of the hostgroup
	alias		Windows Servers	; Long name of the group
	}




###############################################################################
###############################################################################
#
# SERVICE DEFINITIONS
#
###############################################################################
###############################################################################

# Create a service for monitoring CPU load Change the host_name to match the name of the host you defined above

define service{
	use			generic-service
	host_name		sharepoint
	service_description	CPU Load
	check_command		checkCPULOAD
	}
my nt.cfg:

Code: Select all

# If you are confused about this command definition, cause you was
# reading other suggestions, please have a look into
# /usr/share/doc/nagios-plugins/README.Debian

# 'check_nt' command definition
define command {
	command_name    check_nt
	command_line    /usr/lib/nagios/plugins/check_nt -H $HOSTADDRESS$ -p 12489 -S Mypassword -v $ARG1$ $ARG2$
}

# 'check_nscp' command definition
define command {
	command_name	check_nscp
	command_line	/usr/lib/nagios/plugins/check_nt -H $HOSTADDRESS$ -p 12489 -S Mypassword -v $ARG1$ $ARG2$
}

#cpuload 
define command {
	command_name 	checkCPULOAD
	command_line	/usr/lib/nagios/plugins/check_nt -H $HOSTADDRESS$ -p 12489 -S Mypassword -v CPULOAD -l 5,80,90
}
NSclient.ini :

Code: Select all

# If you want to fill this file with all avalible options run the following command:
#   nscp settings --generate --add-defaults --load-all
# If you want to activate a module and bring in all its options use:
#   nscp settings --activate-module <MODULE NAME> --add-defaults
# For details run: nscp settings --help

allowed_hosts =10.10.0.193
password =Mypassword
port =12489

; Undocumented section
[/settings/NRPE/server]

; VERIFY MODE - Comma separated list of verification flags to set on the SSL socket.  default-workarounds	Various workarounds for what I understand to be broken ssl implementations no-sslv2	Do not use the SSLv2 protocol. no-sslv3	Do not use the SSLv3 protocol. no-tlsv1	Do not use the TLSv1 protocol. single-dh-use	Always create a new key when using temporary/ephemeral DH parameters. This option must be used to prevent small subgroup attacks, when the DH parameters were not generated using "strong" primes (e.g. when using DSA-parameters).   
ssl options = no-sslv2,no-sslv3

; VERIFY MODE - Comma separated list of verification flags to set on the SSL socket.  none	The server will not send a client certificate request to the client, so the client will not send a certificate. peer	The server sends a client certificate request to the client and the certificate returned (if any) is checked. fail-if-no-cert	if the client did not return a certificate, the TLS/SSL handshake is immediately terminated. This flag must be used together with peer. peer-cert	Alias for peer and fail-if-no-cert. workarounds	Various bug workarounds. single	Always create a new key when using tmp_dh parameters. client-once	Only request a client certificate on the initial TLS/SSL handshake. This flag must be used together with verify-peer   
verify mode = peer-cert

; ALLOW INSECURE CHIPHERS and ENCRYPTION - Only enable this if you are using legacy check_nrpe client.
insecure = treu


; Undocumented section
[/modules]

  NRPEServer - A server that listens for incoming NRPE connection and processes incoming requests.
NRPEServer = 1

  CheckSystem - Various system related checks, such as CPU load, process state, service state memory usage and PDH counters.
CheckSystem = 1

  NSClientServer - A server that listens for incoming check_nt connection and processes incoming requests.
NSClientServer = 1

  CheckExternalScripts - Execute external scripts
CheckExternalScripts = 1

  CheckHelpers - Various helper function to extend other checks.
CheckHelpers = 1

  CheckEventLog - Check for errors and warnings in the event log.
CheckEventLog = 1

  CheckNSCP - Use this module to check the healt and status of NSClient++ it self
CheckNSCP = 1

  CheckDisk - CheckDisk can check various file and disk related things.
CheckDisk = 1


; A list of templates for wrapped scripts.
%SCRIPT% will be replaced by the actual script an %ARGS% will be replaced by any given arguments.
[/settings/external scripts/wrappings]

; POWERSHELL WRAPPING - 
ps1 = cmd /c echo scripts\\%SCRIPT% %ARGS%; exit($lastexitcode) | powershell.exe -command -

; BATCH FILE WRAPPING - 
bat = scripts\\%SCRIPT% %ARGS%

; VISUAL BASIC WRAPPING - 
vbs = cscript.exe //T:30 //NoLogo scripts\\lib\\wrapper.vbs %SCRIPT% %ARGS%


; A list of aliases available.
An alias is an internal command that has been predefined to provide a single command without arguments. Be careful so you don't create loops (ie check_loop=check_a, check_a=check_loop)
[/settings/external scripts/alias]

; alias_volumes_loose - Alias for alias_volumes_loose. To configure this item add a section called: /settings/external scripts/alias/alias_volumes_loose
alias_volumes_loose = check_drivesize

; alias_volumes - Alias for alias_volumes. To configure this item add a section called: /settings/external scripts/alias/alias_volumes
alias_volumes = check_drivesize

; alias_up - Alias for alias_up. To configure this item add a section called: /settings/external scripts/alias/alias_up
alias_up = check_uptime

; alias_sched_all - Alias for alias_sched_all. To configure this item add a section called: /settings/external scripts/alias/alias_sched_all
alias_sched_all = check_tasksched show-all "syntax=${title}: ${exit_code}" "crit=exit_code ne 0"

; alias_process_stopped - Alias for alias_process_stopped. To configure this item add a section called: /settings/external scripts/alias/alias_process_stopped
alias_process_stopped = check_process "process=$ARG1$" "crit=state != 'stopped'"

; alias_service - Alias for alias_service. To configure this item add a section called: /settings/external scripts/alias/alias_service
alias_service = check_service

; alias_process_hung - Alias for alias_process_hung. To configure this item add a section called: /settings/external scripts/alias/alias_process_hung
alias_process_hung = check_process "filter=is_hung" "crit=count>0"

; alias_process_count - Alias for alias_process_count. To configure this item add a section called: /settings/external scripts/alias/alias_process_count
alias_process_count = check_process "process=$ARG1$" "warn=count > $ARG2$" "crit=count > $ARG3$"

; alias_process - Alias for alias_process. To configure this item add a section called: /settings/external scripts/alias/alias_process
alias_process = check_process "process=$ARG1$" "crit=state != 'started'"

; alias_mem - Alias for alias_mem. To configure this item add a section called: /settings/external scripts/alias/alias_mem
alias_mem = check_memory

; alias_file_size - Alias for alias_file_size. To configure this item add a section called: /settings/external scripts/alias/alias_file_size
alias_file_size = check_files "path=$ARG1$" "crit=size > $ARG2$" "top-syntax=${list}" "detail-syntax=${filename] ${size}" max-dir-depth=10

; alias_disk - Alias for alias_disk. To configure this item add a section called: /settings/external scripts/alias/alias_disk
alias_disk = check_drivesize

; alias_cpu_ex - Alias for alias_cpu_ex. To configure this item add a section called: /settings/external scripts/alias/alias_cpu_ex
alias_cpu_ex = check_cpu "warn=load > $ARG1$" "crit=load > $ARG2$" time=5m time=1m time=30s

; alias_file_age - Alias for alias_file_age. To configure this item add a section called: /settings/external scripts/alias/alias_file_age
alias_file_age = check_files "path=$ARG1$" "crit=written > $ARG2$" "top-syntax=${list}" "detail-syntax=${filename] ${written}" max-dir-depth=10

; alias_cpu - Alias for alias_cpu. To configure this item add a section called: /settings/external scripts/alias/alias_cpu
alias_cpu = check_cpu

; alias_event_log - Alias for alias_event_log. To configure this item add a section called: /settings/external scripts/alias/alias_event_log
alias_event_log = check_eventlog

; alias_service_ex - Alias for alias_service_ex. To configure this item add a section called: /settings/external scripts/alias/alias_service_ex
alias_service_ex = check_service "exclude=Net Driver HPZ12" "exclude=Pml Driver HPZ12" exclude=stisvc

; alias_disk_loose - Alias for alias_disk_loose. To configure this item add a section called: /settings/external scripts/alias/alias_disk_loose
alias_disk_loose = check_drivesize

; alias_sched_task - Alias for alias_sched_task. To configure this item add a section called: /settings/external scripts/alias/alias_sched_task
alias_sched_task = check_tasksched show-all "filter=title eq '$ARG1$'" "detail-syntax=${title} (${exit_code})" "crit=exit_code ne 0"

; alias_sched_long - Alias for alias_sched_long. To configure this item add a section called: /settings/external scripts/alias/alias_sched_long
alias_sched_long = check_tasksched "filter=status = 'running'" "detail-syntax=${title} (${most_recent_run_time})" "crit=most_recent_run_time < -$ARG1$"
Do you need more information please ask me

Re: Nagios Status unknow Usage:

Posted: Wed Apr 08, 2015 12:42 pm
by jdalrymple
Change "-S" to "-s" in each of the following:
EKGniels wrote:

Code: Select all

# 'check_nt' command definition
define command {
	command_name    check_nt
	command_line    /usr/lib/nagios/plugins/check_nt -H $HOSTADDRESS$ -p 12489 -S Mypassword -v $ARG1$ $ARG2$
}

# 'check_nscp' command definition
define command {
	command_name	check_nscp
	command_line	/usr/lib/nagios/plugins/check_nt -H $HOSTADDRESS$ -p 12489 -S Mypassword -v $ARG1$ $ARG2$
}

#cpuload 
define command {
	command_name 	checkCPULOAD
	command_line	/usr/lib/nagios/plugins/check_nt -H $HOSTADDRESS$ -p 12489 -S Mypassword -v CPULOAD -l 5,80,90
}
Probably isn't hurting anything, but can't hurt to fix the spelling:
EKGniels wrote: NSclient.ini :

Code: Select all

; ALLOW INSECURE CHIPHERS and ENCRYPTION - Only enable this if you are using legacy check_nrpe client.
insecure = treu

Re: Nagios Status unknow Usage:

Posted: Thu Apr 09, 2015 2:29 am
by EKGniels
Thank you for the quick reaction.
I have done what you have said but now i am getting:

CPU load WARNING 2015-04-09 07:23:14 0d0h4m52s 4/4 could not fetch information from server

Also in the nsclient log he is saying now:
Rejected connection from: 10.10.0.193

Re: Nagios Status unknow Usage:

Posted: Thu Apr 09, 2015 1:51 pm
by tgriep
In your nsclient.ini file on your windows system, edit it and change the following from

Code: Select all

allowed_hosts =10.10.0.193
to

Code: Select all

allowed hosts = 10.10.0.193
Save the file out and restart the nscliect++ service.

The underscore in the names are for the old version of Nsclient++, the new versions doesn't use them.

Re: Nagios Status unknow Usage:

Posted: Mon Apr 13, 2015 3:37 am
by EKGniels
i have done the change but it looks like the service is flapping between OK and could not fetch information from server

#edit#

i added an other windows server this one is doing perfect. I really want to thank both of you for all your help.

Re: Nagios Status unknow Usage:

Posted: Mon Apr 13, 2015 11:05 am
by ssax
I'm glad that it's working for you now, can we go ahead and mark this as resolved and lock the ticket?

Re: Nagios Status unknow Usage:

Posted: Wed Apr 15, 2015 2:25 am
by EKGniels
Sure go ahead.

Thanks again