This answer will not cover third-party monitoring addins like nagstamon or the firefox nagios plugin, because it will vary wildly.
A few ways that I can think of off the top of my head:
- Disable host checks for the server. However, this will leave the host in a permanent state of "UP", and services will begin to alert.
- Constantly set floating downtime. Floating downtime starts the next time the host is seen "DOWN" and runs for the duration you specify. You could perhaps do this with a cronjob issuing the "SCHEDULE_HOST_DOWNTIME" for 2 floating hours every two hours. ( See NAGIOS Developer - External Commands ).
Schedule downtime for the host and all services (see above link).
What you could also do is put service dependencies to use. If you check the host via PING, then add a PING service, and a service_dependency for all other services on that host to depend on PING, and then shut the ping notifications off. This will look something like;
define servicedependency {
dependent_host_name flaky_biscuit
dependent_service_description service1, service2, service3, service4, service5
host_name flaky_biscuit
service_description PING
execution_failure_criteria w,u,c
notification_failure_criteria w,u,c
}
What this means in essence is that when PING is in warning, unknown or critical, PING will notify, none of the dependent services will. (And again, shut notifications off for PING!) Also, when PING is in warning, unknown, or critical state, the dependent services will not even execute.
I can't speak for NagStaMon, but the Firefox NAGIOS plugin has preferences that essentially says "ignore acknowledged services", meaning that if you acknowledge or schedule a service in downtime, have notifications off, or any other modification to a service, it will not render as "warning/critical" in the status bar even if it's in that state. I don't know what NagStaMon does or doesn't have in this manner.