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

Мониторинг системы мониторинга. Михаил Ефремов и Анна Манакова

Мониторинг системы мониторинга. Михаил Ефремов и Анна Манакова

С помощью систем мониторинга все мониторят свои системы. Но ведь сами системы мониторинга тоже нуждаются в мониторинге. На примере одного программного продукта (из сферы онлайн-аналитики больших объёмов данных), который с одной стороны содержит проприетарное закрытое ядро, а с другой стороны является платформой для открытой разработки (как внутренних расширений, так и интеграции с внешним миром с помощью всеобъемлющего API) мы рассмотрим кейсы тонкого self-health-чека и как такие возможности помогают make business monitoring great again.

405cf5a7e7cad100e431fa3a2403e909?s=128

Zoya Chizhkova

August 01, 2019
Tweet

Transcript

  1. Мониторинг системы мониторинга

  2. Кто мы и о чём расскажем в докладе Часть 1.

    Мир Splunk Рассказывает: Михаил Ефремов, системный администратор/devops Часть 2. Make business monitoring great again Рассказывает: Анна Манакова, системный администратор/devops Часть 3. Данные о данных: Yet Another CMDB Рассказывает: Михаил Ефремов
  3. Часть 1. Мир Splunk О чём расскажем в этой части:

    • Мотивация доклада (чем хотим поделиться) • «Категории» мониторинга • Splunk как экосистема (в которой уживаются данные и код) • Splunk как аппаратно-программный комплекс
  4. Мотивация доклада (чем хотим поделиться)

  5. Мотивация доклада (чем хотим поделиться)

  6. Мотивация доклада (чем хотим поделиться) Ощущение удовлетворения :)

  7. Категории мониторинга • Инфраструктурный мониторинг • Бизнес-мониторинг

  8. Экосистема Splunk Splunk это • Хранилище данных • Средство разработки

  9. Экосистема Splunk Splunk как хранилище данных • Логоподобные данные •

    Справочники (lookups) ◦ Файлы ◦ Коллекции в MongoDB
  10. Экосистема Splunk Splunk как средство разработки • Приложения, работающие в

    контексте самого Splunk • REST API для интеграции с другими системами
  11. Экосистема Splunk Что ещё • SPL (Search Processing Language) ◦

    Вычисляемые налету поля ◦ Conditions ◦ Regex ◦ Статистические функции ◦ Relational operators ◦ Transactions processing ◦ Predictions ◦ и др.
  12. Экосистема Splunk Что ещё • UI ◦ Алерты ◦ Отчёты

    ◦ Реалтайм дашборы
  13. Экосистема Splunk Что хочет бизнес? • Изощрённейшая аналитика с красивыми

    картинками • Алерты по всему! • Прямо сейчас!!
  14. Прямо сейчас!!1

  15. Splunk как аппаратно-программный комплекс • Кластеры indexer-ов • Кластеры search

    head-ов • Служебные машины • Источники данных
  16. Splunk как аппаратно-программный комплекс

  17. Splunk как аппаратно-программный комплекс Индексеры • Полтора десятка железных серверов

    • Сотни гиг RAM на каждом • Десятки ядер (Xeon) на каждом • NVME/SSD для горячих и тёплых данных • 10+ терабайтные локальные RAID • Резервирование: податацентровое + реплики внутри ДЦ
  18. Splunk как аппаратно-программный комплекс Search head-ы • Примерно то же

    самое, но без забористых хранилок
  19. Splunk как аппаратно-программный комплекс Источники • DBconnect • • •

  20. Splunk как аппаратно-программный комплекс Источники • DBconnect • Syslog •

    • •
  21. Splunk как аппаратно-программный комплекс Источники • DBconnect • Syslog •

    HTTP Event Collector • •
  22. Splunk как аппаратно-программный комплекс Источники • DBconnect • Syslog •

    HTTP Event Collector • Universal Forwarders •
  23. Splunk как аппаратно-программный комплекс Источники • DBconnect • Syslog •

    HTTP Event Collector • Universal Forwarders • Кое-что ещё...
  24. Splunk как аппаратно-программный комплекс Ещё немного цифр • Терабайты данных

    суммарно в сутки • Несколько тысяч источников • Сотни активных пользователей • Сотни RPS, десятки SPS • Хранение в среднем пару недель
  25. Splunk как аппаратно-программный комплекс А что же внутри?

  26. Splunk как аппаратно-программный комплекс

  27. И в какой-то момент что-то пошло не так...

  28. Часть 2. Make Business Monitoring Great Again О чём расскажем

    в этой части: • Формулировка проблемы • Мониторинг процессов, что нас удивило и где нашли зацепку • Жизнь внутри индекса и как за этим можно смотреть
  29. Мониторинг процессов https://github.com/ncabatoff/process-exporter

  30. В начале было...

  31. Помоги себе сам

  32. Жизненный цикл данных в индексе

  33. Откуда горки растут [filenet] homePath = $SPLUNK_DB/cl_filenet/db coldPath = $SPLUNK_DB/cl_filenet/colddb

    thawedPath = $SPLUNK_DB/cl_filenet/thaweddb maxHotBuckets = 10 maxHotIdleSecs = 86400 repFactor = auto maxDataSize = auto_high_volume maxTotalDataSizeMB = 500 homePath.maxDataSizeMB = (maxWarmDBCount + maxHotBuckets) * maxDataSize coldPath.maxDataSizeMB = maxTotalDataSizeMB - homePath
  34. «Что делать?»

  35. Результат внутреннего мониторинга сейчас

  36. Часть 3. Данные о данных: Yet Another CMDB

  37. Часть 3. Данные о данных: Yet Another CMDB О чём

    (не)расскажем в этой части: • Summary по предыдущей части • Затупившаяся бритва Оккама как мотивация создания Splunk CMDB • Splunk REST API → Django-based CMDB • CMDB → Splunk и связанная с этим «девопсня»
  38. Ответ на загадку

  39. Спасибо за внимание! Докладывали обстановку • Ефремов Михаил - e-mail:

    meechanic@gmail.com, telegram: @mike_meechanic • Манакова Анна - e-mail: manakova.anna@gmail.com, telegram: @mannabanana