Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
Путь мониторинга
модульность, гибкость, devops
Ghbdtn!
• Всеволод Поляков
• Lead DevOps Grammarly
• поддержка около 30
сервисов на Java, erlang,
python, lisp, ruby, js с...
Чего мы хотим?
• Получать сообщения о проблемах
• Не получать сообщения когда проблем нет
• Помощь в поиске проблемы
• Пре...
DevOps
• Разработчики знают сервис лучше чем опсы
• Нет батлнека в опс команде
• Повышается скорость работы
Почему старое плохо?
• Свои сложные концепции
• Сложно для девелоперов
• Содержит в себе все что может пригодиться, а
може...
Метрики
• env.role.node_name.metric
• Приложение пишет метрики в statsd
• Система пишет метрики в statsd
• Агрегируем и че...
Пожелания
• Простота добавления метрик и проверок по ним
• Должно скейлиться и не падать
• Хранить информацию по метрикам ...
• Логи: 300 Gb/день
• Метрики: 120 000, обновляются раз в 10 секунд
• 300 проверок состояний
• Разработчики всех сервисов ...
Sensu
influx
• Маленькая база на go ~ 20mb RAM
• Локальная база на каждом сервере
• Хранилище метрик на два дня
Сбор метрик в ноде
Глобальное хранилище
скрин графаны
Логи
• Общий формат для всех сервисов: json
• Текстовый файл с logrotate
Мониторинг фронтенда
• Логи → nginx → logstash
• Метрики → nginx → агрегатор → statsd
• Плагин для логстеша, разворачивает...
Слайд по всяким штукам
• 500-е, уникальные юзеры
• разработчики сами все мониторят и просыпаются
ночью
• сравнение времени...
Над чем мы думаем
• Мониторинг безымянных серверов
• Хранение метрик приложений в mesoskubernetis
окружениях
Путь мониторинга: модульность, гибкость, devops / Всеволод Поляков (Grammarly)
Nächste SlideShare
Wird geladen in …5
×

Путь мониторинга: модульность, гибкость, devops / Всеволод Поляков (Grammarly)

671 Aufrufe

Veröffentlicht am

Почти год назад мы завершили проект по универсальному мониторингу и в процессе приобрели кучу секретных знаний и умений, которыми хотим поделиться:
* как сделать мониторинг простым, отказоустойчивым и горизонтально масштабируемым;
* как понять, что важно, что не важно, а что важно, но чуть-чуть;
* полезные логи: конвертация логов в метрики и обратно;
* как диагностировать реальные проблемы и отличить их от ложной тревоги (на примере связки js-фронтенд + балансеры + java-бэкенд);
* и, конечно же, как внедрить практики DevOps посредством мониторинга (и подготовить разработчиков к тому, что они ответственны за алерты).


Стек мониторинга: sensu, graphite, cassandra, logstash, heka, influxdb, elsticsearch, chef, statsd, nginx.
Стек поддержки: js, java, erlang, lisp, python, ruby, nginx, mysql, haproxy

Veröffentlicht in: Ingenieurwesen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Путь мониторинга: модульность, гибкость, devops / Всеволод Поляков (Grammarly)

  1. 1. Путь мониторинга модульность, гибкость, devops
  2. 2. Ghbdtn! • Всеволод Поляков • Lead DevOps Grammarly • поддержка около 30 сервисов на Java, erlang, python, lisp, ruby, js силами 4- х админов
  3. 3. Чего мы хотим? • Получать сообщения о проблемах • Не получать сообщения когда проблем нет • Помощь в поиске проблемы • Предупреждение о возможных проблемах • Не пропускать проблемы
  4. 4. DevOps • Разработчики знают сервис лучше чем опсы • Нет батлнека в опс команде • Повышается скорость работы
  5. 5. Почему старое плохо? • Свои сложные концепции • Сложно для девелоперов • Содержит в себе все что может пригодиться, а может и не пригодиться • Две системы управления конфигурацией
  6. 6. Метрики • env.role.node_name.metric • Приложение пишет метрики в statsd • Система пишет метрики в statsd • Агрегируем и чекаем сами, без приложения
  7. 7. Пожелания • Простота добавления метрик и проверок по ним • Должно скейлиться и не падать • Хранить информацию по метрикам как можно дольше • Хранить много метрик • Разработчики мониторят свои сервисы без участия опсов
  8. 8. • Логи: 300 Gb/день • Метрики: 120 000, обновляются раз в 10 секунд • 300 проверок состояний • Разработчики всех сервисов отвечают за мониторинг • Занятость команды админов в мониторинге минимальна
  9. 9. Sensu
  10. 10. influx • Маленькая база на go ~ 20mb RAM • Локальная база на каждом сервере • Хранилище метрик на два дня
  11. 11. Сбор метрик в ноде
  12. 12. Глобальное хранилище
  13. 13. скрин графаны
  14. 14. Логи • Общий формат для всех сервисов: json • Текстовый файл с logrotate
  15. 15. Мониторинг фронтенда • Логи → nginx → logstash • Метрики → nginx → агрегатор → statsd • Плагин для логстеша, разворачивает сорсмап
  16. 16. Слайд по всяким штукам • 500-е, уникальные юзеры • разработчики сами все мониторят и просыпаются ночью • сравнение времени обработки чего-то в фронтенде и на бекенде • сквозной userID по всем сервисам
  17. 17. Над чем мы думаем • Мониторинг безымянных серверов • Хранение метрик приложений в mesoskubernetis окружениях

×