|
|
RE: Setting up service dependencies: msg#00392
network.nagios.user
|
Subject: |
RE: Setting up service dependencies |
It's not A Bad Thing per se; given the example of a host behind a
firewall with a hole at port 80 poked through it, it would certainly have
merit. But in the case where your webserver fails but, say, sshd is still
up, can the host be said to be down?
Just to say that I gave you a servicedependency example, here it
is:
define service{
host_name
itdmll01
use
icmp
service_description
NRPE check
contact_groups
linux-admins
check_command
check_nrpe!check_nrpe_status
}
define service{
host_name
itdmll01
use
icmp
service_description
Total Users
contact_groups
linux-admins
check_command
check_nrpe!check_users } define
servicedependency{
dependent_host_name
itdmll01
dependent_service_description Total
Users
host_name
itdmll01
service_description
NRPE check
execution_failure_criteria
w,u,c
notification_failure_criteria
w,u,c }
Explanation: "NRPE check" is the basic 'is NRPE up' check.
"Total Users" actually kicks off a plugin on the remote host. "Total
Users" is dependent on "NRPE check". If "Total Users" fails, it checks to
make sure that "NRPE check" is up/down. If the latter is down, that's all
I get alerted on. If it's still up, then I get alerted on the
former.
Does this help?
jc
I
think I found a workaround for this. For some servers, like webservers most of
the services are some form of HTTP request, so I changed the check_command on
the host to do a simple http request. If that fails, then the host is
considered 'down' rather than just using the standard ping check. If this is
'bad' for some reason, please let me know.
second question: is it possible to pass arbitrary ssh parameters
to check_ssh, like "-1" for ssh v1? Doesn't appear so, but maybe there's a
trick?
Jeff
I've looked at the examples that come with nagios and they don't seem
to address the problem of using hostgroups versus hosts. I'm not using NPRE,
but if you have examples using hostgroups, I'd love to see
them.
Jeff
That's different. You'll want to set up a
service dependency, of course.
Er... do you absolutely need to check for static
HTML? I mean, if the PHP fails because the webserver is
down.... Oh, unless you just want to be informed that there's a PHP
problem but that the server itself it still up. Okay, I can see
that.
I've set up various NRPE dependencies at our site, so
if you need a trivial example, I can post one to the list. Let me
know.
jc
That's good to know. I still have this issue though because I
have some tests that aren't going work if simpler tests fail. For
example, a simple test to see if a webserver can serve a static HTML can
fail, and if that's the case then checking to see if the webserver will
return a PHP page is obviously not going to work.
Jeff
I'm not sure why you're taking this
approach. Out of the box, Nagios will behave as you wish it
to.
If a service check fails, then a host check is
made. If the host check fails, it's flagged as down and,
depending on your particular configuration, you'll receive the
notification for the host being down, not for the N services you're
monitoring on that host. If the host check passes, then you'll
get an alert on the service.
jc
Hello all,
I'm trying to set up service dependencies
in Nagios. For example, I don't want alerts about an HTTP service
being down on a host if the host isn't pingable.
So far, the only way I've found to do
this is to set it up for each host individually. That would be
difficult with the hundreds of hosts that my nagios is currently
monitoring.
I tried creating a servicedependency
object with a hostgroup_name and a dependent_hostgroup_name. This
seems to make each host in hostgroup_name dependent on EVERY host in
dependent_hostgroup_name. For example, if my hostgroup has 7 hosts
in it, it seems it's making each of those 7 hosts dependent on each
other, making 7x7=49 dependencies. (Stragely, Nagios reports 98
dependencies. Why 2x?)
Any suggestions on how to make a service
dependencies local to each host and not a group of hosts without
lots and lots of dependency objects?
Jeff
|
|