1. Introduction
1 Manual structure
Structure
The content of this Zabbix 2.2 manual is divided into sections and subsections to provide easy access to particular subjects of interest.
When you navigate to respective sections, make sure that you expand section folders to reveal full content of what is included in subsections and individual pages.
Cross-linking between pages of related content is provided as much as possible to make sure that relevant information is not missed by the users.
Sections
Introduction provides general information about current Zabbix software. Reading this section should equip you with some good reasons to choose Zabbix.
Zabbix concepts explain the terminology used in Zabbix and provides details on Zabbix components.
Installation and Quickstart sections should help you to get started with Zabbix. Zabbix appliance is an alternative for getting a quick taster of what it is like to use Zabbix.
Configuration is one of the largest and more important sections in this manual. It contains loads of essential advice about how to set up Zabbix to monitor your environment, from setting up hosts to getting essential data to viewing data to configuring notifications and remote commands to be executed in case of problems.
IT services section details how to use Zabbix for a high-level overview of your monitoring environment.
Web monitoring should help you learn how to monitor the availability of web sites.
Maintenance, Regular expressions, Event acknowledgment and XML export/import are further sections that reveal how to use these various aspects of Zabbix software.
Discovery contains instructions for setting up automatic discovery of network devices, active agents, file systems, network interfaces, etc.
Distributed monitoring deals with the possibilities of using Zabbix in larger and more complex environments.
Web interface contains information specific for using the web interface of Zabbix.
Detailed lists of technical information are included in Appendixes. This is where you will also find FAQ and Zabbix API sections.
2 What is Zabbix
Overview
Zabbix was created by Alexei Vladishev, and currently is actively developed and supported by Zabbix SIA.
Zabbix is an enterprise-class open source distributed monitoring solution.
Zabbix is software that monitors numerous parameters of a network and the health and integrity of servers. Zabbix uses a flexible notification mechanism that allows users to configure e-mail based alerts for virtually any event. This allows a fast reaction to server problems. Zabbix offers excellent reporting and data visualisation features based on the stored data. This makes Zabbix ideal for capacity planning.
Zabbix supports both polling and trapping. All Zabbix reports and statistics, as well as configuration parameters, are accessed through a web-based front end. A web-based front end ensures that the status of your network and the health of your servers can be assessed from any location. Properly configured, Zabbix can play an important role in monitoring IT infrastructure. This is equally true for small organisations with a few servers and for large companies with a multitude of servers.
Zabbix is free of cost. Zabbix is written and distributed under the GPL General Public License version 2. It means that its source code is freely distributed and available for the general public.
Commercial support is available and provided by Zabbix Company.
Learn more about Zabbix features.
Users of Zabbix
Many organisations of different size around the world rely on Zabbix as a primary monitoring platform.
3 Zabbix features
Overview
Zabbix is a highly integrated network monitoring solution, offering a multiplicity of features in a single package.
-
availability and performance checks
-
support for SNMP (both trapping and polling), IPMI, JMX monitoring
-
custom checks
-
gathering desired data at custom intervals
-
performed by server/proxy and by agents
Flexible threshold definitions
-
you can define very flexible problem thresholds, called triggers, referencing values from the back-end database
-
sending notifications can be customized for the escalation schedule, recipient, media type
-
notifications can be made meaningful and helpful using macro variables
-
automatic actions include remote commands
-
monitored items are immediately graphed using the built-in graphing functionality
-
Zabbix can follow a path of simulated mouse clicks on a web site and check for functionality and response time
Extensive visualisation options
-
ability to create custom graphs that can combine multiple items into a single view
-
network maps
-
custom screens and slide shows for a dashboard-style overview
-
reports
-
high-level (business) view of monitored resources
-
data stored in a database
-
configurable history
-
built-in housekeeping procedure
-
add monitored devices as hosts
-
hosts are picked up for monitoring, once in the database
-
apply templates to monitored devices
-
grouping checks in templates
-
templates can inherit other templates
-
automatic discovery of network devices
-
agent auto registration
-
discovery of file systems, network interfaces and SNMP OIDs
-
a web-based front-end in PHP
-
accessible from anywhere
-
you can click your way through
-
audit log
-
Zabbix API provides programmable interface to Zabbix for mass manipulations, 3rd party software integration and other purposes.
-
secure user authentication
-
certain users can be limited to certain views
Full featured and easily extensible agent
-
deployed on monitoring targets
-
can be deployed on both Linux and Windows
-
written in C, for performance and small memory footprint
-
easily portable
Ready for complex environments
-
remote monitoring made easy by using a Zabbix proxy
4 Zabbix overview
Architecture
Zabbix consists of several major software components, the responsibilities of which are outlined below.
Server
Zabbix server is the central component to which agents report availability and integrity information and statistics. The server is the central repository in which all configuration, statistical and operational data are stored.
Database storage
All configuration information as well as the data gathered by Zabbix is stored in a database.
Web interface
For an easy access to Zabbix from anywhere and from any platform, the web-based interface is provided. The interface is part of Zabbix server, and usually (but not necessarily) runs on the same physical machine as the one running the server.
Proxy
Zabbix proxy can collect performance and availability data on behalf of Zabbix server. A proxy is an optional part of Zabbix deployment; however, it may be very beneficial to distribute the load of a single Zabbix server.
Agent
Zabbix agents are deployed on monitoring targets to actively monitor local resources and applications and report the gathered data to Zabbix server.
Data flow
In addition it is important to take a step back and have a look at the overall data flow within Zabbix. In order to create an item that gathers data you must first create a host. Moving to the other end of the Zabbix spectrum you must first have an item to create a trigger. You must have a trigger to create an action. Thus if you want to receive an alert that your CPU load it too high on Server X you must first create a host entry for Server X followed by an item for monitoring its CPU, then a trigger which activates if the CPU is too high, followed by an action which sends you an email. While that may seem like a lot of steps, with the use of templating it really isn't. However, due to this design it is possible to create a very flexible setup.
Data source: Zabbix