История проекта
Zabbix празднует 8 летний юбилей!
• Выбор 1998 года — HP OpenView, IBM, BMC. Open Source: BigBrother
• Проблема! Как назвать продукт?! ABCDE...Zabbix!
• Апрель 2001 года — вышла первая версия Zabbix 1.0alpha1
• Апрель 2004 года — первая стабильная версия Zabbix 1.0
• Март 2005 года — основана компания Zabbix SIA
А что сегодня?
Zabbix 1.6.4, 500 скачиваний в день, 15.000 человек на форуме, нас 9
человек, и мы говорим по-русски :-)
Что такое Zabbix
Zabbix — это система для мониторинга производительности и
доступности IT инфраструктуры: приложения, сервисы, вычислительные
ресурсы.
Функциональность Zabbix:
• Мониторинг с помощью агентов и без
• Auto-discovery
• Эскалация проблем и запуск скриптов
• WEB мониторинг
• Графики, карты, экраны
• Мониторинг SLA, отчёты
• Dashboard
Основные компоненты
Сервер:
• Ядро Zabbix, логика системы
• Обработка данных
• Оповещения
• Эскалации
WEB интерфейс:
• Доступ к истории
• Вся конфигурация
Агент:
•Сбор данных
Особенности архитектуры Zabbix
Чем отличается Zabbix от других продуктов?
• Решение всё-в-одном, но только что касается мониторинга!
• Все данные и вся конфигурация находятся в базе данных
• 100% наш код: не используем Nagios, RRD
• Вся логика на стороне сервера, агенты лишь собирают данные
Важные технические решения:
• WEB интерфейс для просмотра и конфигурации
• Все написано на C, интерфейс на PHP. Никаких Java/Python/Perl/Ruby
на стороне сервера и агента! Fork() - нет, syscalls() - ДА!
• Удобен для мониторинга как больших, так и маленьких сред.
• Поддержка практически всех платформ
Способы мониторинга серверов
Service checks: SNMP агент:
• Обычно NET-SNMP
FTP, SSH, HTTP, SMTP, DNS ...
• Мониторинг приложений (Oracle,
Zabbix Agent: Weblogic, Websphere, PostgreSQL,
• Активные и пассивные MySQL, ...)
• SNMP traps
проверки
• Мониторинг log файлов
• Легко расширяемый IPMI:
• Удалённый запуск команд • Мониторинг состояния железа
• Очень эффективен! • Удалённое управление (reboot,
reset, halt)
Используем Zabbix агент
Активные проверки:
• Наиболее эффективны
• Возможна буферизация
данных
Пассивные проверки:
• Требуют polling на стороне
Zabbix сервера
• Дополнительные
накладные расходы
Тысячи серверов: сложности
Задача: Проблемы и решения:
• Несколько тысяч • Объём данных (история, тенденции) и
серверов производительность Zabbix
• Распределены по 2-100 • Интеграция с существующими системами
дата-центрам или (helpdesk, conf management, LDAP)
• Поддержка: изменение конфигурации
филиалам
• Необходим (шаблоны)
• Upgrade (непросто для тысяч устройств)
централизованный
мониторинг
Самое важное решение:
• Выбор правильной архитектуры
Zabbix: несколько вариантов
1 Сервер
1 Сервер Распределенный
Много Proxy
• Один Zabbix • Один Zabbix сервер • Один Zabbix сервер на
• Один Proxy на
сервер занимается дата-центр
• Требует бOльших
всем дата-центр или
филиал усилий по поддержке
• Можно
комбинировать с Proxy
Что такое Proxy?
Proxy — это демон для сбора данных с агентов
Какие плюсы:
• Упрощает архитектуру
• Не требует больших ресурсов
• Разгружает Zabbix сервер
Как работает Proxy?
Управление: Если пропала связь с Zabbix сервером:
• Данные накапливаются на стороне Proxy
• Только сбор данных • Отсылаются при восстановлении связи
• Полностью управляется • Не получим сообщения о проблемах!
сервером через WEB интерфейс
• Конфигурация хранится на
Zabbix сервере
• Все соединения создает Proxy
• Обработка тысяч значений в
секунду
Распределенный мониторинг
Основные характеристики:
• Структура в виде дерева
• Нода — это Zabbix сервер
• Ноды платформо-
независимы
Управление:
• Two-way replication
• Ноды более высокого
уровня контролируют
зависимые ноды
Обработка потери соединения
Что перестанет работать?
• Отсылка данных
• Синхронизация конфигурации
Всё остальное продолжает
работать!
Какую схему выбрать?
Зависит от требований:
• Локальное администрирование
• Полноценный мониторинг при потере соединений между филиалами
Распределенный
1 Сервер
Много Proxy
1 Сервер Полноценный
Добавляем Proxy распределенный
Знакомимся с Zabbix мониторинг