Zabbix состоит из нескольких основных программных компонентов, функции которых изложены ниже.
Zabbix сервер является основным компонентом, которому агенты сообщают информацию и статистику о доступности и целостности. Сервер является главным хранилищем, в котором хранятся все данные конфигурации, статистики, а также оперативные данные.
Как таковая вся информация о конфигурации, а так же данные собранные Zabbix, хранятся в базе данных.
Для легкого доступа к Zabbix из любого места и с любой платформы, поставляется интерфейс на основе Веб. Интерфейс является частью Zabbix сервера и обычно (но не обязательно) работает на том же самой физической машине, что и сервер.
При использовании SQLite Веб-интерфейс Zabbix должен быть запущен на этой же самой физической машине, что и сервер.
Zabbix прокси может собирать данные о производительности и доступности от имени Zabbix сервера. Прокси является опциональной частью Zabbix; однако он может быть полезен чтобы распределить нагрузку одного Zabbix сервера.
Zabbix агенты разворачиваются на наблюдаемых системах для активного мониторинга за локальными ресурсами и приложениями, и для отправки собранных данных Zabbix серверу или прокси.
Кроме того, важно сделать шаг назад и взглянуть на весь поток данных в Zabbix. Для того чтобы создать элемент данных, который будет собирать данные, вы должны сначала создать узел сети. Перемещаясь в другой конец спектра Zabbix, у вас должен быть элемент данных, чтобы создать триггер. У вас должен быть триггер, чтобы создать действие. Таким образом, если вы хотите получать оповещения о слишком высокой загрузке CPU на Сервере X, вы сначала должны создать запись о узле сети для Сервера X, затем элемент данных для наблюдения за CPU, затем триггер, который сработает, если загрузка CPU будет слишком высокой, а затем действие которое отправит вам email. Хотя может показаться, что требуется слишком много шагов, использование шаблонов значительно упрощает процесс. Однако, такое построение системы позволяет создавать очень гибкие инсталляции.