Zabbix требуется и оперативная память, и память на жестком диске. 128 МБ оперативной памяти и 256 МБ свободного места на жестком диске, может быть неплохо для начала. Тем не менее, объем необходимой памяти диска, очевидно, зависит от количества узлов сети и параметров, которые будут контролироваться. Если вы планируете сохранять историю контролируемых параметров длительный срок, вы должны иметь ввиду, что по крайней мере будет нужно иметь несколько гигабайт для хранения данных истории в базе данных. Каждый процесс демона Zabbix требует несколько подключений к базе данных. Объем памяти, необходимой для подключения к базе данных, зависит от настроек базы данных.
Чем больше оперативной памяти у вас имеется, тем быстрее база данных (а следовательно и 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 может работать и на других Unix-подобных операционных системах.
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'а. |
Поддержка IBM DB2 эскпериментальна!
Поддержка SQLite3 при использовании его с 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. |
Также Zabbix может работать и с предыдущими версиями Apache, MySQL, Oracle, и PostgreSQL.
Для отличных шрифтов от DejaVu, который установлен по умолчанию, нужна функция PHP imagerotate.Если функция не установлена, то эти шрифты могут неправильно отображаться в заголовке Мониторинг → Обзор и в других местах. Эта функция доступна, если только PHP скомпилирован вместе с GD, которого нет для Debian и для некоторых других дистрибутивов.
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 один из наиболее популярных демонов синхронизации времени хоста с временем на остальных серверах.