As an alternative to setting up manually or reusing an existing server for Zabbix, users may download a Zabbix appliance or Zabbix appliance installation CD image. Zabbix appliance installation CD could be used for instant deployment of Zabbix server (MySQL), Zabbix server (PostgreSQL), Zabbix proxy (MySQL) and Zabbix proxy (SQLite 3).
Zabbix Appliance virtual machines have prepared Zabbix server with MySQL support. It is built using Zabbix appliance installation CD.
Zabbix appliance and installation CD versions are based upon the following Ubuntu versions:
Zabbix appliance version | Ubuntu version |
---|---|
3.0.30 | 14.04.3 |
Zabbix appliance is available in the following formats:
To get started, boot the appliance and point your browser at the IP it has received over DHCP: http://<host_ip>/zabbix
It has Zabbix server configured and running on MySQL, as well as frontend available.
The appliance has been built using standard Ubuntu/Debian feature called Preseed files.
There are some changes applied to the base Ubuntu configuration.
Official Zabbix repository has been added to /etc/apt/sources.list:
## Zabbix repository deb https://repo.zabbix.com/zabbix/3.0/ubuntu trusty main deb-src https://repo.zabbix.com/zabbix/3.0/ubuntu trusty main
The appliance uses iptables firewall with predefined rules:
Various basic utilities have been added that could make working with Zabbix and monitoring in general easier:
Some of these packages are used by Zabbix, some of them are installed to help users to configure/manage appliance settings.
By default the appliance uses DHCP to obtain the IP address. To specify a static IP address:
To configure DNS, add nameserver entries in /etc/resolv.conf, specifying each nameserver on its own line: nameserver 192.168.1.2.
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
The appliance contains a few locale changes:
These changes are required to support a multilingual Zabbix web-interface.
Appliance Zabbix setup has the following passwords and other configuration changes:
System:
Database:
Zabbix frontend:
To change the database user password it has to be changed in the following locations:
If you are running a Live CD/DVD version of the appliance or for some other reason cannot have persistent storage, you can create a backup of the whole database, including all configuration and gathered data.
To create the backup, run:
sudo mysqldump zabbix | bzip2 -9 > dbdump.bz2
Now you can transfer the dbdump.bz2 file to another machine.
To restore from the backup, transfer it to the appliance and execute:
bzcat dbdump.bz2 | sudo mysql zabbix
Access to frontend by default is allowed from everywhere.
The frontend can be accessed http://<host>/zabbix.
This can be customised in /etc/apache2/conf-available/zabbix.conf. You have to restart the webserver after modifying this file. To do so, log in using SSH as root user and execute:
service apache2 restart
By default, only the ports listed in changes are open. To open additional ports just modify “/etc/iptables/rules.v4” or “/etc/iptables/rules.v6” files and reload firewall rules:
service iptables-persistent reload
Zabbix installation is provided with the support for the following:
Zabbix appliance uses snmptrapfmt to handle SNMP traps. It is configured to receive all traps from everywhere.
Authentication is not required. If you would like to enable authentication, you need to change the /etc/snmp/snmptrapd.conf file and specify required auth settings.
All traps are stored in the /var/log/zabbix/snmptrapfmt.log file. It is rotated by logrotate before reaching 2GB file size.
The appliance Zabbix packages may be upgraded. To do so, run:
sudo apt install --only-upgrade 'zabbix.*'
Appropriate init scripts are provided. To control Zabbix server, use any of these:
service zabbix-server status
Replace server with agent for Zabbix agent daemon or with proxy for Zabbix proxy daemon.
Available diskspace on the appliance might not be sufficient. In that case it is possible to expand the disk. To do so, first expand the block device in your virtualization environment, then follow these steps.
Start fdisk to change the partition size. As root, execute:
fdisk /dev/sda
This will start fdisk on disk sda. Next, switch to sectors by issuing:
u
Then delete the existing partition and create a new one with the desired size. In the majority of cases you will accept the available maximum, which will expand the filesystem to whatever size you made available for the virtual disk. To do so, enter the following sequence in fdisk prompt:
d n p 1 (accept default 63) (accept default max)
If you wish to leave some space for additional partitions (swap etc), you can enter another value for last sector. When done, save the changes by issuing:
w
After partition creation (new disk or extended existing) create physical volume:
pvcreate /dev/sdb1
Check newly created physical volume:
pvdisplay /dev/sdb1
Check available physical volumes. There must be 2 volumes zabbix-vg and newly created:
pvs
Extend your existing volume group with the newly created physical volume:
vgextend zabbix-vg /dev/sdb1
Check “zabbix-vg” volume group:
vgdisplay
Now extend your logical volume with the free PE space:
lvextend -l +100%FREE /dev/mapper/zabbix--vg-root
Resize your root volume (can be done on a live sysyem):
resize2fs /dev/mapper/zabbix--vg-root
Reboot the virtual machine (as the partition we modified is in use currently). That's it, filesystem should be grown to the partition size now. Check “/dev/mapper/zabbix–vg-root” volume:
df -h
Converting image for XenServer
To use Xen images with Citrix Xenserver you have to convert the disk image. To do so:
xe vdi-list params=all
xe vdi-import filename="image.raw" uuid="<UUID>"
Instructions from Brian Radford blog.
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.
dd if=./zabbix_appliance_3.0.0_x86_64.raw of=/dev/sdc bs=4k conv=fdatasync
Replace /dev/sdc with your Flash/HDD disk device.