Zabbix требуется и оперативная память, и память на жестком диске. 128 МБ оперативной памяти и 256 МБ свободного места на жестком диске, может быть неплохо для начала. Тем не менее, объем необходимой памяти диска, очевидно, зависит от количества узлов сети и параметров, которые будут контролироваться. Если вы планируете сохранять историю контролируемых параметров длительный срок, вы должны иметь ввиду, что по крайней мере будет нужно иметь несколько гигабайт для хранения данных истории в базе данных. Каждый процесс демона Zabbix требует несколько подключений к базе данных. Объем памяти, необходимой для подключения к базе данных, зависит от настроек базы данных.
Zabbix и особенно база данных может потребовать значительных процессорных ресурсов в зависимости от количества контролируемых параметров и выбранной базы данных.
Потребуется Последовательный порт передачи данных и GSM модем для использования СМС уведомлений встроенных в Zabbix. Конвертер USB-to-serial так же будет работать.
В таблице приводятся несколько вариантов аппаратных конфигураций:
Название | Платформа | ЦПУ/Память | База данных | Наблюдаемые узлы сети |
---|---|---|---|---|
Маленькая | Ubuntu Linux | PII 350MHz 256MB | SQLite | 20 |
Средняя | Ubuntu Linux 64 bit | AMD Athlon 3200+ 2GB | MySQL InnoDB | 500 |
Большая | Ubuntu Linux 64 bit | Intel Dual Core 6400 4GB | RAID10 MySQL InnoDB или PostgreSQL | >1000 |
Очень большая | RedHat Enterprise | Intel Xeon 2xCPU 8GB | Быстрый RAID10 MySQL InnoDB или PostgreSQL | >10000 |
В связи с требованиями безопасности и критически важных контролируемых серверов, только операционная система UNIX является единственной операционной системой, которая может обеспечить необходимую производительность, отказоустойчивость и гибкость. Zabbix работает на всех ведущих версиях ОС.
Zabbix протестирован на следующих платформах:
Zabbix построен на современном ВЕБ сервере Apache, ведущих СУБД, и языке сценариев PHP.
Программа | Версия | Комментарии |
---|---|---|
MySQL | 5.0 или более новая | Требуется, если MySQL используется как основная база данных Zabbix'а. Требуется InnoDB engine. |
Oracle | 10g или более новая | Требуется, если Oracle используется как основная база данных Zabbix'а. |
PostgreSQL | 8.1 или более новая | Требуется, если PostgreSQL используется как основная база данных Zabbix'а. Предлагаем использовать по крайней мере PostgreSQL версии 8.3, который показывает очень хорошую производительность VACUUM. |
SQLite | 3.3.5 или более новая | Требуется, если SQLite используется как основная база данных Zabbix'а. |
IBM DB2 | 9.7 или более новая | Требуется, если IBM DB2 используется как основная база данных Zabbix'а. |
Следующее программное обеспечение потребуется для работы веб-интерфейса Zabbix:
Приложение | Версия | Комментарии |
---|---|---|
Apache | 1.3.12 или более поздняя | |
PHP | 5.1.6 или более поздняя | |
Расширения PHP: | ||
gd | 2.0 или более поздняя | Расширение PHP GD должен поддерживать формат PNG (--with-png-dir), JPEG (--with-jpeg-dir) изображения и FreeType 2 (--with-freetype-dir). |
bcmath | php-bcmath (--enable-bcmath) | |
ctype | php-ctype (--enable-ctype) | |
libXML | 2.6.15 или более поздняя | php-xml или php5-dom, если поставляется как отдельный пакет от поставщика. |
xmlreader | php-xmlreader, если поставляется как отдельный пакет от поставщика. | |
xmlwriter | php-xmlwriter, если поставляется как отдельный пакет от поставщика. | |
session | php-session, если поставляется как отдельный пакет от поставщика. | |
sockets | php-net-socket (--enable-sockets). Требуется для поддержки пользовательских скриптов. | |
mbstring | php-mbstring (--enable-mbstring) | |
gettext | php-gettext (--with-gettext) | |
ibm_db2 | Требуется, если используется IBM DB2 в качестве базы для Zabbix. | |
mysql | Требуется, если используется MySQL в качестве базы для Zabbix. | |
oci8 | Требуется, если используется Oracle в качестве базы для Zabbix. | |
pgsql | Требуется, если используется PostgresSQL в качестве базы для Zabbix. | |
sqlite3 | Требуется, если используется SQLite в качестве базы для Zabbix. |
Cookies и Java скрипты должны быть включены.
Поддерживаются последние версии Google Chrome, Mozilla Firefox, Microsoft Internet Explorer и Opera. Также и другие браузеры (Apple Safari, Konqueror) могут работать с Zabbix.
Требование | Описание |
---|---|
OpenIPMI | Требуется для поддержки IPMI |
libssh2 | Требуется для поддержвки SSH. Версия 1.0 или более новая. |
fping | Требуется для элементов данных ICMP ping. |
libcurl | Требуется для веб-мониторинга. |
libiksemel | Требуется для поддержки Jabber. |
net-snmp | Требуется для поддержки SNMP. |
Данные конфигурации Zabbix требуют фиксированное количество дискового пространства и сильно не увеличиваются.
Размер базы данных Zabbix в основном зависит от следующих переменных, которые определяют историю собранных данных:
Это среднее количество новых значений, которые Zabbix сервер получает каждую секунду. Например: Если имеется 3000 элементов данных с интервалом проверки 60 секунд, то количество обрабатываемых запросов за секунду рассчитывается 3000/60 = 50.
Это означает, что каждую секунду в базу данных Zabbix добавляется 50 новых записей.
Zabbix хранит значения определенный период времени, обычно несколько недель или месяцев. Каждое новое значение требует определенный объем дискового пространства и индексов.
Так что, если требуется сохранение истории 30 дней и каждую секунду в базу данных добавляется 50 новых записей, общее количество значений будет равно примерно (30*24*3600)* 50 = 129.600.000 или около 130М значений.
В зависимости от типа базы данных, типа полученных значений (с плавающей точкой, целые числа, строки, лог файлы и т.д.) может потребоваться от 40 байт до сотен байт дискового пространства для хранения значения. Обычно одно значение занимает около 50 байт. В нашем случае это означает, что 130M значений потребуют 130M * 50 bytes = 6.5GB дискового пространства.
Zabbix хранит ежечасную статистику значений max/min/avg/count для каждого элемента данных в таблице trends и trends_uint. Эти данные используются для отслеживания динамики изменений и для графиков при отображении большого периода времени. Период в 1 час не является настраиваемым.
Базе данных Zabbix, в зависимости от типа базы данных, требуется около 128 байт на один элемент. Предположим, что если требуется хранить динамику изменений в течении 5 лет. Значения 3000 элементов данных потребуют 3000*24*365* 128 = 3.4ГБ за год, или 16.8ГБ за 5 лет.
Каждое событие требует около 130 байт дискового пространства. Большое количество событий генерируется Zabbix сервером ежедневно. В самом худшем случае, мы можем предположить, что Zabbix порождает одно событие в секунду.
Это означает, что если требуется хранить события 3 года, то для этого потребуется 3*365*24*3600* 130 = 12.3GB дискового пространства.
Представленная ниже таблица содержит формулы для расчета требуемого пространства жесткого диска для системы мониторинга Zabbix:
Параметр | Формула для расчетам занимаемого места(в байтах) |
---|---|
Конфигурация Zabbix | Фиксированный размер. Ориентировочно 10MB или меньше. |
История | дней*(элементов/частота обновления)*24*3600*байт элементы : количество элементов данных дней : количество дней хранения истории частота обновления : среднее значение периода проверки элементов данных байт : количество байт, требуемых для одного значения, зависит от типа базы данных, около 50 байт |
Динамика изменений | дней*(элементов/3600)*24*3600*байт элементов : количество элементов данных дней : количество дней хранения тенденций байт : количество байт, требуемых для одного значения, зависит от типа базы данных, около 128 байт. |
События | дней*событий*24*3600*байт событий : количество событий в секунду. Одно (1) событие в худшем случае. дней : количество дней хранения событий байт : количество байт, требуемых для одного значения, зависит от типа базы данных, около 130 байт. |
Общее количество требуемого места на жестком диске рассчитывается:
Конфигурация + История + Динамика изменений + События
После установки Zabbix такое дисковое пространство более не будет использовано сразу. Размер базы данных будет увеличиваться со временем, но потом рост все же остановится - это зависит от настроек очистки базы данных (Housekeeper).
Очень важно иметь точную дату и время системы на сервере с запущенным Zabbix. ntpd один из наиболее популярных демонов синхронизации времени хоста с временем на остальных серверах.