Обзор архитектуры и подсистем деплоя и мониторинга.
Как инженеры делают систему прозрачной для разработки.
1) Схема организации репозитория puppet.
Зачем мы сделали репозиторий публичным внутри компании?
Как мы "делим" puppet, и что делать, если все "пропало"?
Собственная реализация механизма puppet kick.
2) Как рассказать всем обо всем и никого не потерять.
"Черный мониторинг" (rbmon). Как мы собираем информацию о серверах и демонах.
Делимся логами с разработчиками. Почему написали "велосипед"?
3) Graphite - система сбора и визуализации данных.
Почему graphite?
1М метрик в минуту?
Какие метрики мы рисуем (nginx-graphite-module, rbmon plugins).
Визуализация работы проекта (Dashboard пульт).
Zero Downtime PHP Deployment with Envoyer And Forge
обзор архитектуры и подсистем деплоя и мониторинга
1. Обзор архитектуры и
подсистем деплоя и
мониторинга. Как
инженеры делают систему
прозрачной для
разработки.
Константин Никифоров
2. Содержание
• Структура нашего puppet.
Организация выкладки.
• Graphite как способ
визуализации работы проекта.
• Как объединяем puppet,
graphite и мониторинг.
3. Environments и базовые настройки
• GIT как хранилище
манифестов.
• Каждому пользователю по
своему environment.
• Base - един для всех нод.
12. graphite-nginx-module
• собирает и агрегирует статистику
• работает в неблокирущем режиме
• набор отображаемых метрик может быть
дополнен
Стандартные метрики
body_bytes_sent, bytes_sent, content_time,
gzip_time, keepalive_rps, request_length, rps,
ssl_cache_usage, ssl_handshake_time,
upstream_time
15. Черный мониторинг
Функционал клиентской части
• собирает метрики и шлет в Graphite
• собирает информацию о хосте и шлет в свой
коллектор
• генерирует и пушит сообщения в мониторинг
Функционал серверной части
• Прием и отображение ошибок и мониторинг своих
клиентов
• Отображение собранной информации о хостах
• Экспорт ошибок в "большой мониторинг"
16. Информация для разработки
• манифесты puppet
• где и какой софт работает
• какие машины свободны
• конфигурация любого сервера и его расположение
• история метрик серверов более чем за 3 года
• история алертов за все время
• история изменений в production окружении