In my test lab, I have a few physical servers, virtual machines and a pfSense router with a couple of VLANs configured. I require something which can monitor my network. I do not need something which shows me whether my devices are online or not, but something which actually shows my network performance, configuration and more in depth historical data.
Well! Zabbix is a perfect fit for this.
Table of Contents
What is Zabbix?
Zabbix is an open-source monitoring tool. It was first released in 2001 and developed by Zabbix LLC. Zabbix LLC is based in the US, Europe, and Japan.
Cost
Zabbix is free. You can download and run it on your hardware or configure it in the cloud.
Zabbix Monitoring
Zabbix just doesn’t monitor the network. It goes way beyond that. Let’s have a look at the list of items Zabbix can monitor:
- Networks: Monitor and keep historical data of network performance metrics and incidents. Find more information here.
- Servers: Zabbix monitors server performance metrics and incidents. Find more information here.
- Clouds: This includes Microsoft Azure, AWS, Google Apps, Google Cloud, and more.
- Applications: WordPress, ActiveMQ, Microsoft IIS, SharePoint, and more. Check the full list here.
- Services: HTTP, HTTPS, DNS, and more.
- Web monitoring: Microsoft IIS, Apache, and more.
- Storage devices: Synology, QSAN, Hitachi, and more.
- Virtual machines: Hyper-V, Microsoft Azure, VMware Oracle VM, and more.
- Java applications: ActiveMQ, Glassfish, Java Monitoring, and more.
- Databases: Zabbix monitors all popular databases. This includes Microsoft SQL, Oracle, MySQL, SQLite, MariaDB, DB2, Ingress, and more.
- KLA/SLA monitoring: Out-of-box SLA solution is available for NGINX. Check this document for more information.
- Telephony: This includes Asterisk, Avaya, and more.
- Security: This includes Active Directory, LDAP, OpenVPN, and more. Check out the full list here.
Zabbix Installation OS, DB and web server support
Currently, the Zabbix Server and agent installation is supported on the following Platforms:
Platform | Server | Agent | Agent2 |
Linux | x | x | x |
IBM AIX | x | x | – |
FreeBSD | x | x | – |
NetBSD | x | x | – |
OpenBSD | x | x | – |
HP-UX | x | x | – |
macOS X | x | x | – |
Solaris | x | x | – |
Windows | – | x | x |
Zabbix Supports the following database types:
- MySQL
- PostgreSQL
- Oracle
- SQLite
Zabbix Supports the following web server types:
- Apache
- NGINX
Learn more about the OS, DB and web server support here.
How does Zabbix monitor?
Zabbix utilizes the following to receive the information from the endpoints:
Zabbix Agent: It is deployed on the endpoint to monitor the local resources and applications. Information gathered by the agent forwarded to the Zabbix server for further processing. Learn more about this here.
SNMP Agent: Any device which supports SNMP can be configured to report back to Zabbix on the basis of configured templates. Learn more about the SNMP agent here.
JMX Monitoring: This is used to monitor JMS counters of a Java application. Learn more about this here.
IPMI Checks: This allows Zabbix to monitor the health and availability of the Intelligent Platform Management Interface (IPMI) devices. Learn more about this here.
What data to retrieve through monitoring?
Now we know that Zabbix will use Zabbix Agent, SNMP, JMS, and IPMI checks. However, how will these monitoring techniques know what data to retrieve?
This will be dictated by templates. When you add a host in Zabbix to monitor, then you assign a templated to that host. Template dictates what type of data it would like Zabbix agent, SNMP, JMS, or IPMI checks have to send back to Zabbix.
There are out-of-box templates available ready to be used. You can check the full list of available templates here.
Prabhas
January 2, 2021 @ 10:41 pm
Excellent bro your documents are very helpful and tqful to come across such a useful blog. Bro I want to configure log server using zabbix, I have installed and Zabbix-agent also deployed on all other servers with basic ICMP and application triggers , now I want manage the logs and generate report can you please share any document