Upgrade to Pro — share decks privately, control downloads, hide ads and more …

«Эвенты Zabbix в ElasticSearch» — Илья Аблеев, Badoo

Badoo Tech
June 26, 2018
9.3k

«Эвенты Zabbix в ElasticSearch» — Илья Аблеев, Badoo

Руководитель отдела мониторинга в Badoo, инициатор и лидер Zabbix Moscow Meetup.

ElasticSearch для хранения эвентов (не истории!) Zabbix'а в Badoo начали использовать много лет назад. Точнее, сначала мы начали использовать Splunk, и лишь потом подключили Elastic. В докладе я расскажу, какие проблемы мы решаем такой интеграцией, и как это решение может быть полезно любому пользователю: визуализация событий, графики, отчёты, «комплексные запросы — это просто». Пару лет назад на митапе я показывал скриншот, как это выглядит. Настало время рассказать, как это работает.

Выступление на Zabbix Moscow Meetup 2018 в офисе Badoo.

Badoo Tech

June 26, 2018
Tweet

More Decks by Badoo Tech

Transcript

  1. Илья Аблеев · 23 июня 2018
    Эвенты Zabbix в
    ElasticSearch

    View full-size slide

  2. 2015 2016
    2017 2018
    ?

    View full-size slide

  3. © Boryaspec
    http://nozacem.lv

    View full-size slide

  4. Эвент – одиночное
    возникновение того, что
    заслуживает внимания.
    Например, изменение состояния
    триггера.
    zabbix.com/documentation

    View full-size slide

  5. Плюсы:
    • эвенты есть
    • можно ограничить вывод по группе, хосту, триггеру
    Минусы:
    • нет комплексной фильтрации
    • нотификации перестают приходить в почту/смс/итд после удаления eventid
    • акнолиджи также перестают работать
    Events (до 3.4)

    View full-size slide

  6. Плюсы:
    • появилась более сложная фильтрация
    • проблемный eventid не удаляется, пока не станет OK
    Минусы (субъективные, не зависит от версии):
    • табличный вид
    • постраничная навигация
    • (cубъективно!!!) долго открывается страница эвентов
    Events Problems (начиная с 3.4)

    View full-size slide

  7. Кол-во триггеров Кол-во эвентов (1d)
    Кол-во эвентов
    (30d)
    zabbix1 929K ~26K ~450K
    zabbix2 40K ~1.7K ~38K
    zabbix3 125K ~250 ~35K
    zabbixnet 21K 500 ~10K
    Zabbix в Badoo – цифры

    View full-size slide

  8. Немного теории
    https://www.zabbix.com/documentation/3.0/manual/api/reference/event/object

    View full-size slide

  9. Важно помнить
    • эвенты приходится удалять (1 млн строк за 30 дней)
    • при удалении – теряется история
    • эвенты удаляются (айдишки меняются) при:
    - пересоздании триггера (напр. LLD)
    - пересоздании хоста (напр. дискавери)
    - перепривязки шаблона

    View full-size slide

  10. 1. Хранить долго
    2. Делать выборку быстро
    3. Строить сложные запросы простым способом (любому сотруднику)
    Наши требования к истории событий

    View full-size slide

  11. Эвенты – логи

    View full-size slide

  12. Первая версия – Splunk
    Нагляднее, чем просто число или таблица, правда?

    View full-size slide

  13. Первая версия – Splunk
    • Не у каждого есть, не каждый купит, а значит доклад потеряет ценность :)
    • Специфично используем внутри компании, пришлось искать альтернативы

    View full-size slide

  14. Вторая версия – ElasticSearch (+Kibana)
    Всё ещё нагляднее, чем список.

    View full-size slide

  15. Техническая реализация

    View full-size slide

  16. 1. Временная таблица в базе (где и работает Zabbix server)
    2. Скрипт по экшену записывает эвенты в таблицу в читабельном виде
    3. Перекладываем из таблицы в ElasticSearch по крону (последовательно)
    … и в продакшен

    View full-size slide

  17. Поделимся? Конечно.
    https://github.com/ableev/Zabbix-Events-to-ElasticSearch
    Кто хочет попробовать – пишите :)

    View full-size slide

  18. Спасибо!
    Habr: Badoo
    https://www.meetup.com/Zabbix-Moscow-Meetup/
    Me: @ableev (everywhere)

    View full-size slide