6. Zabbix appliance

Overview

As an alternative to setting up manually or reusing an existing server for Zabbix, users may download a Zabbix appliance or a Zabbix appliance installation CD image.

Zabbix appliance and installation CD versions are based on CentOS 8 (x86_64).

Zabbix appliance installation CD can be used for instant deployment of Zabbix server (MySQL).

You can use this Appliance to evaluate Zabbix. The Appliance is not intended for serious production use.

System requirements:
  • RAM: 1.5 GB
  • Disk space: at least 8 GB should be allocated for the virtual machine.

Zabbix installation CD/DVD boot menu:

Zabbix appliance contains a Zabbix server (configured and running on MySQL) and a frontend.

Zabbix virtual appliance is available in the following formats:

  • VMWare (.vmx)
  • Open virtualization format (.ovf)
  • Microsoft Hyper-V 2012 (.vhdx)
  • Microsoft Hyper-V 2008 (.vhd)
  • KVM, Parallels, QEMU, USB stick, VirtualBox, Xen (.raw)
  • KVM, QEMU (.qcow2)

To get started, boot the appliance and point a browser at the IP the appliance has received over DHCP.

DHCP must be enabled on the host.

To get the IP address from inside the virtual machine run:

ip addr show

To access Zabbix frontend, go to http://<host_ip> (for access from the host's browser bridged mode should be enabled in the VM network settings).

If the appliance fails to start up in Hyper-V, you may want to press Ctrl+Alt+F2 to switch tty sessions.

1 Changes to CentOS 8 configuration

The appliance is based on CentOS 8. There are some changes applied to the base CentOS configuration.

1.1 Repositories

Official Zabbix repository has been added to /etc/yum.repos.d:

[zabbix]
       name=Zabbix Official Repository - $basearch
       baseurl=http://repo.zabbix.com/zabbix/5.2/rhel/8/$basearch/
       enabled=1
       gpgcheck=1
       gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
1.2 Firewall configuration

The appliance uses iptables firewall with predefined rules:

  • Opened SSH port (22 TCP);
  • Opened Zabbix agent (10050 TCP) and Zabbix trapper (10051 TCP) ports;
  • Opened HTTP (80 TCP) and HTTPS (443 TCP) ports;
  • Opened SNMP trap port (162 UDP);
  • Opened outgoing connections to NTP port (53 UDP);
  • ICMP packets limited to 5 packets per second;
  • All other incoming connections are dropped.
1.3 Using a static IP address

By default the appliance uses DHCP to obtain the IP address. To specify a static IP address:

  • Log in as root user;
  • Open /etc/sysconfig/network-scripts/ifcfg-eth0 file;
  • Replace BOOTPROTO=dhcp with BOOTPROTO=none
  • Add the following lines:
    • IPADDR=<IP address of the appliance>
    • PREFIX=<CIDR prefix>
    • GATEWAY=<gateway IP address>
    • DNS1=<DNS server IP address>
  • Run systemctl restart network command.

Consult the official Red Hat documentation if needed.

1.4 Changing time zone

By default the appliance uses UTC for the system clock. To change the time zone, copy the appropriate file from /usr/share/zoneinfo to /etc/localtime, for example:

cp /usr/share/zoneinfo/Europe/Riga /etc/localtime

2 Zabbix configuration

Zabbix appliance setup has the following passwords and configuration changes:

2.1 Credentials (login:password)

System:

  • root:zabbix

Zabbix frontend:

  • Admin:zabbix

Database:

  • root:<random>
  • zabbix:<random>

Database passwords are randomly generated during the installation process.
Root password is stored inside the /root/.my.cnf file. It is not required to input a password under the "root" account.

To change the database user password, changes have to be made in the following locations:

  • MySQL;
  • /etc/zabbix/zabbix_server.conf;
  • /etc/zabbix/web/zabbix.conf.php.

Separate users zabbix_srv and zabbix_web are defined for the server and the frontend respectively.

2.2 File locations
  • Configuration files are located in /etc/zabbix.
  • Zabbix server, proxy and agent logfiles are located in /var/log/zabbix.
  • Zabbix frontend is located in /usr/share/zabbix.
  • Home directory for the user zabbix is /var/lib/zabbix.
2.3 Changes to Zabbix configuration
  • Frontend timezone is set to Europe/Riga (this can be modified in /etc/php-fpm.d/zabbix.conf);

3 Frontend access

By default, access to the frontend is allowed from anywhere.

The frontend can be accessed at http://<host>.

This can be customized in /etc/nginx/conf.d/zabbix.conf. Nginx has to be restarted after modifying this file. To do so, log in using SSH as root user and execute:

systemctl restart nginx

4 Firewall

By default, only the ports listed in the configuration changes above are open. To open additional ports, modify "/etc/sysconfig/iptables" file and reload firewall rules:

systemctl reload iptables

5 Upgrading

The Zabbix appliance packages may be upgraded. To do so, run:

dnf update zabbix*

6 System Services

Systemd services are available:

systemctl list-units zabbix*

7 Format-specific notes

7.1 VMware

The images in vmdk format are usable directly in VMware Player, Server and Workstation products. For use in ESX, ESXi and vSphere they must be converted using VMware converter.

7.2 HDD/flash image (raw)
dd if=./zabbix_appliance_5.2.0.raw of=/dev/sdc bs=4k conv=fdatasync

Replace /dev/sdc with your Flash/HDD disk device.