Using inheritance to simplify configuration
In this recipe, we'll learn how to use inheritance to handle the situation where hosts and services share a lot of values in common, amounting to a large amount of undesirable redundancy in configuration.
Some Nagios Core objects, particularly hosts and services, have a rather long list of possible directives, and the default values for these are not always suitable. It's therefore worthwhile to be able to declare the values you want for these directives once, and then spend only a few lines on the actual host definition by copying those values from a template, making the configuration shorter and easier to read.
Previous examples in this book have already demonstrated the use of this in suggesting you inherit from the linux-server
host template or the generic-service
service template, for the sake of brevity; in this example, we'll define our own templates, and show how these can be used to streamline a configuration.
Getting ready
You will need...