How to Get ZABBIX
Check the ZABBIX Home Page at http://www.zabbix.com for information about the
current version and for downloading instructions.
Hardware requirements
- Memory requirements
ZABBIX requires both physical and disk memory. 32 Mb of physical memory and 20 Mb of free disk
memory could be a good starting point. However, the amount of required disk memory obviously
depends on the number of hosts and parameters that are being monitored. If you're planning to
keep a long history of monitored parameters, you should be thinking of at least a couple of
gigabytes to have enough space to store the history in the database.
Each ZABBIX daemon process requires several connections to a database server. Amount of memory allocated for the connection depends on configuration of the database engine.
Note: zabbix_trapperd can be configured so that connections to the database will only be made during process of new value. See description of parameter DBConnectOnEach.
Remember, the more physical memory you have, the faster the database (and therefore ZABBIX) works!
Supported Platforms
Due to security requirements and mission-critical nature of monitoring server, UNIX is the
only operating system that can consistently deliver the necessary performance, fault tolerance
and resilience. ZABBIX operates on market leading versions.
ZABBIX is tested on the following platforms:
- Linux 2.xx
- Solaris 2.xx
- HP-UX 11.xx
- AIX 4.3
- Free BSD 4.3
- SCO Open Server 5.0.5
- Mac OS/X
Note: ZABBIX may work on other Unix-like operating systems as well.
Software Requirements
ZABBIX is built around modern Apache WEB server, MySQL or PostgreSQL database engine, and the PHP scripting language.
The following software is required to run ZABBIX:
- Apache
Version 1.3.12 or later required. Apache can be found at http://www.apache.org
- MySQL (or PostgreSQL)
Version 3.22 or later required. MySQL can be found at http://www.mysql.com
- PostgreSQL (or MySQL)
Version 7.0.2 or later required. PostgreSQL can be found at http://www.postgresql.org
ZABBIX may work on previous versions of Apache, MySQL, PostgreSQL as well.
If using PostgreSQL, version 7.0.2 or later is strongly recommended.
- MySQL or PostgreSQL development files (headers and libraries).
Note: Usually provided as part of mysql-dev or postgresql-dev packages.
- PHP
Version 4.0 or later required. PHP and its modules can be found at http://www.php.net. PHP
must be compiled as Apache module.
- PHP GD module
The module is required for displaying graphs and maps. The module must support images in PNG format.
- PHP 4.0 MySQL or PostgreSQL module
- GNU Make
Required for building ZABBIX or its agents from sources. In case if pre-built binaries are used, GNU
make is not necessary.
- WEB browser on client side
Support for HTML and PNG images required. MS Explorer (5.xx and 6.xx) and Mozilla 1.x work perfectly. Cookies
and JavaScript must be enabled. Other browsers may work with ZABBIX as well.
- NET-SNMP (or UCD-SNMP) library and header files
Required for support of SNMP agents. Optional.
- Open SSL library and header files. Required for SNMP support.
Optional.
Required software considerations
PostgreSQL vs MySQL
Regarding the choice between PostgreSQL and MySQL, MySQL is recommended for several reasons:
- MySQL is faster
recent benchmarks using ZABBIX clearly show that PostgreSQL (7.1.x) is at least 10 times slower than MySQL (3.23.29)
Note: These results are predictable. ZABBIX server processes use simple SQL statements like single row INSERT, UPDATE
and simple SELECT operators. In such environment, use of advanced SQL engine (like PostgreSQL) is overkill.
- no need to constantly run resource-hungry command “vacuum” for MySQL
- MySQL is used as a primary development platform.
If you do use PostgreSQL, zabbix_suckerd will periodically (defined in HousekeepingFrequency) execute
command vacuum analyze.
For more information about PostgreSQL see http://www.postgresql.org.
Time synchronisation
It is very important to have precise system date on server with ZABBIX running. timed is one of
most popular daemons that synchronises the host’s time with the time of other machines.
Structure of ZABBIX distribution
- doc
The directory contains this Manual in different formats
- src
The directory contains sources for all ZABBIX processes except frontends.
- src/zabbix_sucker
The directory contains Makefile and sources for zabbix_suckerd.
- src/zabbix_agent
The directory contains Makefile and sources for zabbix_agent and zabbix_agentd.
- src/zabbix_trapper
The directory contains Makefile and sources for zabbix_trapperd.
- src/zabbix_sender
The directory contains Makefile and sources for zabbix_sender.
- include
The directory contains include ZABBIX files.
- misc
- misc/init.d
The directory contains start-up scripts for different platforms.
- misc/pinger
The directory contains scripts for ICMP pinging, pinger.pl.
- frontends
- frontends/php
The directory contains sources for PHP frontend.
- create
The directory contains SQL script for initial database creation.
- create/mysql
MySQL database schema.
- create/postgresql
PostgreSQL database schema.
- create/data
Data for initial database creation.
- upgrades
The directory contains upgrade procedures for different versions of ZABBIX.
|