Zabbix Documentation 2.2

2.23.03.23.4In development:4.0Unsupported versions:1.82.02.4

User Tools

Site Tools


Sidebar

manual:appliance

5. Zabbix appliance

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

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

Booting Zabbix appliance

Zabbix appliance versions are based upon the following OpenSUSE versions:

Zabbix appliance versionOpenSUSE version
2.2.012.3

It is available in the following formats:

  • vmdk (VMware/Virtualbox)
  • OVF (Open Virtualisation Format)
  • KVM
  • CD ISO
  • HDD/flash image
  • Xen guest
  • Microsoft VHD
  • Preload USB

It has Zabbix server configured and running on MySQL, as well as frontend available.

The appliance has been built using SUSE Studio.

2.1 Changes to SUSE configuration

There are some changed applied to the base OpenSUSE configuration.

2.1.1 MySQL configuration changes
  • Binary log is disabled;
  • InnoDB is configured to store data for each table in a separate file.
2.1.2 Using a static IP address

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

  • Log in as root user;
  • Open file /etc/sysconfig/network/ifcfg-eth0 in your favourite editor;
  • Set BOOTPROTO variable to static;
  • Set IPADDR, NETMASK and any other parameters as required for your network;
  • Create file /etc/sysconfig/network/routes. For the default route, use default 192.168.1.1 - - (replacing with your gateway address).
  • Run the command rcnetwork restart.

To configure DNS, add nameserver entries in /etc/resolv.conf, specifying each nameserver on its own line: nameserver 192.168.1.2.

Alternatively, just use yast configuration utility to update network settings.

2.1.3 Changing time zone

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

cp /usr/share/zoneinfo/Europe/Riga /etc/localtime
2.1.4 Other changes
  • Network is configured to use DHCP to obtain IP address;
  • Utility fping is set to have permissions 4710 and is owned by group zabbix - suid and only alowed to be used by zabbix group;
  • ntpd configured to synchronise to the public pool servers;
  • Various basic utilities have been added that could make working with Zabbix and monitoring in general easier.

2.2 Zabbix configuration

Appliance Zabbix setup has the following passwords and other configuration changes:

2.2.1 Passwords

System:

  • root:zabbix
  • zabbix:zabbix

Database:

  • root:zabbix
  • zabbix:zabbix

Zabbix frontend:

  • Admin:zabbix

If you change frontend password, do not forget to update password setting web monitoring (Configuration → Hosts, Web for host “Zabbix server”).

To change the database user password it has to be changed in the following locations:

  • MySQL;
  • zabbix_server.conf;
  • zabbix.conf.php.
2.2.2 File locations
  • Configuration files are placed in /etc.
  • Zabbix logfiles are placed in /var/log/zabbix.
  • Zabbix frontend is placed in /usr/share/zabbix.
  • Home directory for user zabbix is /var/lib/zabbix.
2.2.3 Changes to Zabbix configuration
  • Server name for Zabbix frontend set to “Zabbix 2.2 Appliance”;
  • Frontend timezone is set to Europe/Riga, Zabbix home (this can be modified in /etc/php5/apache2/php.ini);
  • Disabled triggers and web scenarios are shown by default to reduce confusion.
2.2.4 Preserving configuration

If you are running live CD version of the appliance or for some other reason can't have persistent storage, you can create a backup of whole database, including all configuration and gathered data.

To create the backup, run:

mysqldump zabbix | bzip2 -9 > dbdump.bz2

Now you can transfer file dbdump.bz2 to another machine.

To restore from the backup, transfer it to the appliance and execute:

bzcat dbdump.bz2 | mysql zabbix

Make sure that Zabbix server is stopped while performing the restore.

2.3 Frontend access

Access to frontend by default is allowed from:

  • 127.0.0.1
  • 192.168.0.0/16
  • 10.0.0.0/8
  • ::1

Root (/) is redirected to /zabbix on the webserver, thus frontend can be accessed both as http://<host> and http://<host>/zabbix.

This can be customised in /etc/apache2/conf.d/zabbix.conf. You have to restart webserver after modifying this file. To do so, log in using SSH as root user and execute:

service apache2 restart

2.4 Firewall

By default, only two ports are open - 22 (SSH) and 80 (HTTP). To open additional ports - for example, Zabbix server and agent ports - modify iptables rules with SuSEfirewall2 utility:

SuSEfirewall2 open EXT TCP zabbix-trapper zabbix-agent

Then reload the firewall rules:

SuSEfirewall2 start

2.5 Monitoring capabilities

Zabbix server is compiled with support for the following:

  • SNMP;
  • IPMI;
  • Web monitoring;
  • SSH2;
  • IPv6.

In the provided configuration Zabbix server itself is monitored with the help of locally installed agent for some base parameters, additionally Zabbix frontend is monitored as well using web monitoring.

Zabbix appliance monitoring own web frontend

Note that web frontend monitoring logs in - this can add lots of entries to the audit log.

2.6 Naming, init and other scripts

Appropriate init scripts are provided. To control Zabbix server, use any of these:

service zabbix_server status
rczabbix_server status
/etc/init.d/zabbix_server status

Replace server with agentd for Zabbix agent daemon.

2.6.1 Scheduled scripts

There is a scheduled script, run from the crontab every 10 minutes that restarts Zabbix server if it is not running, /var/lib/zabbix/bin. It logs timestamped problems and starting attempts at /var/log/zabbix/server_problems.log.

Make sure to disable this crontab entry if stopping of Zabbix server is desired.

2.6.2 Increasing available diskspace

Create a backup of all data before attempting any of the steps.

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 virtualisation 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

Don't disable DOS compatibility mode by entering c. Proceeding with it disabled will damage the partition.

Then delete the existing partition and create new one with desired size. In 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

Reboot the virtual machine (as the partition we modified is in use currently). After reboot, filesystem resizing can take place.

resize2fs /dev/sda1

That's it, filesystem should be grown to the partition size now.

2.7 Format-specific notes

2.7.1 Xen

To use images in Xen server, run:

xm create -c file-with-suffix.xenconfig

See the following pages for more information on using Xen images:

Converting image for XenServer

To use Xen images with Citrix Xenserver you have to convert the disk image. To do so:

  • Create a virtual disk which is at least as large as the image
  • Find out the UUID for this disk
xe vdi-list params=all
  • If there are lots of disks, they can be filtered by name parameter name-label, as assigned when creating the virtual disk
  • Import the image
xe vdi-import filename="image.raw" uuid="<UUID>"

Instructions from Brian Radford blog.

2.7.2 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.

2.7.3 HDD/flash image (raw)

See http://en.opensuse.org/openSUSE:SUSE_Studio_Disc_Image_Howtos for more information on disk images.

2.8 Known issues

2.8.1 Extracting on Windows

Windows archive management software is known to mishandle the appliance archives. If extraction fails, try different software. Open source tool 7-zip might work.

2.8.2 Connectivity problems with IPv6

In some environments, the appliance might obtain IPv6 addresses (for example, for operating system updates), but be unable to use IPv6. To disable IPv6, add net.ipv6.conf.all.disable_ipv6 = 1 in /etc/sysctl.conf and restart the appliance.