5. Готовое решение Zabbix

В качестве альтернативы ручной настройке или повторному использованию существующего сервера для Zabbix, пользователи могут загрузить готовое решение Zabbix или установочный образ CD готового решения Zabbix. Установочный образ CD готового решения Zabbix можно использовать для быстрого развертывания Zabbix сервера (MySQL), Zabbix сервера (PostgreSQL), Zabbix прокси (MySQL) и Zabbix прокси (SQLite 3).

Виртуальные машины готового решения Zabbix собраны с Zabbix сервером с поддержкой MySQL. Они собраны при помощи установочного образа CD готового решения Zabbix.

|<| |<| |-|

|<| |<| |-|

Готовое решение Zabbix и установочный CD основаны на следующих версиях Ubuntu:

Версия готового решения Zabbix Версия Ubuntu
3.0.0 14.04.3

Готовое решение Zabbix доступно в следующих форматах:

  • vmdk (VMware/Virtualbox)
  • OVF (Open Virtualisation Format)
  • KVM
  • HDD/flash image, USB stick
  • Live CD/DVD
  • Xen guest
  • Microsoft VHD (Azure)
  • Microsoft VHD (Hyper-V)

Для запуска, загрузите готовое решение и перейдите в вашем браузере по IP, который получен по DHCP: http://<ip_хоста>/zabbix

Готовое решение имеет настроенный Zabbix сервер, работающий с базой данных MySQL, также доступен и веб-интерфейс.

Готовое решение создано при помощи стандартной возможности Ubuntu/Debian, называемой Preseed файлами.

1 Изменения в настройках Ubuntu

Имеется несколько изменения, которые применены к базовой конфигурации Ubuntu.

1.1 Репозитории

Добавлен официальный репозиторий Zabbix в /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
Copy
✔ Copied
1.2 Межсетевой экран

Готовое решение использует брандмауэр iptables с предустановленными правилами:

  • Открыт порт SSH (22 TCP);
  • Открыты порты Zabbix агента (10050 TCP) и Zabbix траппера (10051 TCP);
  • Открыты порты HTTP (80 TCP) и HTTPS (443 TCP);
  • Открыт порт SNMP трапов (162 UDP);
  • Открыты исходящие подключения на порт DNS (53 UDP) к 8.8.8.8 и 8.8.4.4;
  • Открыты исходящие подключения на порт NTP (123 UDP);
  • ICMP пакеты ограничены 5 пакетами в секунду;
  • Все остальные входящие подключение отбрасываются.
1.3 Дополнительные пакеты

Добавлены различные простые утилиты, которые могут сделать работу с Zabbix и мониторингом в целом легче:

  • iptables-persistent
  • mc
  • htop
  • snmptrapfmt
  • snmp-mibs-downloader

Некоторые из этих пакетов используются Zabbix, некоторые из них установлены, чтобы помощь пользователям настраивать/управлять настройками готового решения.

1.4 Использование статического IP адреса

По умолчанию готовое решение получает IP адрес по DHCP. Для того, чтобы указать статический IP адрес выполните:

  • Войдите под пользователем root;
  • Откройте файл /etc/network/interfaces в вашем любимом редакторе;
  • iface eth0 inet dhcpiface eth0 inet static
  • Измените следующие строки после iface eth0 inet static:
    • address <IP адрес готового решения>
    • netmask <маска подсети>
    • gateway <ваш адрес сетевого шлюза>
  • Выполните команды sudo ifdown eth0 && sudo ifup eth0.

Для получения более подробной информации о других возможных опциях обратитесь к официальной документации по Ubuntu.

Для настройки DNS, добавьте записи серверов имен в /etc/resolv.conf, указывая по одному серверу имен в одной строке: nameserver 192.168.1.2.

1.5 Изменение часового пояса

По умолчанию готовое решение использует UTC часовой пояс для системного времени. Для изменения часового пояса, скопируйте соответствующий файл из /usr/share/zoneinfo в /etc/localtime, например:

cp /usr/share/zoneinfo/Europe/Riga /etc/localtime
Copy
✔ Copied
1.6 Изменения локали

Готовое решение содержит несколько изменений локалей:

  • Содержит следующие языки: en_US.UTF-8, ru_RU.UTF-8, ja_JP.UTF-8, cs_CZ.UTF-8, ko_KR.UTF-8, it_IT.UTF-8,
    pt_BR.UTF-8, sk_SK.UTF-8, uk_UA.UTF-8, fr_FR.UTF-8, pl.UTF-8, zh_CN.UTF-8;
  • Локаль по умолчанию en_US.UTF-8.

