I have a question on inheritance, specifically on contact inheritance from service templates.
The scenario that we have internally is that we have a Nagios XI setup (Nagios XI 5.4.13) on CentOS 6.9 that is monitoring a majority of our footprint, however recently our company has acquired a handful of companies internationally that have been migrated into our US datacenter. The problem lies in the original admin that set up our Nagios XI installation did not account for acquisitions and the need to alert other contacts in a Infrastructure as a Service setup.
I have reviewed the Object inheritance documentation at https://assets.nagios.com/downloads/nag ... tions.html
Our setup currently is we have host objects that inherit an icmp check from a host template as well as the alert contact groups, nothing more. The host name and address are assigned on the host object locally as well as the host groups that it will belong to. From there any services are assigned to the host group to filter down to the hosts in the host group.
For our service setup, we have a service template that defines the check intervals/retries/alerts and contact groups for the service along with the notification period. The issue here is that the acquisition has a different email domain and should not see our core alerts, and we should not see their alerts via email. We are fine with them appearing in the service and host detail in the Nagios XI interface.
In an attempt to use the same services but alert the appropriate parties I have assigned the contacts for the new company on their host object and applied a new host template that does the icmp check and defines the notification period, however it does not define contacts or contact groups. My understanding of inheritance is that it would pick up the locally defined contacts on the host object to use for any host alerts. For our service checks, I did much of the same. I created a service template that defines the check inteval and does not have any contacts assigned on the template. Additionally, the service object themselves do not have contacts assigned. My understanding, which may be wrong, is that the contacts on the host object would be used for the service notifications.
I believe my issue may be with precedence in multiple inheritance sources as I am trying to use a handful of base Windows Server checks we have established to check both our core (legacy) environment hosts and the newly acquired and migrated hosts. For instance, doing a drive utilization check, I have assigned both our existing service template (A), defining contacts and intervals, AND the newly created service template (B) that does not define contacts. I have placed the new (B) service template above the existing (A) template in the service object definition. The inheritance settings are set to Standard.
I may be misunderstanding, however I thought that a service check would come to the host and using the new (B) template inherit the locally defined contacts on the host object for alerting, however it will only alert the contacts on the legacy, pre-existing (A) template which, in turn, is sending alerts for the new hosts to our legacy contacts.
My question is: Is it possible to be able to use this one service to monitor both the legacy and newly acquired hosts without a major overhaul of our legacy monitoring schema? Is having the legacy template (A) on the service object inheriting the contacts even though the new service template is above it in precedence? Or, is this a matter of getting the inheritance settings set up in a different way to allow this alerting to happen without a major overhaul?
A question on inheritance
-
scottwilkerson
- DevOps Engineer
- Posts: 19396
- Joined: Tue Nov 15, 2011 3:11 pm
- Location: Nagios Enterprises
- Contact:
Re: A question on inheritance
I'm not 100% sure, but I believe this falls into a bug that was corrected in Core 4.3.4 and would apply to XI 5.5.x
https://github.com/NagiosEnterprises/na ... /issues/87
So in short, an upgrade may likely fix the issue, provided you are not using mod_gearman which required keeping Core at 4.2.4 for the time being.
https://github.com/NagiosEnterprises/na ... /issues/87
So in short, an upgrade may likely fix the issue, provided you are not using mod_gearman which required keeping Core at 4.2.4 for the time being.
Re: A question on inheritance
Thank you for the reply, Scott. I'll schedule an update of our installation and report back as soon as I can.
-
scottwilkerson
- DevOps Engineer
- Posts: 19396
- Joined: Tue Nov 15, 2011 3:11 pm
- Location: Nagios Enterprises
- Contact:
Re: A question on inheritance
Sounds gooddfaenza wrote:Thank you for the reply, Scott. I'll schedule an update of our installation and report back as soon as I can.