SlideShare a Scribd company logo
1 of 70
Download to read offline
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Deploying Icinga2 through Ansible
Monitoring migration through automation
Toshaan Bharvani - VanTosh bvba
<toshaan@vantosh.com>
Icinga Camp Amsterdam 2016
28 June 2016
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 1 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
$ whoami
Toshaan Bharvani - VanTosh
• From Antwerp, Belgium
• Self-employed engineer, trainer, consultant,
http://www.vantosh.com
• Involved with Enterprise OS : PEL, RHEL, CentOS, IBM AIX,
OpenBSD, FreeBSD, SLES, . . .
• Likes to keep everything secure : SELinux, WebSec, . . .
• Lives in a virtual world : KVM, Xen, LXC, PowerVM, z/VM, . . .
• Likes automation : Ansible, Puppet, Salt
• Works on both hardware and software side
• Wants to take over the world
• Twitter : @toshywoshy
• Blog : http://www.toshaan.com
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 2 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Table of contents
1 Monitoring
2 Automation
Inventory
Virtual Machines
3 Icinga2
Icinga2 Masters
Icinga2 Clients
4 Conclusion
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 3 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
1
Monitoring
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 4 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Monitoring
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 5 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Choices
• Nagios
• Well know, good for smaller install base
• Zenoss
• Big coupled project without any cohesion
• Zabbix
• Distributed, all-in-one solution, good
• Ganglia
• RRD as static, web interface is dated
• Icinga
• Better web interface with nagios forked backend
• OpsView
• Fancier web interface which is liked by managers, nagios forked
• Shinken
• Distributed, modular, good for smal install base
• Icinga2
• Distributed, better scalability, better interface, modular and
integrations
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Choices
• Nagios
• Well know, good for smaller install base
• Zenoss
• Big coupled project without any cohesion
• Zabbix
• Distributed, all-in-one solution, good
• Ganglia
• RRD as static, web interface is dated
• Icinga
• Better web interface with nagios forked backend
• OpsView
• Fancier web interface which is liked by managers, nagios forked
• Shinken
• Distributed, modular, good for smal install base
• Icinga2
• Distributed, better scalability, better interface, modular and
integrations
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Choices
• Nagios
• Well know, good for smaller install base
• Zenoss
• Big coupled project without any cohesion
• Zabbix
• Distributed, all-in-one solution, good
• Ganglia
• RRD as static, web interface is dated
• Icinga
• Better web interface with nagios forked backend
• OpsView
• Fancier web interface which is liked by managers, nagios forked
• Shinken
• Distributed, modular, good for smal install base
• Icinga2
• Distributed, better scalability, better interface, modular and
integrations
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Choices
• Nagios
• Well know, good for smaller install base
• Zenoss
• Big coupled project without any cohesion
• Zabbix
• Distributed, all-in-one solution, good
• Ganglia
• RRD as static, web interface is dated
• Icinga
• Better web interface with nagios forked backend
• OpsView
• Fancier web interface which is liked by managers, nagios forked
• Shinken
• Distributed, modular, good for smal install base
• Icinga2
• Distributed, better scalability, better interface, modular and
integrations
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Choices
• Nagios
• Well know, good for smaller install base
• Zenoss
• Big coupled project without any cohesion
• Zabbix
• Distributed, all-in-one solution, good
• Ganglia
• RRD as static, web interface is dated
• Icinga
• Better web interface with nagios forked backend
• OpsView
• Fancier web interface which is liked by managers, nagios forked
• Shinken
• Distributed, modular, good for smal install base
• Icinga2
• Distributed, better scalability, better interface, modular and
integrations
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Choices
• Nagios
• Well know, good for smaller install base
• Zenoss
• Big coupled project without any cohesion
• Zabbix
• Distributed, all-in-one solution, good
• Ganglia
• RRD as static, web interface is dated
• Icinga
• Better web interface with nagios forked backend
• OpsView
• Fancier web interface which is liked by managers, nagios forked
• Shinken
• Distributed, modular, good for smal install base
• Icinga2
• Distributed, better scalability, better interface, modular and
integrations
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Choices
• Nagios
• Well know, good for smaller install base
• Zenoss
• Big coupled project without any cohesion
• Zabbix
• Distributed, all-in-one solution, good
• Ganglia
• RRD as static, web interface is dated
• Icinga
• Better web interface with nagios forked backend
• OpsView
• Fancier web interface which is liked by managers, nagios forked
• Shinken
• Distributed, modular, good for smal install base
• Icinga2
• Distributed, better scalability, better interface, modular and
integrations
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Choices
• Nagios
• Well know, good for smaller install base
• Zenoss
• Big coupled project without any cohesion
• Zabbix
• Distributed, all-in-one solution, good
• Ganglia
• RRD as static, web interface is dated
• Icinga
• Better web interface with nagios forked backend
• OpsView
• Fancier web interface which is liked by managers, nagios forked
• Shinken
• Distributed, modular, good for smal install base
• Icinga2
• Distributed, better scalability, better interface, modular and
integrations
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Choices
• Nagios
• Well know, good for smaller install base
• Zenoss
• Big coupled project without any cohesion
• Zabbix
• Distributed, all-in-one solution, good
• Ganglia
• RRD as static, web interface is dated
• Icinga
• Better web interface with nagios forked backend
• OpsView
• Fancier web interface which is liked by managers, nagios forked
• Shinken
• Distributed, modular, good for smal install base
• Icinga2
• Distributed, better scalability, better interface, modular and
integrations
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Choices
• Nagios
• Well know, good for smaller install base
• Zenoss
• Big coupled project without any cohesion
• Zabbix
• Distributed, all-in-one solution, good
• Ganglia
• RRD as static, web interface is dated
• Icinga
• Better web interface with nagios forked backend
• OpsView
• Fancier web interface which is liked by managers, nagios forked
• Shinken
• Distributed, modular, good for smal install base
• Icinga2
• Distributed, better scalability, better interface, modular and
integrations
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Choices
• Nagios
• Well know, good for smaller install base
• Zenoss
• Big coupled project without any cohesion
• Zabbix
• Distributed, all-in-one solution, good
• Ganglia
• RRD as static, web interface is dated
• Icinga
• Better web interface with nagios forked backend
• OpsView
• Fancier web interface which is liked by managers, nagios forked
• Shinken
• Distributed, modular, good for smal install base
• Icinga2
• Distributed, better scalability, better interface, modular and
integrations
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Choices
• Nagios
• Well know, good for smaller install base
• Zenoss
• Big coupled project without any cohesion
• Zabbix
• Distributed, all-in-one solution, good
• Ganglia
• RRD as static, web interface is dated
• Icinga
• Better web interface with nagios forked backend
• OpsView
• Fancier web interface which is liked by managers, nagios forked
• Shinken
• Distributed, modular, good for smal install base
• Icinga2
• Distributed, better scalability, better interface, modular and
integrations
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Choices
• Nagios
• Well know, good for smaller install base
• Zenoss
• Big coupled project without any cohesion
• Zabbix
• Distributed, all-in-one solution, good
• Ganglia
• RRD as static, web interface is dated
• Icinga
• Better web interface with nagios forked backend
• OpsView
• Fancier web interface which is liked by managers, nagios forked
• Shinken
• Distributed, modular, good for smal install base
• Icinga2
• Distributed, better scalability, better interface, modular and
integrations
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Choices
• Nagios
• Well know, good for smaller install base
• Zenoss
• Big coupled project without any cohesion
• Zabbix
• Distributed, all-in-one solution, good
• Ganglia
• RRD as static, web interface is dated
• Icinga
• Better web interface with nagios forked backend
• OpsView
• Fancier web interface which is liked by managers, nagios forked
• Shinken
• Distributed, modular, good for smal install base
• Icinga2
• Distributed, better scalability, better interface, modular and
integrations
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Choices
• Nagios
• Well know, good for smaller install base
• Zenoss
• Big coupled project without any cohesion
• Zabbix
• Distributed, all-in-one solution, good
• Ganglia
• RRD as static, web interface is dated
• Icinga
• Better web interface with nagios forked backend
• OpsView
• Fancier web interface which is liked by managers, nagios forked
• Shinken
• Distributed, modular, good for smal install base
• Icinga2
• Distributed, better scalability, better interface, modular and
integrations
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Choices
• Nagios
• Well know, good for smaller install base
• Zenoss
• Big coupled project without any cohesion
• Zabbix
• Distributed, all-in-one solution, good
• Ganglia
• RRD as static, web interface is dated
• Icinga
• Better web interface with nagios forked backend
• OpsView
• Fancier web interface which is liked by managers, nagios forked
• Shinken
• Distributed, modular, good for smal install base
• Icinga2
• Distributed, better scalability, better interface, modular and
integrations
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
2
Automation
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 7 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Ansible
“Ansible is a fictional machine capable of instantaneous or
superluminal communication. Typically it is depicted as a
lunch-box-sized object with some combination of microphone, speaker,
keyboard and display. It can send and receive messages to and from a
corresponding device over any distance whatsoever with no delay.”1
• Configuration Management Tool
• System Orchestration Tool
• Remote Execution/Deployment Tool
• . . .
1Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 8 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
An overview
• Python2 based
• Server based, agentless2
• uses SSH protocol (can use accelerated mode uses a daemon and
port)
• host information in flat files, CMDB, scripts, . . .
• executes the task on the host side
• Playbook : combination of tasks with meta information
• YAML
• JSON
• Roles : abstract playbook
• Tasks
• Variables
• Handlers
• Templates : Jinja2
• works where Python2 works3
2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is
not necessary
3Ansible can actually run without Python on the remote host, however it is not fully supported
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
An overview
• Python2 based
• Server based, agentless2
• uses SSH protocol (can use accelerated mode uses a daemon and
port)
• host information in flat files, CMDB, scripts, . . .
• executes the task on the host side
• Playbook : combination of tasks with meta information
• YAML
• JSON
• Roles : abstract playbook
• Tasks
• Variables
• Handlers
• Templates : Jinja2
• works where Python2 works3
2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is
not necessary
3Ansible can actually run without Python on the remote host, however it is not fully supported
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
An overview
• Python2 based
• Server based, agentless2
• uses SSH protocol (can use accelerated mode uses a daemon and
port)
• host information in flat files, CMDB, scripts, . . .
• executes the task on the host side
• Playbook : combination of tasks with meta information
• YAML
• JSON
• Roles : abstract playbook
• Tasks
• Variables
• Handlers
• Templates : Jinja2
• works where Python2 works3
2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is
not necessary
3Ansible can actually run without Python on the remote host, however it is not fully supported
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
An overview
• Python2 based
• Server based, agentless2
• uses SSH protocol (can use accelerated mode uses a daemon and
port)
• host information in flat files, CMDB, scripts, . . .
• executes the task on the host side
• Playbook : combination of tasks with meta information
• YAML
• JSON
• Roles : abstract playbook
• Tasks
• Variables
• Handlers
• Templates : Jinja2
• works where Python2 works3
2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is
not necessary
3Ansible can actually run without Python on the remote host, however it is not fully supported
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
An overview
• Python2 based
• Server based, agentless2
• uses SSH protocol (can use accelerated mode uses a daemon and
port)
• host information in flat files, CMDB, scripts, . . .
• executes the task on the host side
• Playbook : combination of tasks with meta information
• YAML
• JSON
• Roles : abstract playbook
• Tasks
• Variables
• Handlers
• Templates : Jinja2
• works where Python2 works3
2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is
not necessary
3Ansible can actually run without Python on the remote host, however it is not fully supported
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
An overview
• Python2 based
• Server based, agentless2
• uses SSH protocol (can use accelerated mode uses a daemon and
port)
• host information in flat files, CMDB, scripts, . . .
• executes the task on the host side
• Playbook : combination of tasks with meta information
• YAML
• JSON
• Roles : abstract playbook
• Tasks
• Variables
• Handlers
• Templates : Jinja2
• works where Python2 works3
2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is
not necessary
3Ansible can actually run without Python on the remote host, however it is not fully supported
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
An overview
• Python2 based
• Server based, agentless2
• uses SSH protocol (can use accelerated mode uses a daemon and
port)
• host information in flat files, CMDB, scripts, . . .
• executes the task on the host side
• Playbook : combination of tasks with meta information
• YAML
• JSON
• Roles : abstract playbook
• Tasks
• Variables
• Handlers
• Templates : Jinja2
• works where Python2 works3
2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is
not necessary
3Ansible can actually run without Python on the remote host, however it is not fully supported
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
An overview
• Python2 based
• Server based, agentless2
• uses SSH protocol (can use accelerated mode uses a daemon and
port)
• host information in flat files, CMDB, scripts, . . .
• executes the task on the host side
• Playbook : combination of tasks with meta information
• YAML
• JSON
• Roles : abstract playbook
• Tasks
• Variables
• Handlers
• Templates : Jinja2
• works where Python2 works3
2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is
not necessary
3Ansible can actually run without Python on the remote host, however it is not fully supported
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
An overview
• Python2 based
• Server based, agentless2
• uses SSH protocol (can use accelerated mode uses a daemon and
port)
• host information in flat files, CMDB, scripts, . . .
• executes the task on the host side
• Playbook : combination of tasks with meta information
• YAML
• JSON
• Roles : abstract playbook
• Tasks
• Variables
• Handlers
• Templates : Jinja2
• works where Python2 works3
2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is
not necessary
3Ansible can actually run without Python on the remote host, however it is not fully supported
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
An overview
• Python2 based
• Server based, agentless2
• uses SSH protocol (can use accelerated mode uses a daemon and
port)
• host information in flat files, CMDB, scripts, . . .
• executes the task on the host side
• Playbook : combination of tasks with meta information
• YAML
• JSON
• Roles : abstract playbook
• Tasks
• Variables
• Handlers
• Templates : Jinja2
• works where Python2 works3
2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is
not necessary
3Ansible can actually run without Python on the remote host, however it is not fully supported
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
An overview
• Python2 based
• Server based, agentless2
• uses SSH protocol (can use accelerated mode uses a daemon and
port)
• host information in flat files, CMDB, scripts, . . .
• executes the task on the host side
• Playbook : combination of tasks with meta information
• YAML
• JSON
• Roles : abstract playbook
• Tasks
• Variables
• Handlers
• Templates : Jinja2
• works where Python2 works3
2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is
not necessary
3Ansible can actually run without Python on the remote host, however it is not fully supported
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
An overview
• Python2 based
• Server based, agentless2
• uses SSH protocol (can use accelerated mode uses a daemon and
port)
• host information in flat files, CMDB, scripts, . . .
• executes the task on the host side
• Playbook : combination of tasks with meta information
• YAML
• JSON
• Roles : abstract playbook
• Tasks
• Variables
• Handlers
• Templates : Jinja2
• works where Python2 works3
2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is
not necessary
3Ansible can actually run without Python on the remote host, however it is not fully supported
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
An overview
• Python2 based
• Server based, agentless2
• uses SSH protocol (can use accelerated mode uses a daemon and
port)
• host information in flat files, CMDB, scripts, . . .
• executes the task on the host side
• Playbook : combination of tasks with meta information
• YAML
• JSON
• Roles : abstract playbook
• Tasks
• Variables
• Handlers
• Templates : Jinja2
• works where Python2 works3
2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is
not necessary
3Ansible can actually run without Python on the remote host, however it is not fully supported
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
An overview
• Python2 based
• Server based, agentless2
• uses SSH protocol (can use accelerated mode uses a daemon and
port)
• host information in flat files, CMDB, scripts, . . .
• executes the task on the host side
• Playbook : combination of tasks with meta information
• YAML
• JSON
• Roles : abstract playbook
• Tasks
• Variables
• Handlers
• Templates : Jinja2
• works where Python2 works3
2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is
not necessary
3Ansible can actually run without Python on the remote host, however it is not fully supported
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Internal Design
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 10 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Normal Adhoc Mode
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 11 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Delegation Mode
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 12 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Inventory - Hypervisors
• hosts file is by default in ini format
§ ¤
1 [hypervisors ]
2 hypervisor0
3 hypervisor1
4 hypervisor2
5 hypervisor3
6
7 [ virtualmachines ]
8 vm0
9 vm1
10 vm2
11 vm3
¦ ¥
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 13 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Inventory - Hypervisor (0)
§ ¤
1 ---
2 distro: powerel7
3 machinearch: ppc64
4 rootpwd: $1$f0pPKH0e$0xrX07Ki9DPmpcmJooede7X .
5 language: en_US
6 keyboard: us
7 timezone: "Europe/Brussels"
8 nics:
9 - { type: bridge , name: br0 , model: virtio , bootproto: dhcp , device:
eth0 , onboot: on }
10 hostname: hyp0.vantosh.demo
11 sshdrsakeylength : 8192
12 sshdecdsakeylength : 521
13 users:
14 - { name: supervisor , id: 1000 , ssh: yes , sshpubkey: /home/toshywoshy /.
keys/id_hyp0.pub }
15 nrpe: { address: hyp0.vantosh.demo , zone: democenter0 , contact: mrnice }
¦ ¥
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 14 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Inventory - Hypervisor (1)
§ ¤
1 ---
2 distro: powerel7
3 machinearch: ppc64le
4 rootpwd: $1$f0pPKH0e$0xrX07Ki9DPmpcmJooede7X .
5 language: en_US
6 keyboard: us
7 timezone: "Europe/Brussels"
8 nics:
9 - { type: bridge , name: br0 , model: virtio , bootproto: dhcp , device:
eth0 , onboot: on }
10 hostname: hyp1.vantosh.demo
11 sshdrsakeylength : 8192
12 sshdecdsakeylength : 521
13 users:
14 - { name: supervisor , id: 1000 , ssh: yes , sshpubkey: /home/toshywoshy /.
keys/id_hyp1.pub }
15 nrpe: { address: hyp1.vantosh.demo , zone: democenter1 , contact: mrnotsonice }
¦ ¥
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 15 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Inventory - Hypervisor (2)
§ ¤
1 ---
2 distro: centos7
3 machinearch: x86_64
4 rootpwd: $1$f0pPKH0e$0xrX07Ki9DPmpcmJooede7X .
5 language: en_US
6 keyboard: us
7 timezone: "Europe/Brussels"
8 nics:
9 - { type: bridge , name: br0 , model: virtio , bootproto: dhcp , device:
eth0 , onboot: on }
10 hostname: hyp2.vantosh.demo
11 sshdrsakeylength : 8192
12 sshdecdsakeylength : 521
13 users:
14 - { name: supervisor , id: 1000 , ssh: yes , sshpubkey: /home/toshywoshy /.
keys/id_hyp2.pub }
15 nrpe: { address: hyp2.vantosh.demo , zone: democenter1 , contact: mrnice }
¦ ¥
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 16 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Inventory - Virtual Machine (0)
§ ¤
1 ---
2 hyper: hypervisor0
3 distro: powerel7
4 machinearch: ppc64
5 virtualcpus: 32
6 virtualsockets : 2
7 virtualcores : 2
8 virtualthreads : 8
9 ramsize: 2048
10 vmwaittime: 15
11 language: en_US
12 keyboard: us
13 timezone: "Europe/Brussels"
14 rootpwd: $1$f0pPKH0e$0xrX07Ki9DPmpcmJooede7X .
15 sshdrsakeylength : 8192
16 sshdecdsakeylength : 521
17 virtualfilespath : /virtual/
18 disks:
19 - { path: /virtual/vm0 -prep0.qcow2 , size: 10M }
20 - { path: /virtual/vm0 -boot0.qcow2 , size: 512M }
21 - { path: /virtual/vm0 -root0.qcow2 , size: 6G }
22 - { path: /virtual/vm0 -swap0.qcow2 , size: 512M }
23 - { path: /virtual/vm0 -swap1.qcow2 , size: 512M }
24 bootloader: bootloader --location=mbr --driveorder=vda ,vdb ,vdc ,vdd
25 partitions:
26 - part prepboot --ondisk=vda --asprimary --fstype="prepboot" --fsoptions=’
prepboot ’ --size =9
27 - part /boot --ondisk=vdb --asprimary --fstype="xfs" --fsoptions=’defaults ,
noatime ,discard ’ --grow --size =1
28 - part pv.01 --ondisk=vdc --asprimary --grow --size =1
29 - volgroup VolGroupRoot --pesize =131072 pv.01
30 - logvol / --fstype="xfs" --fsoptions=’defaults ,noatime ,discard ’ --name=
LogVolRoot --vgname= VolGroupRoot --grow --size =1
31 - part swap --onpart=vdd --asprimary --fstype="swap" --fsoptions=’defaults ,
discard ’ --grow --size =1
32 - part swap --onpart=vde --asprimary --fstype="swap" --fsoptions=’defaults ,
discard ’ --grow --size =1
33 hostname: vm0.vantosh.demo
34 nics:
35 - { type: bridge , name: br0 , model: virtio , bootproto: dhcp , device:
eth0 , onboot: on }
36 users:
37 - { name: administrator , id: 1000 , ssh: yes , sshpubkey: /home/toshywoshy
/. keys/id_vm0.pub }
38 nrpe: { address: vm0.vantosh.demo , zone: democenter0 , contact: mrnice }
¦ ¥
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 17 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Inventory - Virtual Machine (1)
§ ¤
1 ---
2 hyper: hypervisor0
3 distro: powerel7
4 machinearch: ppc64le
5 virtualcpus: 32
6 virtualsockets : 2
7 virtualcores : 2
8 virtualthreads : 8
9 ramsize: 2048
10 vmwaittime: 15
11 language: en_US
12 keyboard: us
13 timezone: "Europe/Brussels"
14 rootpwd: $1$f0pPKH0e$0xrX07Ki9DPmpcmJooede7X .
15 sshdrsakeylength : 8192
16 sshdecdsakeylength : 521
17 virtualfilespath : /virtual/
18 disks:
19 - { path: /virtual/vm0 -prep0.qcow2 , size: 10M }
20 - { path: /virtual/vm0 -boot0.qcow2 , size: 512M }
21 - { path: /virtual/vm0 -root0.qcow2 , size: 6G }
22 - { path: /virtual/vm0 -swap0.qcow2 , size: 512M }
23 - { path: /virtual/vm0 -swap1.qcow2 , size: 512M }
24 bootloader: bootloader --location=mbr --driveorder=vda ,vdb ,vdc ,vdd
25 partitions:
26 - part prepboot --ondisk=vda --asprimary --fstype="prepboot" --fsoptions=’
prepboot ’ --size =9
27 - part /boot --ondisk=vdb --asprimary --fstype="xfs" --fsoptions=’defaults ,
noatime ,discard ’ --grow --size =1
28 - part pv.01 --ondisk=vdc --asprimary --grow --size =1
29 - volgroup VolGroupRoot --pesize =131072 pv.01
30 - logvol / --fstype="xfs" --fsoptions=’defaults ,noatime ,discard ’ --name=
LogVolRoot --vgname= VolGroupRoot --grow --size =1
31 - part swap --onpart=vdd --asprimary --fstype="swap" --fsoptions=’defaults ,
discard ’ --grow --size =1
32 - part swap --onpart=vde --asprimary --fstype="swap" --fsoptions=’defaults ,
discard ’ --grow --size =1
33 hostname: vm0.vantosh.demo
34 nics:
35 - { type: bridge , name: br0 , model: virtio , bootproto: dhcp , device:
eth0 , onboot: on }
36 users:
37 - { name: administrator , id: 1000 , ssh: yes , sshpubkey: /home/toshywoshy
/. keys/id_vm0.pub }
38 nrpe: { address: vm0.vantosh.demo , zone: democenter1 , contact: mrnotsonice }
¦ ¥
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 18 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Inventory - Virtual Machine (2)
§ ¤
1 ---
2 hyper: hypervisor0
3 distro: centos7
4 machinearch: x86_64
5 virtualcpus: 32
6 virtualsockets : 2
7 virtualcores : 2
8 virtualthreads : 8
9 ramsize: 2048
10 vmwaittime: 15
11 language: en_US
12 keyboard: us
13 timezone: "Europe/Brussels"
14 rootpwd: $1$f0pPKH0e$0xrX07Ki9DPmpcmJooede7X .
15 sshdrsakeylength : 8192
16 sshdecdsakeylength : 521
17 virtualfilespath : /virtual/
18 disks:
19 - { path: /virtual/vm0 -boot0.qcow2 , size: 512M }
20 - { path: /virtual/vm0 -root0.qcow2 , size: 6G }
21 - { path: /virtual/vm0 -swap0.qcow2 , size: 512M }
22 - { path: /virtual/vm0 -swap1.qcow2 , size: 512M }
23 bootloader: bootloader --location=mbr --driveorder=vda ,vdb ,vdc ,vdd
24 partitions:
25 - part /boot --ondisk=vda --asprimary --fstype="xfs" --fsoptions=’defaults ,
noatime ,discard ’ --grow --size =1
26 - part pv.01 --ondisk=vdb --asprimary --grow --size =1
27 - volgroup VolGroupRoot --pesize =131072 pv.01
28 - logvol / --fstype="xfs" --fsoptions=’defaults ,noatime ,discard ’ --name=
LogVolRoot --vgname= VolGroupRoot --grow --size =1
29 - part swap --onpart=vdc --asprimary --fstype="swap" --fsoptions=’defaults ,
discard ’ --grow --size =1
30 - part swap --onpart=vdd --asprimary --fstype="swap" --fsoptions=’defaults ,
discard ’ --grow --size =1
31 hostname: vm0.vantosh.demo
32 nics:
33 - { type: bridge , name: br0 , model: virtio , bootproto: dhcp , device:
eth0 , onboot: on }
34 users:
35 - { name: administrator , id: 1000 , ssh: yes , sshpubkey: /home/toshywoshy
/. keys/id_vm0.pub }
36 nrpe: { address: vm0.vantosh.demo , zone: democenter1 , contact: mrnice }
¦ ¥
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 19 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Playbooks - vminstaller
§ ¤
1 - name: set machine arch variables
2 include_vars : "{{ machinearch }}/ console.yml"
3 when: virtconsole is not defined
4
5 - name: set distribution variables
6 include_vars : "{{ distro }}. yml"
7
8 - name: create the qemu disk images
9 action: qemu -img dest ={{ item.path }} size ={{ item.size }} format="qcow2"
options=" preallocation =falloc"
10 with_items: "{{ disks }}"
11 delegate_to: "{{ hyper }}"
12
13 ###
14
15 ### PowerEL 7
16 - name: start distribution installation - PEL7
17 include: install -vm -pel7.yml
18 when: templatetype == ’pel7 ’
19
20 ### EL 7
21 - name: start distribution installation - EL7
22 include: install -vm -el7.yml
23 when: templatetype == ’el7’
24
25 - name: execute minimum ram hack where required
26 include: minimum -ram -hack.yml
27 when: minram is defined
28
29
30 - name: start the vm
31 action: virt guest ={{ inventory_hostname }} command=start
32 delegate_to: "{{ hyper }}"
33 ignore_errors : yes
34
35 - name: wait for vm to become available
36 local_action : wait_for host ={{ ansible_host }} port ={{ ansible_port }} delay
=5 state=started timeout =300
37 become: no
38
39 - name: gather facts
40 action: setup
¦ ¥
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 20 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Playbooks - pel7
§ ¤
1 - name: create and copy the kickstart file of the machine
2 action: template src="pel7/kickstart.cfg" dest="{{ virtualfilespath }}{{
inventory_hostname }}. cfg"
3 delegate_to: "{{ hyper }}"
4
5 - name: make install script
6 action: template src="common/install -vm.sh" dest="{{ virtualfilespath }}{{
inventory_hostname }}-create -vm.sh" owner=root group=root mode =770
7 delegate_to: "{{ hyper }}"
8
9 - name: execute install script
10 action: raw {{ virtualfilespath }}{{ inventory_hostname }}-create -vm.sh
11 delegate_to: "{{ hyper }}"
12 register: createdvm
13
14 - name: wait for vm to install
15 local_action : pause minutes ={{ vmwaittime }}
¦ ¥
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 21 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Variables - pel7
§ ¤
1 ---
2 distroname: powerel7
3 distrotype: rhel7
4 templatetype : pel7
5 minram: 2048
6 location: http ://10.59.39.200/ yum/pel /7/{{ machinearch }}/os/
7 repos:
8 - name: "PowerEL -base"
9 uri: "http ://10.59.39.200/ yum/pel /7/{{ machinearch }}/ base/packages/"
10 cost: 100
11 textrargs: ’text repo ={{ location }} ks=file :/{{ inventory_hostname }}. cfg
console=hvc0 ,115200 headless noshell nofirewire rd_NO_PLYMOUTH plymouth.enable
=0 biosdevname =0 elevator=noop geoloc =0 nopass kdump_addon =off nopcmia ’
¦ ¥
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 22 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
3
Icinga2
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 23 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Icinga2 - Main Task
§ ¤
1 - name: check whether icinga2 variable are set correctly
2 action: fail msg="Icinga2 variables set incorrectly , please set OR master OR
zone , do not set both at the same time."
3 when: icinga2_master is defined and icinga2_zone is defined
4
5 - name: install icinga2 master
6 include: master.yml
7 when: icinga2_master is defined and icinga2_master == true
8
9 - name: install icinga2 zonemaster
10 include: zonemaster.yml
11 when: icinga2_zonemaster is defined and icinga2_zonemaster == true
¦ ¥
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 24 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Icinga2 - Master§ ¤
1 - name: install icinga2 packages
2 action: yum name ={{ item }} state=latest
3 with_items:
4 - icinga2 -common
5 - icinga2 -bin
6 - icinga2 -python
7 - icinga2
8 - icinga2 -ido -pgsql
9 - icingaweb2
10 - python -carbon
11 - python -whisper
12 - graphite -web
13 - libXrender
14 - libX11
15 - nrpe
16 - nagios -plugins
17 - nagios -plugins -ping
18 - nagios -plugins -nrpe
19 - nagios -plugins -disk
20 - nagios -plugins -load
21 - nagios -plugins -users
22 - nagios -plugins -procs
23 - nagios -plugins -swap
24 - nagios -plugins -ssh
25 - nagios -plugins -tcp
26 - nagios -plugins -check_rbl
27 - nagios -plugins -by_ssh
28 - nagios -plugins -dig
29 - nagios -plugins -http
30 - nagios -plugins -smtp
31 - nagios -plugins -dns
32 - nagios -plugins -snmp
33
34 - name: copy main icinga2 configuration files
35 action: template src ={{ item }} dest =/ etc/icinga2 /{{ item }} owner=icinga
group=icinga mode =550 setype=etc_t
36 with_items:
37 - icinga2.conf
38 - zones.conf
39 - constants.conf
40
41 - name: copy features configuration files into icinga2 feature activation
directory
42 action: template src ={{ item }} dest =/ etc/icinga2/features -available /{{ item
}}
43 with_items:
44 - api.conf
45 - ido -pgsql.conf
46 - graphite.conf
47
48 - name: activate icinga2 features
49 action: command /usr/sbin/icinga2 feature enable {{ item }}
50 with_items:
51 - ido -pgsql
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 25 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Icinga2 - Zonemaster§ ¤
1 - name: install icinga2 packages
2 action: yum name ={{ item }} state=latest
3 with_items:
4 - icinga2 -common
5 - icinga2 -bin
6 - icinga2 -python
7 - icinga2
8 - nrpe
9 - nagios -plugins
10 - nagios -plugins -ping
11 - nagios -plugins -nrpe
12 - nagios -plugins -disk
13 - nagios -plugins -load
14 - nagios -plugins -users
15 - nagios -plugins -procs
16 - nagios -plugins -swap
17 - nagios -plugins -ssh
18 - nagios -plugins -tcp
19 - nagios -plugins -check_rbl
20 - nagios -plugins -by_ssh
21 - nagios -plugins -dig
22 - nagios -plugins -http
23 - nagios -plugins -smtp
24 - nagios -plugins -dns
25 - nagios -plugins - check_cups_queue
26 - nagios -plugins -check_sip
27 - nagios -plugins -dhcp
28 - nagios -plugins -snmp
29
30 - name: copy main icinga2 configuration files
31 action: template src ={{ item }} dest =/ etc/icinga2 /{{ item }} owner=icinga
group=icinga mode =550 setype=etc_t
32 with_items:
33 - icinga2.conf
34 - zones.conf
35 - constants.conf
36
37 - name: copy features configuration files into icinga2 feature activation
directory
38 action: template src ={{ item }} dest =/ etc/icinga2/features -available /{{ item
}}
39 with_items:
40 - api.conf
41
42 - name: activate icinga2 features
43 action: command /sbin/icinga2 -enable -feature {{ item }}
44 with_items:
45 - api
46
47 - name: check if a configuration already exists
48 action: stat path =/etc/icinga2/conf.d/templates.conf
49 register: defaultconfig
50
51 - name: remove default configuration
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 26 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Icinga2 - zones.conf
§ ¤
1 /*
2 * --------------------------------------------------
3 * VanTosh Icinga2 Zone Configuration File
4 * (c) copyleft 2014 VanTosh
5 * Author: Toshaan Bharvani <toshaan@vantosh .com >
6 * --------------------------------------------------
7 * {{ ansible_managed }}
8 */
9
10 {% for icinga2_zone in icinga2_zones %}
11 object Endpoint "{{ icinga2_zone .nodename }}" {
12 host = "{{ icinga2_zone .hostname }}"
13 port = {{ icinga2_zone .port }}
14 }
15 object Zone "{{ icinga2_zone .zonename }}" {
16 endpoints = [ "{{ icinga2_zone .nodename }}" ]
17 {% if icinga2_zone .parent is defined %}
18 parent = "{{ icinga2_zone .parent }}"
19 {% endif %}
20 }
21 {% endfor %}
¦ ¥
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 27 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Icinga2 - NRPE (0)
§ ¤
1 - name: set variables for nrpe - RedHat
2 include_vars : redhat.yml
3 when: ansible_os_family == ’RedHat ’
4
5 - name: install nrpe packages and configuration - RedHat
6 include: redhat.yml
7 when: ansible_os_family == ’RedHat ’
8
9 - name: set variables for nrpe - FreeBSD
10 include_vars : freebsd.yml
11 when: ansible_os_family == ’FreeBSD ’
12
13 - name: install nrpe packages and configuration - FreeBSD
14 include: freebsd.yml
15 when: ansible_os_family == ’FreeBSD ’
16
17 - name: add host to monitoring system
18 action: template src=host.conf dest =/ etc/icinga2/zones.d/{{ nrpe.zone }}/{{
inventory_hostname }}.{{ domain }}. conf owner=icinga group=icinga mode =550
setype=etc_t
19 delegate_to: trivikrama
20 notify: reload icinga2
¦ ¥
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 28 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Icinga2 - NRPE (1)
§ ¤
1 - name: install nrpe packages and dependencies
2 action: yum pkg ={{ item }} state=latest
3 with_items:
4 - nrpe
5 - nagios -plugins -disk
6 - nagios -plugins -load
7 - nagios -plugins -users
8 - nagios -plugins -procs
9 - nagios -plugins -swap
10 - nagios -plugins - check_iostat
11 - bc
12 - sysstat
13
14 - name: base nrpe config
15 action: template src=nrpe.cfg dest =/etc/nagios/nrpe.cfg
16
17 - name: nrpe commands
18 action: template src ={{ item }}. cfg dest =/etc/nrpe.d/
19 with_items:
20 - users
21 - disk
22 - procs
23 - load
24 - swap
25 - iostat
26
27 - name: restart nrpe daemon
28 action: service name=nrpe state=restarted enabled=yes
¦ ¥
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 29 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Icinga2 - NRPE - disk.cfg
§ ¤
1 {% for location in ansible_mounts %}
2 {% if location.fstype != ’cifs ’ and location.fstype != ’nfs’ and location.
fstype != ’fuse ’ and location.fstype != ’linprocfs ’ and location.fstype != ’
fdescfs ’ and location.fstype != ’swap ’ %}
3 command[check_disk_ {{ location.mount }}]={{ nrpe_checkcmddir }} check_disk -w
15% -c 7% -p {{ location.mount }}
4 {% endif %}
5 {% endfor %}
¦ ¥
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 30 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Icinga2 - NRPE - memory.cfg
§ ¤
1 command[ check_memory ]={{ nrpe_checkcmddir }}pmp -check -unix -memory -w 50 -c 75
¦ ¥
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 31 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Icinga2 - NRPE - iostat.cfg
§ ¤
1 {% for disk in ansible_devices %}
2 {% if disk != ’sr0’ %}
3 command[ check_iostat_ {{ disk }}]={{ nrpe_checkcmddir }} check_iostat -d {{ disk
}} -w 750 -c 1250
4 {% endif %}
5 {% endfor %}
¦ ¥
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 32 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Icinga2 - NRPE - host.conf§ ¤
1 /*
2 * --------------------------------------------------
3 * VanTosh Icinga2 Host File
4 * (c) copyleft 2014 VanTosh
5 * Author: Toshaan Bharvani <toshaan@vantosh .com >
6 * --------------------------------------------------
7 * {{ ansible_managed }}
8 * --------------------------------------------------
9 {% if ddns is defined %}
10 * {{ ddns.hostname }}.{{ ddns.domain }}
11 {% else %}
12 * {{ ansible_ssh_host }}
13 {% endif %}
14 * fqdn: {{ ansible_fqdn }}
15 * ansible: {{ inventory_hostname }}
16 * --------------------------------------------------
17 */
18
19
20 object Host "{{ inventory_hostname }}" {
21 import "generic -host"
22 display_name = "{{ inventory_hostname }}"
23 address = "{{ nrpe.address }}"
24 {% if ansible_virtualization_role is defined %}
25 {% if hyper is not defined and ansible_virtualization_role == ’host ’ %}
26 {% elif hyper is defined and ansible_virtualization_role == ’guest ’ %}
27 // parent_host_name = "{{ hyper }}.{{ domain }}"
28 {% endif %}
29 {% endif %}
30 vars.sla = "24x7"
31 }
32
33 object Service "ssh" {
34 import "generic -service"
35 host_name = "{{ inventory_hostname }}"
36 display_name = "SSH {{ inventory_hostname }}"
37 check_command = "ssh"
38 vars.ssh_port = {{ ansible_ssh_port }}
39 }
40
41 object Service " current_users " {
42 import "generic -service"
43 host_name = "{{ inventory_hostname }}"
44 display_name = "Current Users"
45 check_command = "nrpe"
46 vars. nrpe_command = " check_users "
47 {% if nrpe.port is defined %}
48 vars.nrpe_port = {{ nrpe.port }}
49 {% else %}
50 vars.nrpe_port = 5666
51 {% endif %}
52 {% if nrpe_ssl is defined and nrpe_ssl == false %}
53 vars. nrpe_no_ssl = trueDeploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 33 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
4
Conclusion
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 34 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
Conclusion
Automation MUST
[RFC2119] be easy
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 35 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
More information
• Icinga : http://www.icinga.org
• Ansible : http://www.ansible.com/
• Ansible Roles Install VM : https:
//github.com/toshywoshy/ansible-roles-vminstall
• Ansible Roles Icinga2 :
https://github.com/toshywoshy/ansible-roles-icinga2
• Ansible Roles NRPE :
https://github.com/toshywoshy/ansible-roles-nrpe
• Ansible Roles NCSA-ng :
https://github.com/toshywoshy/ansible-roles-ncsang
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 36 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
More information
• Icinga : http://www.icinga.org
• Ansible : http://www.ansible.com/
• Ansible Roles Install VM : https:
//github.com/toshywoshy/ansible-roles-vminstall
• Ansible Roles Icinga2 :
https://github.com/toshywoshy/ansible-roles-icinga2
• Ansible Roles NRPE :
https://github.com/toshywoshy/ansible-roles-nrpe
• Ansible Roles NCSA-ng :
https://github.com/toshywoshy/ansible-roles-ncsang
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 36 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
More information
• Icinga : http://www.icinga.org
• Ansible : http://www.ansible.com/
• Ansible Roles Install VM : https:
//github.com/toshywoshy/ansible-roles-vminstall
• Ansible Roles Icinga2 :
https://github.com/toshywoshy/ansible-roles-icinga2
• Ansible Roles NRPE :
https://github.com/toshywoshy/ansible-roles-nrpe
• Ansible Roles NCSA-ng :
https://github.com/toshywoshy/ansible-roles-ncsang
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 36 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
More information
• Icinga : http://www.icinga.org
• Ansible : http://www.ansible.com/
• Ansible Roles Install VM : https:
//github.com/toshywoshy/ansible-roles-vminstall
• Ansible Roles Icinga2 :
https://github.com/toshywoshy/ansible-roles-icinga2
• Ansible Roles NRPE :
https://github.com/toshywoshy/ansible-roles-nrpe
• Ansible Roles NCSA-ng :
https://github.com/toshywoshy/ansible-roles-ncsang
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 36 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
More information
• Icinga : http://www.icinga.org
• Ansible : http://www.ansible.com/
• Ansible Roles Install VM : https:
//github.com/toshywoshy/ansible-roles-vminstall
• Ansible Roles Icinga2 :
https://github.com/toshywoshy/ansible-roles-icinga2
• Ansible Roles NRPE :
https://github.com/toshywoshy/ansible-roles-nrpe
• Ansible Roles NCSA-ng :
https://github.com/toshywoshy/ansible-roles-ncsang
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 36 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
More information
• Icinga : http://www.icinga.org
• Ansible : http://www.ansible.com/
• Ansible Roles Install VM : https:
//github.com/toshywoshy/ansible-roles-vminstall
• Ansible Roles Icinga2 :
https://github.com/toshywoshy/ansible-roles-icinga2
• Ansible Roles NRPE :
https://github.com/toshywoshy/ansible-roles-nrpe
• Ansible Roles NCSA-ng :
https://github.com/toshywoshy/ansible-roles-ncsang
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 36 / 37
Deploying
Icinga2 through
Ansible
Toshaan
Bharvani -
VanTosh bvba
Monitoring
Automation
Inventory
Virtual
Machines
Icinga2
Icinga2 Masters
Icinga2 Clients
Conclusion
The End
The End
Thank You
Toshaan Bharvani - VanTosh bvba <toshaan@vantosh.com>
http://www.vantosh.com/
Made with Beamer LATEX
a TEXbased Presentation program
Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 37 / 37

More Related Content

What's hot

Icinga Camp Belgrade - Icinga Web 2
Icinga Camp Belgrade - Icinga Web 2Icinga Camp Belgrade - Icinga Web 2
Icinga Camp Belgrade - Icinga Web 2Icinga
 
Loadays 2015 - Enterprise Monitoring with Icinga
Loadays 2015 - Enterprise Monitoring with IcingaLoadays 2015 - Enterprise Monitoring with Icinga
Loadays 2015 - Enterprise Monitoring with IcingaIcinga
 
Icinga Camp San Francisco 2017 - Current State of Icinga
Icinga Camp San Francisco 2017 - Current State of IcingaIcinga Camp San Francisco 2017 - Current State of Icinga
Icinga Camp San Francisco 2017 - Current State of IcingaIcinga
 
Icinga Web 2 is more
Icinga Web 2 is moreIcinga Web 2 is more
Icinga Web 2 is moreIcinga
 
Icinga camp ams 2016 icinga2
Icinga camp ams 2016 icinga2Icinga camp ams 2016 icinga2
Icinga camp ams 2016 icinga2Assaf Flatto
 
Icinga Camp Berlin 2017 - Integrations all the way
Icinga Camp Berlin 2017 - Integrations all the wayIcinga Camp Berlin 2017 - Integrations all the way
Icinga Camp Berlin 2017 - Integrations all the wayIcinga
 
Icinga2 - Apify them all
Icinga2 - Apify them allIcinga2 - Apify them all
Icinga2 - Apify them allIcinga
 
Open Source Monitoring with Icinga at Fossasia 2015
Open Source Monitoring with Icinga at Fossasia 2015Open Source Monitoring with Icinga at Fossasia 2015
Open Source Monitoring with Icinga at Fossasia 2015Icinga
 
Icinga 2010 at CeBIT
Icinga 2010 at CeBITIcinga 2010 at CeBIT
Icinga 2010 at CeBITIcinga
 
Introduction into Icinga Web 2
Introduction into Icinga Web 2Introduction into Icinga Web 2
Introduction into Icinga Web 2Icinga
 
IcingaCamp Stockholm - Icinga Web2
IcingaCamp Stockholm - Icinga Web2IcingaCamp Stockholm - Icinga Web2
IcingaCamp Stockholm - Icinga Web2Icinga
 
Current State of Icinga - FlossUK 2014
Current State of Icinga - FlossUK 2014Current State of Icinga - FlossUK 2014
Current State of Icinga - FlossUK 2014Icinga
 
Icinga Camp Amsterdam - Icinga Director
Icinga Camp Amsterdam - Icinga DirectorIcinga Camp Amsterdam - Icinga Director
Icinga Camp Amsterdam - Icinga DirectorIcinga
 
Icinga Web 2 at Icinga Camp Antwerp
Icinga Web 2 at Icinga Camp AntwerpIcinga Web 2 at Icinga Camp Antwerp
Icinga Web 2 at Icinga Camp AntwerpIcinga
 
Monitoring with Icinga2 at Adobe
Monitoring with Icinga2 at AdobeMonitoring with Icinga2 at Adobe
Monitoring with Icinga2 at AdobeIcinga
 
Icinga Director
Icinga DirectorIcinga Director
Icinga DirectorIcinga
 
Welcome Icinga Camp San Francisco 2014
Welcome Icinga Camp San Francisco 2014Welcome Icinga Camp San Francisco 2014
Welcome Icinga Camp San Francisco 2014Icinga
 
Icinga Camp Berlin 2017 - Welcome & State of Icinga
Icinga Camp Berlin 2017 - Welcome & State of IcingaIcinga Camp Berlin 2017 - Welcome & State of Icinga
Icinga Camp Berlin 2017 - Welcome & State of IcingaIcinga
 
Icinga 2 @ SIG-NOC Meeting
Icinga 2 @ SIG-NOC MeetingIcinga 2 @ SIG-NOC Meeting
Icinga 2 @ SIG-NOC MeetingIcinga
 
Icinga Camp Amsterdam - Introduction into Icinga Web 2
Icinga Camp Amsterdam - Introduction into Icinga Web 2Icinga Camp Amsterdam - Introduction into Icinga Web 2
Icinga Camp Amsterdam - Introduction into Icinga Web 2Icinga
 

What's hot (20)

Icinga Camp Belgrade - Icinga Web 2
Icinga Camp Belgrade - Icinga Web 2Icinga Camp Belgrade - Icinga Web 2
Icinga Camp Belgrade - Icinga Web 2
 
Loadays 2015 - Enterprise Monitoring with Icinga
Loadays 2015 - Enterprise Monitoring with IcingaLoadays 2015 - Enterprise Monitoring with Icinga
Loadays 2015 - Enterprise Monitoring with Icinga
 
Icinga Camp San Francisco 2017 - Current State of Icinga
Icinga Camp San Francisco 2017 - Current State of IcingaIcinga Camp San Francisco 2017 - Current State of Icinga
Icinga Camp San Francisco 2017 - Current State of Icinga
 
Icinga Web 2 is more
Icinga Web 2 is moreIcinga Web 2 is more
Icinga Web 2 is more
 
Icinga camp ams 2016 icinga2
Icinga camp ams 2016 icinga2Icinga camp ams 2016 icinga2
Icinga camp ams 2016 icinga2
 
Icinga Camp Berlin 2017 - Integrations all the way
Icinga Camp Berlin 2017 - Integrations all the wayIcinga Camp Berlin 2017 - Integrations all the way
Icinga Camp Berlin 2017 - Integrations all the way
 
Icinga2 - Apify them all
Icinga2 - Apify them allIcinga2 - Apify them all
Icinga2 - Apify them all
 
Open Source Monitoring with Icinga at Fossasia 2015
Open Source Monitoring with Icinga at Fossasia 2015Open Source Monitoring with Icinga at Fossasia 2015
Open Source Monitoring with Icinga at Fossasia 2015
 
Icinga 2010 at CeBIT
Icinga 2010 at CeBITIcinga 2010 at CeBIT
Icinga 2010 at CeBIT
 
Introduction into Icinga Web 2
Introduction into Icinga Web 2Introduction into Icinga Web 2
Introduction into Icinga Web 2
 
IcingaCamp Stockholm - Icinga Web2
IcingaCamp Stockholm - Icinga Web2IcingaCamp Stockholm - Icinga Web2
IcingaCamp Stockholm - Icinga Web2
 
Current State of Icinga - FlossUK 2014
Current State of Icinga - FlossUK 2014Current State of Icinga - FlossUK 2014
Current State of Icinga - FlossUK 2014
 
Icinga Camp Amsterdam - Icinga Director
Icinga Camp Amsterdam - Icinga DirectorIcinga Camp Amsterdam - Icinga Director
Icinga Camp Amsterdam - Icinga Director
 
Icinga Web 2 at Icinga Camp Antwerp
Icinga Web 2 at Icinga Camp AntwerpIcinga Web 2 at Icinga Camp Antwerp
Icinga Web 2 at Icinga Camp Antwerp
 
Monitoring with Icinga2 at Adobe
Monitoring with Icinga2 at AdobeMonitoring with Icinga2 at Adobe
Monitoring with Icinga2 at Adobe
 
Icinga Director
Icinga DirectorIcinga Director
Icinga Director
 
Welcome Icinga Camp San Francisco 2014
Welcome Icinga Camp San Francisco 2014Welcome Icinga Camp San Francisco 2014
Welcome Icinga Camp San Francisco 2014
 
Icinga Camp Berlin 2017 - Welcome & State of Icinga
Icinga Camp Berlin 2017 - Welcome & State of IcingaIcinga Camp Berlin 2017 - Welcome & State of Icinga
Icinga Camp Berlin 2017 - Welcome & State of Icinga
 
Icinga 2 @ SIG-NOC Meeting
Icinga 2 @ SIG-NOC MeetingIcinga 2 @ SIG-NOC Meeting
Icinga 2 @ SIG-NOC Meeting
 
Icinga Camp Amsterdam - Introduction into Icinga Web 2
Icinga Camp Amsterdam - Introduction into Icinga Web 2Icinga Camp Amsterdam - Introduction into Icinga Web 2
Icinga Camp Amsterdam - Introduction into Icinga Web 2
 

Viewers also liked

Icinga Camp Amsterdam - Monitoring – When to start
Icinga Camp Amsterdam - Monitoring – When to startIcinga Camp Amsterdam - Monitoring – When to start
Icinga Camp Amsterdam - Monitoring – When to startIcinga
 
Icinga Camp Amsterdam - Icinga, Graphite, Grafana
Icinga Camp Amsterdam - Icinga, Graphite, GrafanaIcinga Camp Amsterdam - Icinga, Graphite, Grafana
Icinga Camp Amsterdam - Icinga, Graphite, GrafanaIcinga
 
IcingaCamp Stockholm - How to make your monitoring shut up
IcingaCamp Stockholm - How to make your monitoring shut upIcingaCamp Stockholm - How to make your monitoring shut up
IcingaCamp Stockholm - How to make your monitoring shut upIcinga
 
Icinga Camp Belgrade - ITAF Introduction
Icinga Camp Belgrade - ITAF IntroductionIcinga Camp Belgrade - ITAF Introduction
Icinga Camp Belgrade - ITAF IntroductionIcinga
 
Icinga 2 - Apify them all at Icinga Camp Amsterdam 2016
Icinga 2 - Apify them all at Icinga Camp Amsterdam 2016Icinga 2 - Apify them all at Icinga Camp Amsterdam 2016
Icinga 2 - Apify them all at Icinga Camp Amsterdam 2016Icinga
 
Icinga Camp Amsterdam - Infrastructure as Code
Icinga Camp Amsterdam - Infrastructure as CodeIcinga Camp Amsterdam - Infrastructure as Code
Icinga Camp Amsterdam - Infrastructure as CodeIcinga
 
IcingaCamp Stockholm - Opening
IcingaCamp Stockholm - OpeningIcingaCamp Stockholm - Opening
IcingaCamp Stockholm - OpeningIcinga
 
MoniTutor
MoniTutorMoniTutor
MoniTutorIcinga
 
Icinga Camp Amsterdam - Icinga2 and Puppet
Icinga Camp Amsterdam - Icinga2 and PuppetIcinga Camp Amsterdam - Icinga2 and Puppet
Icinga Camp Amsterdam - Icinga2 and PuppetIcinga
 
Icinga Camp Belgrade - ITAF Monitoring best practices & demo
Icinga Camp Belgrade - ITAF Monitoring best practices & demoIcinga Camp Belgrade - ITAF Monitoring best practices & demo
Icinga Camp Belgrade - ITAF Monitoring best practices & demoIcinga
 
Icinga Camp Belgrade - State of Icinga
Icinga Camp Belgrade - State of IcingaIcinga Camp Belgrade - State of Icinga
Icinga Camp Belgrade - State of IcingaIcinga
 
Presentation about Icinga at Kiratech DevOps Day in Verona
Presentation about Icinga at Kiratech DevOps Day in VeronaPresentation about Icinga at Kiratech DevOps Day in Verona
Presentation about Icinga at Kiratech DevOps Day in VeronaIcinga
 
Icinga Camp San Diego: Apify them all
Icinga Camp San Diego: Apify them allIcinga Camp San Diego: Apify them all
Icinga Camp San Diego: Apify them allIcinga
 
IcingaCamp Stockholm - NSClient++
IcingaCamp Stockholm - NSClient++IcingaCamp Stockholm - NSClient++
IcingaCamp Stockholm - NSClient++Icinga
 
IcingaCamp Stockholm - Graphing with Graphite und Grafana
IcingaCamp Stockholm - Graphing with Graphite und GrafanaIcingaCamp Stockholm - Graphing with Graphite und Grafana
IcingaCamp Stockholm - Graphing with Graphite und GrafanaIcinga
 
Icinga2 in the middle of your toolstack
Icinga2 in the middle of your toolstackIcinga2 in the middle of your toolstack
Icinga2 in the middle of your toolstackIcinga
 
Icinga Camp Berlin 2016 - Opening
Icinga Camp Berlin 2016 - OpeningIcinga Camp Berlin 2016 - Opening
Icinga Camp Berlin 2016 - OpeningIcinga
 
IcingaCamp Stockholm - End user experience monitoring of cloud applications
IcingaCamp Stockholm - End user experience monitoring of cloud applicationsIcingaCamp Stockholm - End user experience monitoring of cloud applications
IcingaCamp Stockholm - End user experience monitoring of cloud applicationsIcinga
 
Icinga Camp Belgrade - Icinga 2 Apify Them All
Icinga Camp Belgrade - Icinga 2 Apify Them AllIcinga Camp Belgrade - Icinga 2 Apify Them All
Icinga Camp Belgrade - Icinga 2 Apify Them AllIcinga
 
Monitoring Open Source Databases with Icinga
Monitoring Open Source Databases with IcingaMonitoring Open Source Databases with Icinga
Monitoring Open Source Databases with IcingaIcinga
 

Viewers also liked (20)

Icinga Camp Amsterdam - Monitoring – When to start
Icinga Camp Amsterdam - Monitoring – When to startIcinga Camp Amsterdam - Monitoring – When to start
Icinga Camp Amsterdam - Monitoring – When to start
 
Icinga Camp Amsterdam - Icinga, Graphite, Grafana
Icinga Camp Amsterdam - Icinga, Graphite, GrafanaIcinga Camp Amsterdam - Icinga, Graphite, Grafana
Icinga Camp Amsterdam - Icinga, Graphite, Grafana
 
IcingaCamp Stockholm - How to make your monitoring shut up
IcingaCamp Stockholm - How to make your monitoring shut upIcingaCamp Stockholm - How to make your monitoring shut up
IcingaCamp Stockholm - How to make your monitoring shut up
 
Icinga Camp Belgrade - ITAF Introduction
Icinga Camp Belgrade - ITAF IntroductionIcinga Camp Belgrade - ITAF Introduction
Icinga Camp Belgrade - ITAF Introduction
 
Icinga 2 - Apify them all at Icinga Camp Amsterdam 2016
Icinga 2 - Apify them all at Icinga Camp Amsterdam 2016Icinga 2 - Apify them all at Icinga Camp Amsterdam 2016
Icinga 2 - Apify them all at Icinga Camp Amsterdam 2016
 
Icinga Camp Amsterdam - Infrastructure as Code
Icinga Camp Amsterdam - Infrastructure as CodeIcinga Camp Amsterdam - Infrastructure as Code
Icinga Camp Amsterdam - Infrastructure as Code
 
IcingaCamp Stockholm - Opening
IcingaCamp Stockholm - OpeningIcingaCamp Stockholm - Opening
IcingaCamp Stockholm - Opening
 
MoniTutor
MoniTutorMoniTutor
MoniTutor
 
Icinga Camp Amsterdam - Icinga2 and Puppet
Icinga Camp Amsterdam - Icinga2 and PuppetIcinga Camp Amsterdam - Icinga2 and Puppet
Icinga Camp Amsterdam - Icinga2 and Puppet
 
Icinga Camp Belgrade - ITAF Monitoring best practices & demo
Icinga Camp Belgrade - ITAF Monitoring best practices & demoIcinga Camp Belgrade - ITAF Monitoring best practices & demo
Icinga Camp Belgrade - ITAF Monitoring best practices & demo
 
Icinga Camp Belgrade - State of Icinga
Icinga Camp Belgrade - State of IcingaIcinga Camp Belgrade - State of Icinga
Icinga Camp Belgrade - State of Icinga
 
Presentation about Icinga at Kiratech DevOps Day in Verona
Presentation about Icinga at Kiratech DevOps Day in VeronaPresentation about Icinga at Kiratech DevOps Day in Verona
Presentation about Icinga at Kiratech DevOps Day in Verona
 
Icinga Camp San Diego: Apify them all
Icinga Camp San Diego: Apify them allIcinga Camp San Diego: Apify them all
Icinga Camp San Diego: Apify them all
 
IcingaCamp Stockholm - NSClient++
IcingaCamp Stockholm - NSClient++IcingaCamp Stockholm - NSClient++
IcingaCamp Stockholm - NSClient++
 
IcingaCamp Stockholm - Graphing with Graphite und Grafana
IcingaCamp Stockholm - Graphing with Graphite und GrafanaIcingaCamp Stockholm - Graphing with Graphite und Grafana
IcingaCamp Stockholm - Graphing with Graphite und Grafana
 
Icinga2 in the middle of your toolstack
Icinga2 in the middle of your toolstackIcinga2 in the middle of your toolstack
Icinga2 in the middle of your toolstack
 
Icinga Camp Berlin 2016 - Opening
Icinga Camp Berlin 2016 - OpeningIcinga Camp Berlin 2016 - Opening
Icinga Camp Berlin 2016 - Opening
 
IcingaCamp Stockholm - End user experience monitoring of cloud applications
IcingaCamp Stockholm - End user experience monitoring of cloud applicationsIcingaCamp Stockholm - End user experience monitoring of cloud applications
IcingaCamp Stockholm - End user experience monitoring of cloud applications
 
Icinga Camp Belgrade - Icinga 2 Apify Them All
Icinga Camp Belgrade - Icinga 2 Apify Them AllIcinga Camp Belgrade - Icinga 2 Apify Them All
Icinga Camp Belgrade - Icinga 2 Apify Them All
 
Monitoring Open Source Databases with Icinga
Monitoring Open Source Databases with IcingaMonitoring Open Source Databases with Icinga
Monitoring Open Source Databases with Icinga
 

Similar to Icinga Camp Amsterdam - Icinga2 and Ansible

OSMC 2017 | Icinga 2 Multi Zone HA Setup using Ansible by Toshaan Bharvani
OSMC 2017 | Icinga 2 Multi Zone HA Setup using Ansible by Toshaan BharvaniOSMC 2017 | Icinga 2 Multi Zone HA Setup using Ansible by Toshaan Bharvani
OSMC 2017 | Icinga 2 Multi Zone HA Setup using Ansible by Toshaan BharvaniNETWAYS
 
Cebit 2015 icinga
Cebit 2015 icingaCebit 2015 icinga
Cebit 2015 icingaIcinga
 
Monitoring with Icinga @ SF Bay Area LSPE meetup
Monitoring with Icinga @ SF Bay Area LSPE meetupMonitoring with Icinga @ SF Bay Area LSPE meetup
Monitoring with Icinga @ SF Bay Area LSPE meetupPromet Source
 
OpenStack Glance Project Update
OpenStack Glance Project UpdateOpenStack Glance Project Update
OpenStack Glance Project UpdateBrian Rosmaita
 
Icinga Camp Antwerp - Current State of Icinga
Icinga Camp Antwerp - Current State of IcingaIcinga Camp Antwerp - Current State of Icinga
Icinga Camp Antwerp - Current State of IcingaIcinga
 
Developing ZenPacks the Right Way: Introducing the SDK
Developing ZenPacks the Right Way: Introducing the SDK Developing ZenPacks the Right Way: Introducing the SDK
Developing ZenPacks the Right Way: Introducing the SDK Zenoss
 
Nagios Conference 2012 - Jason Cook - Nagios and Mod-Gearman
Nagios Conference 2012 - Jason Cook - Nagios and Mod-GearmanNagios Conference 2012 - Jason Cook - Nagios and Mod-Gearman
Nagios Conference 2012 - Jason Cook - Nagios and Mod-GearmanNagios
 
Why favor Icinga over Nagios @ DebConf15
Why favor Icinga over Nagios @ DebConf15Why favor Icinga over Nagios @ DebConf15
Why favor Icinga over Nagios @ DebConf15Icinga
 
OSMC 2017 | Current State of Icinga by Erk Bernd
OSMC 2017 | Current State of Icinga by Erk BerndOSMC 2017 | Current State of Icinga by Erk Bernd
OSMC 2017 | Current State of Icinga by Erk BerndNETWAYS
 
Icinga at Flossuk 2015 in York
Icinga at Flossuk 2015 in YorkIcinga at Flossuk 2015 in York
Icinga at Flossuk 2015 in YorkIcinga
 
21st Century iBGP Route Reflection by Mark Tinka
21st Century iBGP Route Reflection by Mark Tinka21st Century iBGP Route Reflection by Mark Tinka
21st Century iBGP Route Reflection by Mark TinkaMyNOG
 
Icinga Camp Antwerp - Icinga2 Cluster
Icinga Camp Antwerp - Icinga2 ClusterIcinga Camp Antwerp - Icinga2 Cluster
Icinga Camp Antwerp - Icinga2 ClusterIcinga
 
Cloud native Continuous Delivery
Cloud native Continuous DeliveryCloud native Continuous Delivery
Cloud native Continuous DeliveryChristian Deger
 
Building Pistachio with Sencha Touch 2 (introductory)
Building Pistachio with Sencha Touch 2 (introductory)Building Pistachio with Sencha Touch 2 (introductory)
Building Pistachio with Sencha Touch 2 (introductory)Luis Merino
 
Throughwave Day 2015 - Throughwave Next Generation Enterprise IT Infrastructure
Throughwave Day 2015 - Throughwave Next Generation Enterprise IT InfrastructureThroughwave Day 2015 - Throughwave Next Generation Enterprise IT Infrastructure
Throughwave Day 2015 - Throughwave Next Generation Enterprise IT InfrastructureAruj Thirawat
 
7 Habits of Highly Effective Jenkins Users
7 Habits of Highly Effective Jenkins Users7 Habits of Highly Effective Jenkins Users
7 Habits of Highly Effective Jenkins UsersJules Pierre-Louis
 
IoT Meetup Oslo - AI on Edge Devices
IoT Meetup Oslo - AI on Edge DevicesIoT Meetup Oslo - AI on Edge Devices
IoT Meetup Oslo - AI on Edge DevicesMark West
 
OSMC 2013 | Current State of Icinga by Icinga Team
OSMC 2013 | Current State of Icinga by Icinga TeamOSMC 2013 | Current State of Icinga by Icinga Team
OSMC 2013 | Current State of Icinga by Icinga TeamNETWAYS
 

Similar to Icinga Camp Amsterdam - Icinga2 and Ansible (20)

OSMC 2017 | Icinga 2 Multi Zone HA Setup using Ansible by Toshaan Bharvani
OSMC 2017 | Icinga 2 Multi Zone HA Setup using Ansible by Toshaan BharvaniOSMC 2017 | Icinga 2 Multi Zone HA Setup using Ansible by Toshaan Bharvani
OSMC 2017 | Icinga 2 Multi Zone HA Setup using Ansible by Toshaan Bharvani
 
Cebit 2015 icinga
Cebit 2015 icingaCebit 2015 icinga
Cebit 2015 icinga
 
Monitoring with Icinga @ SF Bay Area LSPE meetup
Monitoring with Icinga @ SF Bay Area LSPE meetupMonitoring with Icinga @ SF Bay Area LSPE meetup
Monitoring with Icinga @ SF Bay Area LSPE meetup
 
OpenStack Glance Project Update
OpenStack Glance Project UpdateOpenStack Glance Project Update
OpenStack Glance Project Update
 
Icinga Camp Antwerp - Current State of Icinga
Icinga Camp Antwerp - Current State of IcingaIcinga Camp Antwerp - Current State of Icinga
Icinga Camp Antwerp - Current State of Icinga
 
Developing ZenPacks the Right Way: Introducing the SDK
Developing ZenPacks the Right Way: Introducing the SDK Developing ZenPacks the Right Way: Introducing the SDK
Developing ZenPacks the Right Way: Introducing the SDK
 
Nagios Conference 2012 - Jason Cook - Nagios and Mod-Gearman
Nagios Conference 2012 - Jason Cook - Nagios and Mod-GearmanNagios Conference 2012 - Jason Cook - Nagios and Mod-Gearman
Nagios Conference 2012 - Jason Cook - Nagios and Mod-Gearman
 
Why favor Icinga over Nagios @ DebConf15
Why favor Icinga over Nagios @ DebConf15Why favor Icinga over Nagios @ DebConf15
Why favor Icinga over Nagios @ DebConf15
 
Camunda and Apache Cassandra
Camunda and Apache CassandraCamunda and Apache Cassandra
Camunda and Apache Cassandra
 
OSMC 2017 | Current State of Icinga by Erk Bernd
OSMC 2017 | Current State of Icinga by Erk BerndOSMC 2017 | Current State of Icinga by Erk Bernd
OSMC 2017 | Current State of Icinga by Erk Bernd
 
Lean & agile with MongoDB
Lean & agile with MongoDBLean & agile with MongoDB
Lean & agile with MongoDB
 
Icinga at Flossuk 2015 in York
Icinga at Flossuk 2015 in YorkIcinga at Flossuk 2015 in York
Icinga at Flossuk 2015 in York
 
21st Century iBGP Route Reflection by Mark Tinka
21st Century iBGP Route Reflection by Mark Tinka21st Century iBGP Route Reflection by Mark Tinka
21st Century iBGP Route Reflection by Mark Tinka
 
Icinga Camp Antwerp - Icinga2 Cluster
Icinga Camp Antwerp - Icinga2 ClusterIcinga Camp Antwerp - Icinga2 Cluster
Icinga Camp Antwerp - Icinga2 Cluster
 
Cloud native Continuous Delivery
Cloud native Continuous DeliveryCloud native Continuous Delivery
Cloud native Continuous Delivery
 
Building Pistachio with Sencha Touch 2 (introductory)
Building Pistachio with Sencha Touch 2 (introductory)Building Pistachio with Sencha Touch 2 (introductory)
Building Pistachio with Sencha Touch 2 (introductory)
 
Throughwave Day 2015 - Throughwave Next Generation Enterprise IT Infrastructure
Throughwave Day 2015 - Throughwave Next Generation Enterprise IT InfrastructureThroughwave Day 2015 - Throughwave Next Generation Enterprise IT Infrastructure
Throughwave Day 2015 - Throughwave Next Generation Enterprise IT Infrastructure
 
7 Habits of Highly Effective Jenkins Users
7 Habits of Highly Effective Jenkins Users7 Habits of Highly Effective Jenkins Users
7 Habits of Highly Effective Jenkins Users
 
IoT Meetup Oslo - AI on Edge Devices
IoT Meetup Oslo - AI on Edge DevicesIoT Meetup Oslo - AI on Edge Devices
IoT Meetup Oslo - AI on Edge Devices
 
OSMC 2013 | Current State of Icinga by Icinga Team
OSMC 2013 | Current State of Icinga by Icinga TeamOSMC 2013 | Current State of Icinga by Icinga Team
OSMC 2013 | Current State of Icinga by Icinga Team
 

More from Icinga

Upgrading Incident Management with Icinga - Icinga Camp Milan 2023
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023Upgrading Incident Management with Icinga - Icinga Camp Milan 2023
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023Icinga
 
Extending Icinga Web with Modules: powerful, smart and easily created - Icing...
Extending Icinga Web with Modules: powerful, smart and easily created - Icing...Extending Icinga Web with Modules: powerful, smart and easily created - Icing...
Extending Icinga Web with Modules: powerful, smart and easily created - Icing...Icinga
 
Infrastructure Monitoring for Cloud Native Enterprises - Icinga Camp Milan 2023
Infrastructure Monitoring for Cloud Native Enterprises - Icinga Camp Milan 2023Infrastructure Monitoring for Cloud Native Enterprises - Icinga Camp Milan 2023
Infrastructure Monitoring for Cloud Native Enterprises - Icinga Camp Milan 2023Icinga
 
Incident management: Best industry practices your team should know - Icinga C...
Incident management: Best industry practices your team should know - Icinga C...Incident management: Best industry practices your team should know - Icinga C...
Incident management: Best industry practices your team should know - Icinga C...Icinga
 
Monitoring Cooling Units in a pharmaceutical GxP regulated environment - Icin...
Monitoring Cooling Units in a pharmaceutical GxP regulated environment - Icin...Monitoring Cooling Units in a pharmaceutical GxP regulated environment - Icin...
Monitoring Cooling Units in a pharmaceutical GxP regulated environment - Icin...Icinga
 
SNMP Monitoring at scale - Icinga Camp Milan 2023
SNMP Monitoring at scale - Icinga Camp Milan 2023SNMP Monitoring at scale - Icinga Camp Milan 2023
SNMP Monitoring at scale - Icinga Camp Milan 2023Icinga
 
Monitoring Kubernetes with Icinga - Icinga Camp Milan 2023
Monitoring Kubernetes with Icinga - Icinga Camp Milan 2023Monitoring Kubernetes with Icinga - Icinga Camp Milan 2023
Monitoring Kubernetes with Icinga - Icinga Camp Milan 2023Icinga
 
Current State of Icinga - Icinga Camp Milan 2023
Current State of Icinga - Icinga Camp Milan 2023Current State of Icinga - Icinga Camp Milan 2023
Current State of Icinga - Icinga Camp Milan 2023Icinga
 
Efficient IT operations using monitoring systems and standardized tools - Ici...
Efficient IT operations using monitoring systems and standardized tools - Ici...Efficient IT operations using monitoring systems and standardized tools - Ici...
Efficient IT operations using monitoring systems and standardized tools - Ici...Icinga
 
Tornado Complex Event Processing Framework for Icinga - Icinga Camp Zurich 2019
Tornado Complex Event Processing Framework for Icinga - Icinga Camp Zurich 2019Tornado Complex Event Processing Framework for Icinga - Icinga Camp Zurich 2019
Tornado Complex Event Processing Framework for Icinga - Icinga Camp Zurich 2019Icinga
 
Signalilo: Visualizing Prometheus alerts in Icinga2 - Icinga Camp Zurich 2019
Signalilo: Visualizing Prometheus alerts in Icinga2 - Icinga Camp Zurich 2019Signalilo: Visualizing Prometheus alerts in Icinga2 - Icinga Camp Zurich 2019
Signalilo: Visualizing Prometheus alerts in Icinga2 - Icinga Camp Zurich 2019Icinga
 
Moving from Icinga 1 to Icinga 2 + Director - Icinga Camp Zurich 2019
Moving from Icinga 1 to Icinga 2 + Director - Icinga Camp Zurich 2019Moving from Icinga 1 to Icinga 2 + Director - Icinga Camp Zurich 2019
Moving from Icinga 1 to Icinga 2 + Director - Icinga Camp Zurich 2019Icinga
 
Icinga Director and vSphereDB - how they play together - Icinga Camp Zurich 2019
Icinga Director and vSphereDB - how they play together - Icinga Camp Zurich 2019Icinga Director and vSphereDB - how they play together - Icinga Camp Zurich 2019
Icinga Director and vSphereDB - how they play together - Icinga Camp Zurich 2019Icinga
 
Current State of Icinga - Icinga Camp Zurich 2019
Current State of Icinga - Icinga Camp Zurich 2019Current State of Icinga - Icinga Camp Zurich 2019
Current State of Icinga - Icinga Camp Zurich 2019Icinga
 
NetEye 4 based on Icinga 2 - Icinga Camp Milan 2019
NetEye 4 based on Icinga 2 - Icinga Camp Milan 2019NetEye 4 based on Icinga 2 - Icinga Camp Milan 2019
NetEye 4 based on Icinga 2 - Icinga Camp Milan 2019Icinga
 
Integrating Icinga 2 and ntopng - Icinga Camp Milan 2019
Integrating Icinga 2 and ntopng - Icinga Camp Milan 2019Integrating Icinga 2 and ntopng - Icinga Camp Milan 2019
Integrating Icinga 2 and ntopng - Icinga Camp Milan 2019Icinga
 
DevOps monitoring: Best Practices using OpenShift combined with Icinga & Big ...
DevOps monitoring: Best Practices using OpenShift combined with Icinga & Big ...DevOps monitoring: Best Practices using OpenShift combined with Icinga & Big ...
DevOps monitoring: Best Practices using OpenShift combined with Icinga & Big ...Icinga
 
Current State of Icinga - Icinga Camp Milan 2019
Current State of Icinga - Icinga Camp Milan 2019Current State of Icinga - Icinga Camp Milan 2019
Current State of Icinga - Icinga Camp Milan 2019Icinga
 
Best of Icinga Modules - Icinga Camp Milan 2019
Best of Icinga Modules - Icinga Camp Milan 2019Best of Icinga Modules - Icinga Camp Milan 2019
Best of Icinga Modules - Icinga Camp Milan 2019Icinga
 
hallenges of Monitoring Big Infrastructure - Icinga Camp Milan 2019
hallenges of Monitoring Big Infrastructure - Icinga Camp Milan 2019hallenges of Monitoring Big Infrastructure - Icinga Camp Milan 2019
hallenges of Monitoring Big Infrastructure - Icinga Camp Milan 2019Icinga
 

More from Icinga (20)

Upgrading Incident Management with Icinga - Icinga Camp Milan 2023
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023Upgrading Incident Management with Icinga - Icinga Camp Milan 2023
Upgrading Incident Management with Icinga - Icinga Camp Milan 2023
 
Extending Icinga Web with Modules: powerful, smart and easily created - Icing...
Extending Icinga Web with Modules: powerful, smart and easily created - Icing...Extending Icinga Web with Modules: powerful, smart and easily created - Icing...
Extending Icinga Web with Modules: powerful, smart and easily created - Icing...
 
Infrastructure Monitoring for Cloud Native Enterprises - Icinga Camp Milan 2023
Infrastructure Monitoring for Cloud Native Enterprises - Icinga Camp Milan 2023Infrastructure Monitoring for Cloud Native Enterprises - Icinga Camp Milan 2023
Infrastructure Monitoring for Cloud Native Enterprises - Icinga Camp Milan 2023
 
Incident management: Best industry practices your team should know - Icinga C...
Incident management: Best industry practices your team should know - Icinga C...Incident management: Best industry practices your team should know - Icinga C...
Incident management: Best industry practices your team should know - Icinga C...
 
Monitoring Cooling Units in a pharmaceutical GxP regulated environment - Icin...
Monitoring Cooling Units in a pharmaceutical GxP regulated environment - Icin...Monitoring Cooling Units in a pharmaceutical GxP regulated environment - Icin...
Monitoring Cooling Units in a pharmaceutical GxP regulated environment - Icin...
 
SNMP Monitoring at scale - Icinga Camp Milan 2023
SNMP Monitoring at scale - Icinga Camp Milan 2023SNMP Monitoring at scale - Icinga Camp Milan 2023
SNMP Monitoring at scale - Icinga Camp Milan 2023
 
Monitoring Kubernetes with Icinga - Icinga Camp Milan 2023
Monitoring Kubernetes with Icinga - Icinga Camp Milan 2023Monitoring Kubernetes with Icinga - Icinga Camp Milan 2023
Monitoring Kubernetes with Icinga - Icinga Camp Milan 2023
 
Current State of Icinga - Icinga Camp Milan 2023
Current State of Icinga - Icinga Camp Milan 2023Current State of Icinga - Icinga Camp Milan 2023
Current State of Icinga - Icinga Camp Milan 2023
 
Efficient IT operations using monitoring systems and standardized tools - Ici...
Efficient IT operations using monitoring systems and standardized tools - Ici...Efficient IT operations using monitoring systems and standardized tools - Ici...
Efficient IT operations using monitoring systems and standardized tools - Ici...
 
Tornado Complex Event Processing Framework for Icinga - Icinga Camp Zurich 2019
Tornado Complex Event Processing Framework for Icinga - Icinga Camp Zurich 2019Tornado Complex Event Processing Framework for Icinga - Icinga Camp Zurich 2019
Tornado Complex Event Processing Framework for Icinga - Icinga Camp Zurich 2019
 
Signalilo: Visualizing Prometheus alerts in Icinga2 - Icinga Camp Zurich 2019
Signalilo: Visualizing Prometheus alerts in Icinga2 - Icinga Camp Zurich 2019Signalilo: Visualizing Prometheus alerts in Icinga2 - Icinga Camp Zurich 2019
Signalilo: Visualizing Prometheus alerts in Icinga2 - Icinga Camp Zurich 2019
 
Moving from Icinga 1 to Icinga 2 + Director - Icinga Camp Zurich 2019
Moving from Icinga 1 to Icinga 2 + Director - Icinga Camp Zurich 2019Moving from Icinga 1 to Icinga 2 + Director - Icinga Camp Zurich 2019
Moving from Icinga 1 to Icinga 2 + Director - Icinga Camp Zurich 2019
 
Icinga Director and vSphereDB - how they play together - Icinga Camp Zurich 2019
Icinga Director and vSphereDB - how they play together - Icinga Camp Zurich 2019Icinga Director and vSphereDB - how they play together - Icinga Camp Zurich 2019
Icinga Director and vSphereDB - how they play together - Icinga Camp Zurich 2019
 
Current State of Icinga - Icinga Camp Zurich 2019
Current State of Icinga - Icinga Camp Zurich 2019Current State of Icinga - Icinga Camp Zurich 2019
Current State of Icinga - Icinga Camp Zurich 2019
 
NetEye 4 based on Icinga 2 - Icinga Camp Milan 2019
NetEye 4 based on Icinga 2 - Icinga Camp Milan 2019NetEye 4 based on Icinga 2 - Icinga Camp Milan 2019
NetEye 4 based on Icinga 2 - Icinga Camp Milan 2019
 
Integrating Icinga 2 and ntopng - Icinga Camp Milan 2019
Integrating Icinga 2 and ntopng - Icinga Camp Milan 2019Integrating Icinga 2 and ntopng - Icinga Camp Milan 2019
Integrating Icinga 2 and ntopng - Icinga Camp Milan 2019
 
DevOps monitoring: Best Practices using OpenShift combined with Icinga & Big ...
DevOps monitoring: Best Practices using OpenShift combined with Icinga & Big ...DevOps monitoring: Best Practices using OpenShift combined with Icinga & Big ...
DevOps monitoring: Best Practices using OpenShift combined with Icinga & Big ...
 
Current State of Icinga - Icinga Camp Milan 2019
Current State of Icinga - Icinga Camp Milan 2019Current State of Icinga - Icinga Camp Milan 2019
Current State of Icinga - Icinga Camp Milan 2019
 
Best of Icinga Modules - Icinga Camp Milan 2019
Best of Icinga Modules - Icinga Camp Milan 2019Best of Icinga Modules - Icinga Camp Milan 2019
Best of Icinga Modules - Icinga Camp Milan 2019
 
hallenges of Monitoring Big Infrastructure - Icinga Camp Milan 2019
hallenges of Monitoring Big Infrastructure - Icinga Camp Milan 2019hallenges of Monitoring Big Infrastructure - Icinga Camp Milan 2019
hallenges of Monitoring Big Infrastructure - Icinga Camp Milan 2019
 

Recently uploaded

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 

Recently uploaded (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 

Icinga Camp Amsterdam - Icinga2 and Ansible

  • 1. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Deploying Icinga2 through Ansible Monitoring migration through automation Toshaan Bharvani - VanTosh bvba <toshaan@vantosh.com> Icinga Camp Amsterdam 2016 28 June 2016 Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 1 / 37
  • 2. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End $ whoami Toshaan Bharvani - VanTosh • From Antwerp, Belgium • Self-employed engineer, trainer, consultant, http://www.vantosh.com • Involved with Enterprise OS : PEL, RHEL, CentOS, IBM AIX, OpenBSD, FreeBSD, SLES, . . . • Likes to keep everything secure : SELinux, WebSec, . . . • Lives in a virtual world : KVM, Xen, LXC, PowerVM, z/VM, . . . • Likes automation : Ansible, Puppet, Salt • Works on both hardware and software side • Wants to take over the world • Twitter : @toshywoshy • Blog : http://www.toshaan.com Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 2 / 37
  • 3. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Table of contents 1 Monitoring 2 Automation Inventory Virtual Machines 3 Icinga2 Icinga2 Masters Icinga2 Clients 4 Conclusion Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 3 / 37
  • 4. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End 1 Monitoring Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 4 / 37
  • 5. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Monitoring Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 5 / 37
  • 6. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Choices • Nagios • Well know, good for smaller install base • Zenoss • Big coupled project without any cohesion • Zabbix • Distributed, all-in-one solution, good • Ganglia • RRD as static, web interface is dated • Icinga • Better web interface with nagios forked backend • OpsView • Fancier web interface which is liked by managers, nagios forked • Shinken • Distributed, modular, good for smal install base • Icinga2 • Distributed, better scalability, better interface, modular and integrations Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
  • 7. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Choices • Nagios • Well know, good for smaller install base • Zenoss • Big coupled project without any cohesion • Zabbix • Distributed, all-in-one solution, good • Ganglia • RRD as static, web interface is dated • Icinga • Better web interface with nagios forked backend • OpsView • Fancier web interface which is liked by managers, nagios forked • Shinken • Distributed, modular, good for smal install base • Icinga2 • Distributed, better scalability, better interface, modular and integrations Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
  • 8. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Choices • Nagios • Well know, good for smaller install base • Zenoss • Big coupled project without any cohesion • Zabbix • Distributed, all-in-one solution, good • Ganglia • RRD as static, web interface is dated • Icinga • Better web interface with nagios forked backend • OpsView • Fancier web interface which is liked by managers, nagios forked • Shinken • Distributed, modular, good for smal install base • Icinga2 • Distributed, better scalability, better interface, modular and integrations Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
  • 9. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Choices • Nagios • Well know, good for smaller install base • Zenoss • Big coupled project without any cohesion • Zabbix • Distributed, all-in-one solution, good • Ganglia • RRD as static, web interface is dated • Icinga • Better web interface with nagios forked backend • OpsView • Fancier web interface which is liked by managers, nagios forked • Shinken • Distributed, modular, good for smal install base • Icinga2 • Distributed, better scalability, better interface, modular and integrations Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
  • 10. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Choices • Nagios • Well know, good for smaller install base • Zenoss • Big coupled project without any cohesion • Zabbix • Distributed, all-in-one solution, good • Ganglia • RRD as static, web interface is dated • Icinga • Better web interface with nagios forked backend • OpsView • Fancier web interface which is liked by managers, nagios forked • Shinken • Distributed, modular, good for smal install base • Icinga2 • Distributed, better scalability, better interface, modular and integrations Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
  • 11. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Choices • Nagios • Well know, good for smaller install base • Zenoss • Big coupled project without any cohesion • Zabbix • Distributed, all-in-one solution, good • Ganglia • RRD as static, web interface is dated • Icinga • Better web interface with nagios forked backend • OpsView • Fancier web interface which is liked by managers, nagios forked • Shinken • Distributed, modular, good for smal install base • Icinga2 • Distributed, better scalability, better interface, modular and integrations Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
  • 12. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Choices • Nagios • Well know, good for smaller install base • Zenoss • Big coupled project without any cohesion • Zabbix • Distributed, all-in-one solution, good • Ganglia • RRD as static, web interface is dated • Icinga • Better web interface with nagios forked backend • OpsView • Fancier web interface which is liked by managers, nagios forked • Shinken • Distributed, modular, good for smal install base • Icinga2 • Distributed, better scalability, better interface, modular and integrations Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
  • 13. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Choices • Nagios • Well know, good for smaller install base • Zenoss • Big coupled project without any cohesion • Zabbix • Distributed, all-in-one solution, good • Ganglia • RRD as static, web interface is dated • Icinga • Better web interface with nagios forked backend • OpsView • Fancier web interface which is liked by managers, nagios forked • Shinken • Distributed, modular, good for smal install base • Icinga2 • Distributed, better scalability, better interface, modular and integrations Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
  • 14. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Choices • Nagios • Well know, good for smaller install base • Zenoss • Big coupled project without any cohesion • Zabbix • Distributed, all-in-one solution, good • Ganglia • RRD as static, web interface is dated • Icinga • Better web interface with nagios forked backend • OpsView • Fancier web interface which is liked by managers, nagios forked • Shinken • Distributed, modular, good for smal install base • Icinga2 • Distributed, better scalability, better interface, modular and integrations Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
  • 15. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Choices • Nagios • Well know, good for smaller install base • Zenoss • Big coupled project without any cohesion • Zabbix • Distributed, all-in-one solution, good • Ganglia • RRD as static, web interface is dated • Icinga • Better web interface with nagios forked backend • OpsView • Fancier web interface which is liked by managers, nagios forked • Shinken • Distributed, modular, good for smal install base • Icinga2 • Distributed, better scalability, better interface, modular and integrations Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
  • 16. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Choices • Nagios • Well know, good for smaller install base • Zenoss • Big coupled project without any cohesion • Zabbix • Distributed, all-in-one solution, good • Ganglia • RRD as static, web interface is dated • Icinga • Better web interface with nagios forked backend • OpsView • Fancier web interface which is liked by managers, nagios forked • Shinken • Distributed, modular, good for smal install base • Icinga2 • Distributed, better scalability, better interface, modular and integrations Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
  • 17. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Choices • Nagios • Well know, good for smaller install base • Zenoss • Big coupled project without any cohesion • Zabbix • Distributed, all-in-one solution, good • Ganglia • RRD as static, web interface is dated • Icinga • Better web interface with nagios forked backend • OpsView • Fancier web interface which is liked by managers, nagios forked • Shinken • Distributed, modular, good for smal install base • Icinga2 • Distributed, better scalability, better interface, modular and integrations Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
  • 18. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Choices • Nagios • Well know, good for smaller install base • Zenoss • Big coupled project without any cohesion • Zabbix • Distributed, all-in-one solution, good • Ganglia • RRD as static, web interface is dated • Icinga • Better web interface with nagios forked backend • OpsView • Fancier web interface which is liked by managers, nagios forked • Shinken • Distributed, modular, good for smal install base • Icinga2 • Distributed, better scalability, better interface, modular and integrations Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
  • 19. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Choices • Nagios • Well know, good for smaller install base • Zenoss • Big coupled project without any cohesion • Zabbix • Distributed, all-in-one solution, good • Ganglia • RRD as static, web interface is dated • Icinga • Better web interface with nagios forked backend • OpsView • Fancier web interface which is liked by managers, nagios forked • Shinken • Distributed, modular, good for smal install base • Icinga2 • Distributed, better scalability, better interface, modular and integrations Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
  • 20. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Choices • Nagios • Well know, good for smaller install base • Zenoss • Big coupled project without any cohesion • Zabbix • Distributed, all-in-one solution, good • Ganglia • RRD as static, web interface is dated • Icinga • Better web interface with nagios forked backend • OpsView • Fancier web interface which is liked by managers, nagios forked • Shinken • Distributed, modular, good for smal install base • Icinga2 • Distributed, better scalability, better interface, modular and integrations Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
  • 21. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Choices • Nagios • Well know, good for smaller install base • Zenoss • Big coupled project without any cohesion • Zabbix • Distributed, all-in-one solution, good • Ganglia • RRD as static, web interface is dated • Icinga • Better web interface with nagios forked backend • OpsView • Fancier web interface which is liked by managers, nagios forked • Shinken • Distributed, modular, good for smal install base • Icinga2 • Distributed, better scalability, better interface, modular and integrations Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 6 / 37
  • 22. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End 2 Automation Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 7 / 37
  • 23. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Ansible “Ansible is a fictional machine capable of instantaneous or superluminal communication. Typically it is depicted as a lunch-box-sized object with some combination of microphone, speaker, keyboard and display. It can send and receive messages to and from a corresponding device over any distance whatsoever with no delay.”1 • Configuration Management Tool • System Orchestration Tool • Remote Execution/Deployment Tool • . . . 1Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 8 / 37
  • 24. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End An overview • Python2 based • Server based, agentless2 • uses SSH protocol (can use accelerated mode uses a daemon and port) • host information in flat files, CMDB, scripts, . . . • executes the task on the host side • Playbook : combination of tasks with meta information • YAML • JSON • Roles : abstract playbook • Tasks • Variables • Handlers • Templates : Jinja2 • works where Python2 works3 2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is not necessary 3Ansible can actually run without Python on the remote host, however it is not fully supported Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
  • 25. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End An overview • Python2 based • Server based, agentless2 • uses SSH protocol (can use accelerated mode uses a daemon and port) • host information in flat files, CMDB, scripts, . . . • executes the task on the host side • Playbook : combination of tasks with meta information • YAML • JSON • Roles : abstract playbook • Tasks • Variables • Handlers • Templates : Jinja2 • works where Python2 works3 2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is not necessary 3Ansible can actually run without Python on the remote host, however it is not fully supported Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
  • 26. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End An overview • Python2 based • Server based, agentless2 • uses SSH protocol (can use accelerated mode uses a daemon and port) • host information in flat files, CMDB, scripts, . . . • executes the task on the host side • Playbook : combination of tasks with meta information • YAML • JSON • Roles : abstract playbook • Tasks • Variables • Handlers • Templates : Jinja2 • works where Python2 works3 2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is not necessary 3Ansible can actually run without Python on the remote host, however it is not fully supported Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
  • 27. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End An overview • Python2 based • Server based, agentless2 • uses SSH protocol (can use accelerated mode uses a daemon and port) • host information in flat files, CMDB, scripts, . . . • executes the task on the host side • Playbook : combination of tasks with meta information • YAML • JSON • Roles : abstract playbook • Tasks • Variables • Handlers • Templates : Jinja2 • works where Python2 works3 2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is not necessary 3Ansible can actually run without Python on the remote host, however it is not fully supported Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
  • 28. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End An overview • Python2 based • Server based, agentless2 • uses SSH protocol (can use accelerated mode uses a daemon and port) • host information in flat files, CMDB, scripts, . . . • executes the task on the host side • Playbook : combination of tasks with meta information • YAML • JSON • Roles : abstract playbook • Tasks • Variables • Handlers • Templates : Jinja2 • works where Python2 works3 2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is not necessary 3Ansible can actually run without Python on the remote host, however it is not fully supported Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
  • 29. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End An overview • Python2 based • Server based, agentless2 • uses SSH protocol (can use accelerated mode uses a daemon and port) • host information in flat files, CMDB, scripts, . . . • executes the task on the host side • Playbook : combination of tasks with meta information • YAML • JSON • Roles : abstract playbook • Tasks • Variables • Handlers • Templates : Jinja2 • works where Python2 works3 2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is not necessary 3Ansible can actually run without Python on the remote host, however it is not fully supported Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
  • 30. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End An overview • Python2 based • Server based, agentless2 • uses SSH protocol (can use accelerated mode uses a daemon and port) • host information in flat files, CMDB, scripts, . . . • executes the task on the host side • Playbook : combination of tasks with meta information • YAML • JSON • Roles : abstract playbook • Tasks • Variables • Handlers • Templates : Jinja2 • works where Python2 works3 2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is not necessary 3Ansible can actually run without Python on the remote host, however it is not fully supported Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
  • 31. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End An overview • Python2 based • Server based, agentless2 • uses SSH protocol (can use accelerated mode uses a daemon and port) • host information in flat files, CMDB, scripts, . . . • executes the task on the host side • Playbook : combination of tasks with meta information • YAML • JSON • Roles : abstract playbook • Tasks • Variables • Handlers • Templates : Jinja2 • works where Python2 works3 2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is not necessary 3Ansible can actually run without Python on the remote host, however it is not fully supported Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
  • 32. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End An overview • Python2 based • Server based, agentless2 • uses SSH protocol (can use accelerated mode uses a daemon and port) • host information in flat files, CMDB, scripts, . . . • executes the task on the host side • Playbook : combination of tasks with meta information • YAML • JSON • Roles : abstract playbook • Tasks • Variables • Handlers • Templates : Jinja2 • works where Python2 works3 2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is not necessary 3Ansible can actually run without Python on the remote host, however it is not fully supported Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
  • 33. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End An overview • Python2 based • Server based, agentless2 • uses SSH protocol (can use accelerated mode uses a daemon and port) • host information in flat files, CMDB, scripts, . . . • executes the task on the host side • Playbook : combination of tasks with meta information • YAML • JSON • Roles : abstract playbook • Tasks • Variables • Handlers • Templates : Jinja2 • works where Python2 works3 2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is not necessary 3Ansible can actually run without Python on the remote host, however it is not fully supported Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
  • 34. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End An overview • Python2 based • Server based, agentless2 • uses SSH protocol (can use accelerated mode uses a daemon and port) • host information in flat files, CMDB, scripts, . . . • executes the task on the host side • Playbook : combination of tasks with meta information • YAML • JSON • Roles : abstract playbook • Tasks • Variables • Handlers • Templates : Jinja2 • works where Python2 works3 2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is not necessary 3Ansible can actually run without Python on the remote host, however it is not fully supported Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
  • 35. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End An overview • Python2 based • Server based, agentless2 • uses SSH protocol (can use accelerated mode uses a daemon and port) • host information in flat files, CMDB, scripts, . . . • executes the task on the host side • Playbook : combination of tasks with meta information • YAML • JSON • Roles : abstract playbook • Tasks • Variables • Handlers • Templates : Jinja2 • works where Python2 works3 2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is not necessary 3Ansible can actually run without Python on the remote host, however it is not fully supported Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
  • 36. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End An overview • Python2 based • Server based, agentless2 • uses SSH protocol (can use accelerated mode uses a daemon and port) • host information in flat files, CMDB, scripts, . . . • executes the task on the host side • Playbook : combination of tasks with meta information • YAML • JSON • Roles : abstract playbook • Tasks • Variables • Handlers • Templates : Jinja2 • works where Python2 works3 2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is not necessary 3Ansible can actually run without Python on the remote host, however it is not fully supported Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
  • 37. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End An overview • Python2 based • Server based, agentless2 • uses SSH protocol (can use accelerated mode uses a daemon and port) • host information in flat files, CMDB, scripts, . . . • executes the task on the host side • Playbook : combination of tasks with meta information • YAML • JSON • Roles : abstract playbook • Tasks • Variables • Handlers • Templates : Jinja2 • works where Python2 works3 2Abstraction of SSH / WinRM to connect with the node and in certain setup an agent might be required, but by default it is not necessary 3Ansible can actually run without Python on the remote host, however it is not fully supported Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 9 / 37
  • 38. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Internal Design Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 10 / 37
  • 39. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Normal Adhoc Mode Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 11 / 37
  • 40. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Delegation Mode Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 12 / 37
  • 41. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Inventory - Hypervisors • hosts file is by default in ini format § ¤ 1 [hypervisors ] 2 hypervisor0 3 hypervisor1 4 hypervisor2 5 hypervisor3 6 7 [ virtualmachines ] 8 vm0 9 vm1 10 vm2 11 vm3 ¦ ¥ Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 13 / 37
  • 42. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Inventory - Hypervisor (0) § ¤ 1 --- 2 distro: powerel7 3 machinearch: ppc64 4 rootpwd: $1$f0pPKH0e$0xrX07Ki9DPmpcmJooede7X . 5 language: en_US 6 keyboard: us 7 timezone: "Europe/Brussels" 8 nics: 9 - { type: bridge , name: br0 , model: virtio , bootproto: dhcp , device: eth0 , onboot: on } 10 hostname: hyp0.vantosh.demo 11 sshdrsakeylength : 8192 12 sshdecdsakeylength : 521 13 users: 14 - { name: supervisor , id: 1000 , ssh: yes , sshpubkey: /home/toshywoshy /. keys/id_hyp0.pub } 15 nrpe: { address: hyp0.vantosh.demo , zone: democenter0 , contact: mrnice } ¦ ¥ Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 14 / 37
  • 43. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Inventory - Hypervisor (1) § ¤ 1 --- 2 distro: powerel7 3 machinearch: ppc64le 4 rootpwd: $1$f0pPKH0e$0xrX07Ki9DPmpcmJooede7X . 5 language: en_US 6 keyboard: us 7 timezone: "Europe/Brussels" 8 nics: 9 - { type: bridge , name: br0 , model: virtio , bootproto: dhcp , device: eth0 , onboot: on } 10 hostname: hyp1.vantosh.demo 11 sshdrsakeylength : 8192 12 sshdecdsakeylength : 521 13 users: 14 - { name: supervisor , id: 1000 , ssh: yes , sshpubkey: /home/toshywoshy /. keys/id_hyp1.pub } 15 nrpe: { address: hyp1.vantosh.demo , zone: democenter1 , contact: mrnotsonice } ¦ ¥ Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 15 / 37
  • 44. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Inventory - Hypervisor (2) § ¤ 1 --- 2 distro: centos7 3 machinearch: x86_64 4 rootpwd: $1$f0pPKH0e$0xrX07Ki9DPmpcmJooede7X . 5 language: en_US 6 keyboard: us 7 timezone: "Europe/Brussels" 8 nics: 9 - { type: bridge , name: br0 , model: virtio , bootproto: dhcp , device: eth0 , onboot: on } 10 hostname: hyp2.vantosh.demo 11 sshdrsakeylength : 8192 12 sshdecdsakeylength : 521 13 users: 14 - { name: supervisor , id: 1000 , ssh: yes , sshpubkey: /home/toshywoshy /. keys/id_hyp2.pub } 15 nrpe: { address: hyp2.vantosh.demo , zone: democenter1 , contact: mrnice } ¦ ¥ Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 16 / 37
  • 45. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Inventory - Virtual Machine (0) § ¤ 1 --- 2 hyper: hypervisor0 3 distro: powerel7 4 machinearch: ppc64 5 virtualcpus: 32 6 virtualsockets : 2 7 virtualcores : 2 8 virtualthreads : 8 9 ramsize: 2048 10 vmwaittime: 15 11 language: en_US 12 keyboard: us 13 timezone: "Europe/Brussels" 14 rootpwd: $1$f0pPKH0e$0xrX07Ki9DPmpcmJooede7X . 15 sshdrsakeylength : 8192 16 sshdecdsakeylength : 521 17 virtualfilespath : /virtual/ 18 disks: 19 - { path: /virtual/vm0 -prep0.qcow2 , size: 10M } 20 - { path: /virtual/vm0 -boot0.qcow2 , size: 512M } 21 - { path: /virtual/vm0 -root0.qcow2 , size: 6G } 22 - { path: /virtual/vm0 -swap0.qcow2 , size: 512M } 23 - { path: /virtual/vm0 -swap1.qcow2 , size: 512M } 24 bootloader: bootloader --location=mbr --driveorder=vda ,vdb ,vdc ,vdd 25 partitions: 26 - part prepboot --ondisk=vda --asprimary --fstype="prepboot" --fsoptions=’ prepboot ’ --size =9 27 - part /boot --ondisk=vdb --asprimary --fstype="xfs" --fsoptions=’defaults , noatime ,discard ’ --grow --size =1 28 - part pv.01 --ondisk=vdc --asprimary --grow --size =1 29 - volgroup VolGroupRoot --pesize =131072 pv.01 30 - logvol / --fstype="xfs" --fsoptions=’defaults ,noatime ,discard ’ --name= LogVolRoot --vgname= VolGroupRoot --grow --size =1 31 - part swap --onpart=vdd --asprimary --fstype="swap" --fsoptions=’defaults , discard ’ --grow --size =1 32 - part swap --onpart=vde --asprimary --fstype="swap" --fsoptions=’defaults , discard ’ --grow --size =1 33 hostname: vm0.vantosh.demo 34 nics: 35 - { type: bridge , name: br0 , model: virtio , bootproto: dhcp , device: eth0 , onboot: on } 36 users: 37 - { name: administrator , id: 1000 , ssh: yes , sshpubkey: /home/toshywoshy /. keys/id_vm0.pub } 38 nrpe: { address: vm0.vantosh.demo , zone: democenter0 , contact: mrnice } ¦ ¥ Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 17 / 37
  • 46. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Inventory - Virtual Machine (1) § ¤ 1 --- 2 hyper: hypervisor0 3 distro: powerel7 4 machinearch: ppc64le 5 virtualcpus: 32 6 virtualsockets : 2 7 virtualcores : 2 8 virtualthreads : 8 9 ramsize: 2048 10 vmwaittime: 15 11 language: en_US 12 keyboard: us 13 timezone: "Europe/Brussels" 14 rootpwd: $1$f0pPKH0e$0xrX07Ki9DPmpcmJooede7X . 15 sshdrsakeylength : 8192 16 sshdecdsakeylength : 521 17 virtualfilespath : /virtual/ 18 disks: 19 - { path: /virtual/vm0 -prep0.qcow2 , size: 10M } 20 - { path: /virtual/vm0 -boot0.qcow2 , size: 512M } 21 - { path: /virtual/vm0 -root0.qcow2 , size: 6G } 22 - { path: /virtual/vm0 -swap0.qcow2 , size: 512M } 23 - { path: /virtual/vm0 -swap1.qcow2 , size: 512M } 24 bootloader: bootloader --location=mbr --driveorder=vda ,vdb ,vdc ,vdd 25 partitions: 26 - part prepboot --ondisk=vda --asprimary --fstype="prepboot" --fsoptions=’ prepboot ’ --size =9 27 - part /boot --ondisk=vdb --asprimary --fstype="xfs" --fsoptions=’defaults , noatime ,discard ’ --grow --size =1 28 - part pv.01 --ondisk=vdc --asprimary --grow --size =1 29 - volgroup VolGroupRoot --pesize =131072 pv.01 30 - logvol / --fstype="xfs" --fsoptions=’defaults ,noatime ,discard ’ --name= LogVolRoot --vgname= VolGroupRoot --grow --size =1 31 - part swap --onpart=vdd --asprimary --fstype="swap" --fsoptions=’defaults , discard ’ --grow --size =1 32 - part swap --onpart=vde --asprimary --fstype="swap" --fsoptions=’defaults , discard ’ --grow --size =1 33 hostname: vm0.vantosh.demo 34 nics: 35 - { type: bridge , name: br0 , model: virtio , bootproto: dhcp , device: eth0 , onboot: on } 36 users: 37 - { name: administrator , id: 1000 , ssh: yes , sshpubkey: /home/toshywoshy /. keys/id_vm0.pub } 38 nrpe: { address: vm0.vantosh.demo , zone: democenter1 , contact: mrnotsonice } ¦ ¥ Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 18 / 37
  • 47. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Inventory - Virtual Machine (2) § ¤ 1 --- 2 hyper: hypervisor0 3 distro: centos7 4 machinearch: x86_64 5 virtualcpus: 32 6 virtualsockets : 2 7 virtualcores : 2 8 virtualthreads : 8 9 ramsize: 2048 10 vmwaittime: 15 11 language: en_US 12 keyboard: us 13 timezone: "Europe/Brussels" 14 rootpwd: $1$f0pPKH0e$0xrX07Ki9DPmpcmJooede7X . 15 sshdrsakeylength : 8192 16 sshdecdsakeylength : 521 17 virtualfilespath : /virtual/ 18 disks: 19 - { path: /virtual/vm0 -boot0.qcow2 , size: 512M } 20 - { path: /virtual/vm0 -root0.qcow2 , size: 6G } 21 - { path: /virtual/vm0 -swap0.qcow2 , size: 512M } 22 - { path: /virtual/vm0 -swap1.qcow2 , size: 512M } 23 bootloader: bootloader --location=mbr --driveorder=vda ,vdb ,vdc ,vdd 24 partitions: 25 - part /boot --ondisk=vda --asprimary --fstype="xfs" --fsoptions=’defaults , noatime ,discard ’ --grow --size =1 26 - part pv.01 --ondisk=vdb --asprimary --grow --size =1 27 - volgroup VolGroupRoot --pesize =131072 pv.01 28 - logvol / --fstype="xfs" --fsoptions=’defaults ,noatime ,discard ’ --name= LogVolRoot --vgname= VolGroupRoot --grow --size =1 29 - part swap --onpart=vdc --asprimary --fstype="swap" --fsoptions=’defaults , discard ’ --grow --size =1 30 - part swap --onpart=vdd --asprimary --fstype="swap" --fsoptions=’defaults , discard ’ --grow --size =1 31 hostname: vm0.vantosh.demo 32 nics: 33 - { type: bridge , name: br0 , model: virtio , bootproto: dhcp , device: eth0 , onboot: on } 34 users: 35 - { name: administrator , id: 1000 , ssh: yes , sshpubkey: /home/toshywoshy /. keys/id_vm0.pub } 36 nrpe: { address: vm0.vantosh.demo , zone: democenter1 , contact: mrnice } ¦ ¥ Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 19 / 37
  • 48. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Playbooks - vminstaller § ¤ 1 - name: set machine arch variables 2 include_vars : "{{ machinearch }}/ console.yml" 3 when: virtconsole is not defined 4 5 - name: set distribution variables 6 include_vars : "{{ distro }}. yml" 7 8 - name: create the qemu disk images 9 action: qemu -img dest ={{ item.path }} size ={{ item.size }} format="qcow2" options=" preallocation =falloc" 10 with_items: "{{ disks }}" 11 delegate_to: "{{ hyper }}" 12 13 ### 14 15 ### PowerEL 7 16 - name: start distribution installation - PEL7 17 include: install -vm -pel7.yml 18 when: templatetype == ’pel7 ’ 19 20 ### EL 7 21 - name: start distribution installation - EL7 22 include: install -vm -el7.yml 23 when: templatetype == ’el7’ 24 25 - name: execute minimum ram hack where required 26 include: minimum -ram -hack.yml 27 when: minram is defined 28 29 30 - name: start the vm 31 action: virt guest ={{ inventory_hostname }} command=start 32 delegate_to: "{{ hyper }}" 33 ignore_errors : yes 34 35 - name: wait for vm to become available 36 local_action : wait_for host ={{ ansible_host }} port ={{ ansible_port }} delay =5 state=started timeout =300 37 become: no 38 39 - name: gather facts 40 action: setup ¦ ¥ Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 20 / 37
  • 49. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Playbooks - pel7 § ¤ 1 - name: create and copy the kickstart file of the machine 2 action: template src="pel7/kickstart.cfg" dest="{{ virtualfilespath }}{{ inventory_hostname }}. cfg" 3 delegate_to: "{{ hyper }}" 4 5 - name: make install script 6 action: template src="common/install -vm.sh" dest="{{ virtualfilespath }}{{ inventory_hostname }}-create -vm.sh" owner=root group=root mode =770 7 delegate_to: "{{ hyper }}" 8 9 - name: execute install script 10 action: raw {{ virtualfilespath }}{{ inventory_hostname }}-create -vm.sh 11 delegate_to: "{{ hyper }}" 12 register: createdvm 13 14 - name: wait for vm to install 15 local_action : pause minutes ={{ vmwaittime }} ¦ ¥ Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 21 / 37
  • 50. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Variables - pel7 § ¤ 1 --- 2 distroname: powerel7 3 distrotype: rhel7 4 templatetype : pel7 5 minram: 2048 6 location: http ://10.59.39.200/ yum/pel /7/{{ machinearch }}/os/ 7 repos: 8 - name: "PowerEL -base" 9 uri: "http ://10.59.39.200/ yum/pel /7/{{ machinearch }}/ base/packages/" 10 cost: 100 11 textrargs: ’text repo ={{ location }} ks=file :/{{ inventory_hostname }}. cfg console=hvc0 ,115200 headless noshell nofirewire rd_NO_PLYMOUTH plymouth.enable =0 biosdevname =0 elevator=noop geoloc =0 nopass kdump_addon =off nopcmia ’ ¦ ¥ Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 22 / 37
  • 51. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End 3 Icinga2 Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 23 / 37
  • 52. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Icinga2 - Main Task § ¤ 1 - name: check whether icinga2 variable are set correctly 2 action: fail msg="Icinga2 variables set incorrectly , please set OR master OR zone , do not set both at the same time." 3 when: icinga2_master is defined and icinga2_zone is defined 4 5 - name: install icinga2 master 6 include: master.yml 7 when: icinga2_master is defined and icinga2_master == true 8 9 - name: install icinga2 zonemaster 10 include: zonemaster.yml 11 when: icinga2_zonemaster is defined and icinga2_zonemaster == true ¦ ¥ Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 24 / 37
  • 53. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Icinga2 - Master§ ¤ 1 - name: install icinga2 packages 2 action: yum name ={{ item }} state=latest 3 with_items: 4 - icinga2 -common 5 - icinga2 -bin 6 - icinga2 -python 7 - icinga2 8 - icinga2 -ido -pgsql 9 - icingaweb2 10 - python -carbon 11 - python -whisper 12 - graphite -web 13 - libXrender 14 - libX11 15 - nrpe 16 - nagios -plugins 17 - nagios -plugins -ping 18 - nagios -plugins -nrpe 19 - nagios -plugins -disk 20 - nagios -plugins -load 21 - nagios -plugins -users 22 - nagios -plugins -procs 23 - nagios -plugins -swap 24 - nagios -plugins -ssh 25 - nagios -plugins -tcp 26 - nagios -plugins -check_rbl 27 - nagios -plugins -by_ssh 28 - nagios -plugins -dig 29 - nagios -plugins -http 30 - nagios -plugins -smtp 31 - nagios -plugins -dns 32 - nagios -plugins -snmp 33 34 - name: copy main icinga2 configuration files 35 action: template src ={{ item }} dest =/ etc/icinga2 /{{ item }} owner=icinga group=icinga mode =550 setype=etc_t 36 with_items: 37 - icinga2.conf 38 - zones.conf 39 - constants.conf 40 41 - name: copy features configuration files into icinga2 feature activation directory 42 action: template src ={{ item }} dest =/ etc/icinga2/features -available /{{ item }} 43 with_items: 44 - api.conf 45 - ido -pgsql.conf 46 - graphite.conf 47 48 - name: activate icinga2 features 49 action: command /usr/sbin/icinga2 feature enable {{ item }} 50 with_items: 51 - ido -pgsql Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 25 / 37
  • 54. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Icinga2 - Zonemaster§ ¤ 1 - name: install icinga2 packages 2 action: yum name ={{ item }} state=latest 3 with_items: 4 - icinga2 -common 5 - icinga2 -bin 6 - icinga2 -python 7 - icinga2 8 - nrpe 9 - nagios -plugins 10 - nagios -plugins -ping 11 - nagios -plugins -nrpe 12 - nagios -plugins -disk 13 - nagios -plugins -load 14 - nagios -plugins -users 15 - nagios -plugins -procs 16 - nagios -plugins -swap 17 - nagios -plugins -ssh 18 - nagios -plugins -tcp 19 - nagios -plugins -check_rbl 20 - nagios -plugins -by_ssh 21 - nagios -plugins -dig 22 - nagios -plugins -http 23 - nagios -plugins -smtp 24 - nagios -plugins -dns 25 - nagios -plugins - check_cups_queue 26 - nagios -plugins -check_sip 27 - nagios -plugins -dhcp 28 - nagios -plugins -snmp 29 30 - name: copy main icinga2 configuration files 31 action: template src ={{ item }} dest =/ etc/icinga2 /{{ item }} owner=icinga group=icinga mode =550 setype=etc_t 32 with_items: 33 - icinga2.conf 34 - zones.conf 35 - constants.conf 36 37 - name: copy features configuration files into icinga2 feature activation directory 38 action: template src ={{ item }} dest =/ etc/icinga2/features -available /{{ item }} 39 with_items: 40 - api.conf 41 42 - name: activate icinga2 features 43 action: command /sbin/icinga2 -enable -feature {{ item }} 44 with_items: 45 - api 46 47 - name: check if a configuration already exists 48 action: stat path =/etc/icinga2/conf.d/templates.conf 49 register: defaultconfig 50 51 - name: remove default configuration Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 26 / 37
  • 55. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Icinga2 - zones.conf § ¤ 1 /* 2 * -------------------------------------------------- 3 * VanTosh Icinga2 Zone Configuration File 4 * (c) copyleft 2014 VanTosh 5 * Author: Toshaan Bharvani <toshaan@vantosh .com > 6 * -------------------------------------------------- 7 * {{ ansible_managed }} 8 */ 9 10 {% for icinga2_zone in icinga2_zones %} 11 object Endpoint "{{ icinga2_zone .nodename }}" { 12 host = "{{ icinga2_zone .hostname }}" 13 port = {{ icinga2_zone .port }} 14 } 15 object Zone "{{ icinga2_zone .zonename }}" { 16 endpoints = [ "{{ icinga2_zone .nodename }}" ] 17 {% if icinga2_zone .parent is defined %} 18 parent = "{{ icinga2_zone .parent }}" 19 {% endif %} 20 } 21 {% endfor %} ¦ ¥ Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 27 / 37
  • 56. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Icinga2 - NRPE (0) § ¤ 1 - name: set variables for nrpe - RedHat 2 include_vars : redhat.yml 3 when: ansible_os_family == ’RedHat ’ 4 5 - name: install nrpe packages and configuration - RedHat 6 include: redhat.yml 7 when: ansible_os_family == ’RedHat ’ 8 9 - name: set variables for nrpe - FreeBSD 10 include_vars : freebsd.yml 11 when: ansible_os_family == ’FreeBSD ’ 12 13 - name: install nrpe packages and configuration - FreeBSD 14 include: freebsd.yml 15 when: ansible_os_family == ’FreeBSD ’ 16 17 - name: add host to monitoring system 18 action: template src=host.conf dest =/ etc/icinga2/zones.d/{{ nrpe.zone }}/{{ inventory_hostname }}.{{ domain }}. conf owner=icinga group=icinga mode =550 setype=etc_t 19 delegate_to: trivikrama 20 notify: reload icinga2 ¦ ¥ Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 28 / 37
  • 57. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Icinga2 - NRPE (1) § ¤ 1 - name: install nrpe packages and dependencies 2 action: yum pkg ={{ item }} state=latest 3 with_items: 4 - nrpe 5 - nagios -plugins -disk 6 - nagios -plugins -load 7 - nagios -plugins -users 8 - nagios -plugins -procs 9 - nagios -plugins -swap 10 - nagios -plugins - check_iostat 11 - bc 12 - sysstat 13 14 - name: base nrpe config 15 action: template src=nrpe.cfg dest =/etc/nagios/nrpe.cfg 16 17 - name: nrpe commands 18 action: template src ={{ item }}. cfg dest =/etc/nrpe.d/ 19 with_items: 20 - users 21 - disk 22 - procs 23 - load 24 - swap 25 - iostat 26 27 - name: restart nrpe daemon 28 action: service name=nrpe state=restarted enabled=yes ¦ ¥ Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 29 / 37
  • 58. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Icinga2 - NRPE - disk.cfg § ¤ 1 {% for location in ansible_mounts %} 2 {% if location.fstype != ’cifs ’ and location.fstype != ’nfs’ and location. fstype != ’fuse ’ and location.fstype != ’linprocfs ’ and location.fstype != ’ fdescfs ’ and location.fstype != ’swap ’ %} 3 command[check_disk_ {{ location.mount }}]={{ nrpe_checkcmddir }} check_disk -w 15% -c 7% -p {{ location.mount }} 4 {% endif %} 5 {% endfor %} ¦ ¥ Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 30 / 37
  • 59. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Icinga2 - NRPE - memory.cfg § ¤ 1 command[ check_memory ]={{ nrpe_checkcmddir }}pmp -check -unix -memory -w 50 -c 75 ¦ ¥ Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 31 / 37
  • 60. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Icinga2 - NRPE - iostat.cfg § ¤ 1 {% for disk in ansible_devices %} 2 {% if disk != ’sr0’ %} 3 command[ check_iostat_ {{ disk }}]={{ nrpe_checkcmddir }} check_iostat -d {{ disk }} -w 750 -c 1250 4 {% endif %} 5 {% endfor %} ¦ ¥ Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 32 / 37
  • 61. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Icinga2 - NRPE - host.conf§ ¤ 1 /* 2 * -------------------------------------------------- 3 * VanTosh Icinga2 Host File 4 * (c) copyleft 2014 VanTosh 5 * Author: Toshaan Bharvani <toshaan@vantosh .com > 6 * -------------------------------------------------- 7 * {{ ansible_managed }} 8 * -------------------------------------------------- 9 {% if ddns is defined %} 10 * {{ ddns.hostname }}.{{ ddns.domain }} 11 {% else %} 12 * {{ ansible_ssh_host }} 13 {% endif %} 14 * fqdn: {{ ansible_fqdn }} 15 * ansible: {{ inventory_hostname }} 16 * -------------------------------------------------- 17 */ 18 19 20 object Host "{{ inventory_hostname }}" { 21 import "generic -host" 22 display_name = "{{ inventory_hostname }}" 23 address = "{{ nrpe.address }}" 24 {% if ansible_virtualization_role is defined %} 25 {% if hyper is not defined and ansible_virtualization_role == ’host ’ %} 26 {% elif hyper is defined and ansible_virtualization_role == ’guest ’ %} 27 // parent_host_name = "{{ hyper }}.{{ domain }}" 28 {% endif %} 29 {% endif %} 30 vars.sla = "24x7" 31 } 32 33 object Service "ssh" { 34 import "generic -service" 35 host_name = "{{ inventory_hostname }}" 36 display_name = "SSH {{ inventory_hostname }}" 37 check_command = "ssh" 38 vars.ssh_port = {{ ansible_ssh_port }} 39 } 40 41 object Service " current_users " { 42 import "generic -service" 43 host_name = "{{ inventory_hostname }}" 44 display_name = "Current Users" 45 check_command = "nrpe" 46 vars. nrpe_command = " check_users " 47 {% if nrpe.port is defined %} 48 vars.nrpe_port = {{ nrpe.port }} 49 {% else %} 50 vars.nrpe_port = 5666 51 {% endif %} 52 {% if nrpe_ssl is defined and nrpe_ssl == false %} 53 vars. nrpe_no_ssl = trueDeploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 33 / 37
  • 62. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End 4 Conclusion Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 34 / 37
  • 63. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End Conclusion Automation MUST [RFC2119] be easy Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 35 / 37
  • 64. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End More information • Icinga : http://www.icinga.org • Ansible : http://www.ansible.com/ • Ansible Roles Install VM : https: //github.com/toshywoshy/ansible-roles-vminstall • Ansible Roles Icinga2 : https://github.com/toshywoshy/ansible-roles-icinga2 • Ansible Roles NRPE : https://github.com/toshywoshy/ansible-roles-nrpe • Ansible Roles NCSA-ng : https://github.com/toshywoshy/ansible-roles-ncsang Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 36 / 37
  • 65. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End More information • Icinga : http://www.icinga.org • Ansible : http://www.ansible.com/ • Ansible Roles Install VM : https: //github.com/toshywoshy/ansible-roles-vminstall • Ansible Roles Icinga2 : https://github.com/toshywoshy/ansible-roles-icinga2 • Ansible Roles NRPE : https://github.com/toshywoshy/ansible-roles-nrpe • Ansible Roles NCSA-ng : https://github.com/toshywoshy/ansible-roles-ncsang Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 36 / 37
  • 66. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End More information • Icinga : http://www.icinga.org • Ansible : http://www.ansible.com/ • Ansible Roles Install VM : https: //github.com/toshywoshy/ansible-roles-vminstall • Ansible Roles Icinga2 : https://github.com/toshywoshy/ansible-roles-icinga2 • Ansible Roles NRPE : https://github.com/toshywoshy/ansible-roles-nrpe • Ansible Roles NCSA-ng : https://github.com/toshywoshy/ansible-roles-ncsang Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 36 / 37
  • 67. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End More information • Icinga : http://www.icinga.org • Ansible : http://www.ansible.com/ • Ansible Roles Install VM : https: //github.com/toshywoshy/ansible-roles-vminstall • Ansible Roles Icinga2 : https://github.com/toshywoshy/ansible-roles-icinga2 • Ansible Roles NRPE : https://github.com/toshywoshy/ansible-roles-nrpe • Ansible Roles NCSA-ng : https://github.com/toshywoshy/ansible-roles-ncsang Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 36 / 37
  • 68. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End More information • Icinga : http://www.icinga.org • Ansible : http://www.ansible.com/ • Ansible Roles Install VM : https: //github.com/toshywoshy/ansible-roles-vminstall • Ansible Roles Icinga2 : https://github.com/toshywoshy/ansible-roles-icinga2 • Ansible Roles NRPE : https://github.com/toshywoshy/ansible-roles-nrpe • Ansible Roles NCSA-ng : https://github.com/toshywoshy/ansible-roles-ncsang Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 36 / 37
  • 69. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End More information • Icinga : http://www.icinga.org • Ansible : http://www.ansible.com/ • Ansible Roles Install VM : https: //github.com/toshywoshy/ansible-roles-vminstall • Ansible Roles Icinga2 : https://github.com/toshywoshy/ansible-roles-icinga2 • Ansible Roles NRPE : https://github.com/toshywoshy/ansible-roles-nrpe • Ansible Roles NCSA-ng : https://github.com/toshywoshy/ansible-roles-ncsang Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 36 / 37
  • 70. Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba Monitoring Automation Inventory Virtual Machines Icinga2 Icinga2 Masters Icinga2 Clients Conclusion The End The End Thank You Toshaan Bharvani - VanTosh bvba <toshaan@vantosh.com> http://www.vantosh.com/ Made with Beamer LATEX a TEXbased Presentation program Deploying Icinga2 through Ansible Toshaan Bharvani - VanTosh bvba () 37 / 37