Эти изменения требуются для поддержки мультиязычного веб-интерфейса Zabbix.

1.7 Другие изменения
  • Сеть настроена на получение IP адреса по DHCP;
  • Утилита fping имеет права 4710 и ей назначен владелец группы zabbix - suid и только разрешено использование группе zabbix;
  • ntpd настроен на синхронизацию с пулами публичных серверов: ntp.ubuntu.com;
  • Используется LVM том с ext4 файловой системой.
  • Добавлено "UseDNS no" в файл конфигурации SSH сервера /etc/ssh/sshd_config для того, чтобы избежать долгих ожиданий при подключении к SSH;
  • Демон snmpd отключен в файле конфигурации /etc/default/snmpd.

2 Конфигурация Zabbix

Инсталляция готового решения Zabbix имеет следующие пароли и другие изменения конфигурации:

2.1 Учетные данные (имя пользователя:пароль)

Система:

  • appliance:zabbix

Используйте "sudo su" команду вместе с паролем от "appliance" пользователя для получения привилегированных root прав.

LiveCD поставляется без какого-либо пароля и использует ubuntu пользователя для выполнения входа в консоль.

База данных:

  • root:<случайный>
  • zabbix:<случайный>

Пароли к базе данных генерируются случайным образом в процессе инсталляции.
Пароль root записан в /root/.my.cnf файле, таким образом не требуется вводить пароль, находясь под аккаунтом "root".

Веб-интерфейс Zabbix:

  • Admin:zabbix

Для изменения пароля пользователя базы данных, потребуются изменения в следующих местах:

  • MySQL;
  • /etc/zabbix/zabbix_server.conf;
  • /etc/zabbix/web/zabbix.conf.php.
2.2 Размещения файлов
  • Файлы конфигурации расположены в /etc/zabbix.
  • Файлы журналов (логи) Zabbix сервера, прокси и агента расположены в /var/log/zabbix.
  • Веб-интерфейс Zabbix расположен в /usr/share/zabbix.
  • Домашняя папка пользователя zabbix - /var/lib/zabbix.
2.3 Изменения в настройках Zabbix
  • Имя сервера для веб-интерфейса Zabbix изменено на "Zabbix Appliance";
  • Часовой пояс веб-интерфейса изменен на Europe/Riga - родина Zabbix (этот параметр можно изменить в файле /etc/apache2/conf-available/zabbix.conf);
2.4 Сохранение конфигурации

Если вы загрузили готовое решение с Live CD или по какой-то причине не можете иметь постоянного накопителя, вы можете создать архивную копию базы данных, включая все настройки и все собранные данные.

Для создания архивной копии, выполните:

mysqldump zabbix | bzip2 -9 > dbdump.bz2
Copy
✔ Copied

Теперь вы можете переместить файл dbdump.bz2 на другую машину.

Для восстановления из архивной копии, переместите копию в готовое решение и выполните:

bzcat dbdump.bz2 | mysql zabbix
Copy
✔ Copied

Убедитесь, что Zabbix сервер не запущен при выполнении восстановления.

3 Доступ к веб-интерфейсу

По умолчаниб доступ к веб-интерфейсу разрешен отовсюду.

Доступ к веб-интерфейсу может быть получен с http://<хост>/zabbix.

Эти параметры могут быть изменены в /etc/apache2/conf-available/zabbix.conf. Вы должны перезапустить веб-сервер после изменения этого файла. Чтобы это сделать зайдите на сервер по SSH под root и выполните:

service apache2 restart
Copy
✔ Copied

4 Межсетевой экран

По умолчанию, открыты только те порты, которые перечислены в изменениях. Чтобы открыть дополнительные порты, просто измените файлы "/etc/iptables/rules.v4" или "/etc/iptables/rules.v6" и перезагрузите правила межсетевого экрана:

service iptables-persistent reload
Copy
✔ Copied

5 Возможности мониторинга

Zabbix сервер скомпилирован с поддержкой следующих функций:

  • SNMP
  • IPMI
  • Веб-мониторинг
  • VMware мониторинг
  • Оповещения по Jabber
  • Оповещения по EZ Texting
  • ODBC
  • SSH2
  • IPv6
  • SNMP трапы
  • Zabbix Java Gateway

6 SNMP трапы

Готовое решение Zabbix использует snmptrapfmt для обработки SNMP трапов. Утилита настроена на получение всех трапов отовсюду.

Аутентификация не требуется. Если вы желаете включить аутентификацию, вам необходимо изменить файл /etc/snmp/snmptrapd.conf и указать требуемые настройки аутентификации.

