Achieving fully hands-off deployment of an Icinga 2 cluster using Puppet
2020-02-03, 14:50–15:40, B.2.009

Although some excellent Puppet modules are provided for deploying Icinga 2, gluing everything together into a cluster with multiple satellite zones and redundancy can still be challenging, as you still need to provide the right configuration, endpoints, ... to each additional node.

This talk will introduce some techniques we use to automate this process as much as possible. By leveraging PuppetDB queries, custom Puppet functions, etc. we can achieve a level of automation where new nodes can automatically discover the endpoints they need, and bootstrapping additional satellites is as easy as flipping a feature toggle.

Additionally, techniques for leveraging Icinga 2 apply rules as much as possible are introduced, in order to define thousands of services without the need for superfluous exported resources. This means we can reduce the stress on PuppetDB, which results in a high-performance, highly scalable setup overall.