mender is a tool suite to automate synchronization and mapping of IT asset information in sources (such as CMDBs and Network management systems) to hosts, services, hostgroups, servicegroups, contactgroups, etc in Nagios-based monitoring systems.
mender can manage the full life cycle of the hosts, services, etc from creation, updating and deletion depending on the state of the asset in the source system.
mender is used in production with a number of source systems or combination of source systems like:
- Cisco ACI
- Infoblox NetMRI
- Prometheus (alert configuration)
- Cisco Prime Infrastructure
- Quest KACE
- Aruba Airwave Network Management
The source systems are accessed by a provider that is often customized due to different access protocols, formats, rules and naming conventions, but the underlying logic to manage the life cycle and operations that is needed against the monitor system is the same for all systems.
One important design goal was to minimize the number of interactions with monitoring system executing the bare minimum required operations to get the monitoring into a correct state. In many ways, mender can be seen as a discovery system for the monitoring system. Some customers run it on a minute basis, while others may run it just once per day. The optimal frequency depends on the complexity of the source system and how ephemeral the assets are in the source system.
To support different cmdb systems, the tool is built on cmdb-specific plugins, providers, that are configured in the main configuration file or by injection.
The core package of mender is the python package cmdb2monitor. The package can be installed with python package installer, pip, and used embedded in a custom solution. Some customers run it as a command line tool using cron and others use it as an integrated part of a web/rest service.
Currently, the following monitoring systems are supported:
- ITRS Monitor – using the Monitor API