HAPI - project-hatohol/hatohol GitHub Wiki
Abstract
HAPI (Hatohol Arm Plugin Interface) is a next generation framework for 'Arm', which is a part of Hatohol server to gather monitoring information from monitoring servers such as Zabbix and Nagios.
Requirements
- Can be created w/o modification of Hatohol itself.
- Support both pull and push ways.
- Can be placed both at a local computer (on which Hatohol server is running) and remote one.
- When it's in a local computer, an efficient data transfer way such as SHM should be used.
- Authentication mechanism.
- Can be written by not only C/C++ but also Lightweight Languages (such Python and Ruby).
Design
- A plugin works as a different process from a Hatohol server like the following picture.
- Use AMQP to realize messaging and authentification/encryption.
- Hatohol uses one of the implementation: Apache QPid.
- Queue in an AMQP broker is prepared per instance (monitoring server) per one direction.
- Both ends (Arm Plugin and HatoholArmPluginGate) can issue a command (a sequence of communication).
Status (14.06)
- An experimental plugin for ZABBIX is included.