Все трапы записываются в /var/log/zabbix/snmptrapfmt.log файл. Этот файл ротируется при помощи logrotate до достижения размера файла в 2ГБ.

7 Обновление

Пакеты готового решения можно обновлять. Чтобы это сделать, выполните:

sudo apt install --only-upgrade 'zabbix.*'
Copy
✔ Copied

8 Именование, скрипты запуска и другие скрипты

Представлены соответствующие скрипты запуска. Для контроля Zabbix сервера используйте следующие команды:

service zabbix-server status
Copy
✔ Copied

Замените server на agent для демона Zabbix агента или на proxy для демона Zabbix прокси.

8.1 Увеличение доступного дискового пространства

Создайте резервную копию всех данных до выполнения любого из шагов.

Доступного дискового пространства в готовом решении может быть недостаточно. В этом случае имеется возможность расширить используемый диск. Для этого сначала расширьте блочное устройство в вашей среде виртуализации, затем выполните эти шаги.

Запустите fdisk для изменения размера раздела. Выполните под root:

fdisk /dev/sda
Copy
✔ Copied

Эта команда запустит fdisk для диска sda. Затем, переключитесь на использование секторов и введите:

u
Copy
✔ Copied

Не отключайте совместимость с DOS нажатием c. При отключении этой совместимости раздел будет поврежден.

Затем удалите существующий раздел и создайте новый с нужным размером. В большинстве случаев вы будете выбирать доступный максимум, что расширит файловую систему до размера, который вы сделали доступным для виртуального диска. Для этого введите следующую последовательность в fdisk:

d
       n
       p
       1
       (принимаем по умолчанию 63)
       (принимаем по умолчанию max)
Copy
✔ Copied

Если вы хотите оставить пространство для дополнительных разделов (swap и т.д.), вы можете ввести другое значение для last sector (последний сектор). По завершении сохраните изменения введя:

w
Copy
✔ Copied

После создания раздела (с нового диска или расширения существующего) создайте физический том:

pvcreate /dev/sdb1
Copy
✔ Copied

Имя раздела /dev/sdb1 используется как пример; в вашем случае имя диска и номер раздела могут быть другими. Вы можете проверить номер раздела, выполнив fdisk -l /dev/sdb команду.

Проверьте только что созданный физический том:

pvdisplay /dev/sdb1
Copy
✔ Copied

Проверьте доступные физические тома. Должно быть 2 тома zabbix-vg и только что созданный:

pvs
Copy
✔ Copied

Расширьте существующую группу томов при помощи только что созданного физического тома:

vgextend zabbix-vg /dev/sdb1
Copy
✔ Copied

Проверьте группу томов "zabbix-vg":

vgdisplay
Copy
✔ Copied

Теперь расширьте ваш логический том, заняв все свободное пространство:

lvextend -l +100%FREE /dev/mapper/zabbix--vg-root
Copy
✔ Copied

Измените размер вашего корневого тома (можно выполнить на живой системе):

resize2fs /dev/mapper/zabbix--vg-root
Copy
✔ Copied

Перезагрузите виртуальную машину (так как раздел, который мы изменили, в настоящее время используется). Теперь файловая система должна быть увеличена до размера раздела. Проверьте "/dev/mapper/zabbix--vg-root" том:

df -h
Copy
✔ Copied

9 Заметки о специфичных форматах

9.1 Xen

Конвертация образа для XenServer

Для использования Xen образов в Citrix Xenserver вам необходимо сконвертировать образ диска. Чтобы это сделать:

  • Создайте виртуальный диск, который будет по крайней мере такого же размера как и образ
  • Узнайте UUID этого диска
xe vdi-list params=all
Copy
✔ Copied
  • Если имеется много дисков, их можно отфильтровать по параметру имени name-label (имя-метка), как назначенные при создании виртуального диска
  • Импортируйте образ
xe vdi-import filename="image.raw" uuid="<UUID>"
Copy
✔ Copied

Инструкции с Brian Radford blog.

9.2 VMWare

Образы в формате vmdk используются напрямую в продуктах VMWare Player, Server и Workstation. Для использования в ESX, ESXi и vSphere образы должны быть сконвертированы с использованием конвертер VMWare.

9.3 Образ HDD/flash (raw)
dd if=./zabbix_appliance_3.0.0_x86_64.raw of=/dev/sdc bs=4k conv=fdatasync
Copy
✔ Copied

Замените /dev/sdc на ваше Flash/HDD устройство диска.

10 Известные проблемы

To toggle search highlight, press Ctrl+Alt+H
Have an improvement suggestion for this page? Select the text that could be improved and press Ctrl+Enter to send it to the editors.