Zabbix 2.2 features, part 10 – Support of loadable modules

Zabbix comes with an impressive list of supported metrics for virtually all platforms. It covers the monitoring of performance and availability of OS including CPU, memory, network, processes, files, kernel parameters and more. Zabbix also performs agent-less checks for well-known services such as FTP, SSH, IMAP, POP3, HTTP, TCP, etc.

Extending Zabbix functionality is a trivial task thanks to user parameters (agent metrics) and external checks (agent-less monitoring). It is just a matter of adding a new line into the configuration file of the agent and you have a dozen of new metrics supported. Depending on security settings you may also use system.run[], which does not require any changes on the agent side.

It works very well, but it has one major drawback, namely fork(). Zabbix has to fork a new process every time it handles a user metric, which is obviously not good for performance. It is not a big deal normally, however it could be a serious issue in case of monitoring of embedded systems, a large number of monitored parameters or heavy scripts with complex logic or long startup time.

Zabbix 2.2 comes with support of loadable modules for extending Zabbix agent and server without sacrificing performance.

Loadable modules

 

Continue reading “Zabbix 2.2 features, part 10 – Support of loadable modules”

Multiple servers for active agent? Sure!

Zabbix agent currently supports only one server in active mode – the first host from the Server configuration parameter is used. While for most users that is enough, some installations require a more advanced approach with the agent being able to report to multiple servers in the active mode. Continue reading “Multiple servers for active agent? Sure!”