SlideShare a Scribd company logo
1 of 38
Поддержка
высоконагруженного
проекта
Евгений Потапов
Евгений Потапов
генеральный директор
компании ITSumma
Круглоcуточное удаленное
администрирование
серверов и техническая
поддержка сайтов
100 миллионов уникальных
посетителей в сутки
Штат – 50 человек
Более тысячи серверов на
поддержке
На поддержке
Содержание
• Мониторинг и его специфика
в высоконагруженном проекте
• Организация резервирования и
резервного копирования
• Организация обслуживания и
поддержки.
Цели
мониторинга
• Мониторинг как система оповещения
• Мониторинг как средство анализа
• Мониторинг как система принятия решений
Мониторинг как
система
оповещения
• Оповещение о проблемах на сервере
• Оповещение о проблемах, связанных с логикой
приложения
• Оповещение о проблемах, связанных с бизнес-
показателями
Мониторинг как
система
оповещения
Требования к системе оповещения:
1. независимость от самого проекта (если он упадет
система должна продолжать работать)
2. максимально быстрое оповещение о достижении
критических показателей
3. надежность оповещений о достижении
критических показателей
Мониторинг как
система
оповещения
Три уровня оповещений:
1. Проблемы на сервере (проблемы на серверном
железе/серверном ПО)
2. Проблемы на уровне приложения
(производительность подсистем, число
обращений к подсистемам)
3. Проблемы на уровне бизнес-логики (метрики
бизнеса)
Оповещения о
проблемах на
сервере
Проблемы на сервере
1. Статистика по нагрузке на CPU
(Оповещения на рост Load Average>числа
ядер, CPU idle ниже определенного порога)
2. Статистика по нагрузке на дисковую
подсистему
(увеличение времени avio, рост дисковых
операций iops, рост «busy» диска)
3. Использование оперативной памяти/swap
(снижение cached+buffers+free ниже порога,
рост использования swap (swap in / swap out)
Оповещения о
проблемах на
сервере
4. Статистика по серверному софту
(падение / всплески числа запросов на веб-
сервер, статистика сервера БД, итд)
5. Внешний мониторинг ответа сервисов (время
ответа страниц, код ответа страниц, размер
ответа страниц, ошибки рендеринга в CasperJS,
время рендеринга)
Оповещения о
проблемах на
сервере
Проблемы на уровне приложения
1. Число ошибок уровня приложения
(Рост числа ошибок больше заданного,
рост/падение числа событий в целом)
2. Число обращений к подсистемам/ «узлам»
приложения
(Рост/падение таких обращение)
3. Время взаимодействия приложения с
внешними сервисами
(рост времени запроса к внешним сервисам,
корректность ответов внешних сервисов на
уровне приложения)
Оповещения о
проблемах на
сервере
Проблемы на уровне бизнес-логики
1. Бизнес данные на «последней миле»
технологического стека
(Bablo per minute, время с последних действий
пользователей, падение числа пользователей)
2. Эмуляция пользовательской логики
приложения
(оповещения не невозможность выполнить
пользовательские действия, оповещения на
увеличение времени ответа пользовательских
действий)
Оповещения о
проблемах на
сервере
4. Статистика по серверному софту
(падение / всплески числа запросов на веб-
сервер, статистика сервера БД, итд)
5. Внешний мониторинг ответа сервисов (время
ответа страниц, код ответа страниц, размер
ответа страниц, ошибки рендеринга в CasperJS,
время рендеринга)
Оповещения о
проблемах на
сервере
Устанавливать оповещения следует не на фатальные
состояния (не осталось места на диске, CPU загружен
на 95%), а на «контрольные точки» проекта.
1. На запуске – проект не загружен. После
первоначального «шторма», рост будет плавный.
2. Ключевая метрика роста/проблем - достижение
контрольных точек (исчерпали 25% ресурсов,
исчерпали 50% ресурсов итд).
3. В сложных решениях нужно иметь запас времени
для действий связанных с оптимизацией или
масштабированием.
Мониторинг как
система анализа
Цель – понять причину происходящих проблем
Требования:
1. возможность хранить максимально возможное
количество данных в максимально возможной
детализации
2. возможность быстро выбрать эти данные за
нужный период
3. возможность быстро отобразить выбранные
данные и детально их изучить
Мониторинг как
система анализа
Необходимая функциональность:
1. Сравнение однотипных данных по разным
серверам (на каком сервере происходят
отклонения от нормы)
2. Сравнение текущих данных с историческими
данными (день назад, неделя назад, месяц
назад)
(насколько текущие показатели отклоняются от
нормы)
3. Быстрая выборка большого диапазона
исторических данных (изменение данных в
Мониторинг как
система анализа
Дополнительно:
Сложная агрегация метрик (скользящая средняя,
перцентиль, группировка по минимуму, максимум
итд).
Мониторинг как
система принятия
решений
Организационный подход:
1. Данные в мониторинге следует использовать не
только для анализа причин текущих аварий, но и
для понимания что делать дальше
2. Регулярный обзор всех ключевых метрик с целью
анализа новых «контрольных точек» («через 6
месяцев мы съедим половину ресурсов»)
3. Данные в мониторинге, как средство избежать
повторяющихся ошибок
Мониторинг
Доступные решения:
1. Новый проект на старте: SaaS (Serverdensity,
NewRelic, DataDog)
2. Сложный сбор данных, развитие семейство
Graphite
3. Извращение и много ресурсов: свои системы
Резервное
копирование
Ключевые проблемы:
1. Процесс снятия резервной копии (нагрузка на
сервер)
2. Регулярность снятия резервной копии (объем
данных, время, необходимое на резервирование)
3. Время восстановления из резервной копии
Резервное
копирование
Процесс снятия резервной копии:
1. Сам по себе процесс снятия резервной копии –
тяжелая процедура
2. Резервные копии - создавать с резервных машин
3. Понимание того, что нужно резервировать: UGC
– база легкая, а статика может весить гигабайты.
База без картинок людям не нужна.
4. Бэкап без регулярной процедуры восстановления
– не бэкап.
Резервное
копирование
Резервные копии - БД:
1. Slave-сервер, как резервная копия на случай
аварии (защита от аварий с железом но не от
человеческого фактора)
2. Slave-сервер с искусственной задержкой, как
резервная копия на случай человеческого
фактора
3. Hot-backup-службы – для регулярного внешнего
резервного копирования.
Резервное
копирование
Резервные копии – БД – хранение:
1. Минимум одна копия – в пределах внутреннего
канала площадки (оперативное восстановление
при повреждении данных)
2. Минимум одна копия – на внешней площадке
(восстановление при глобальной аварии).
Резервное
копирование
Резервная копия - контент:
1. Снэпшоты/Rsync (при небольшом количестве
изменяемых данных в пределах интервала
резервного копирования).
2. Дублирование статики на резервный сервер
непосредственно сервером.
Резервное
копирование
Резервная копия - конфигурация:
1. Конфиги надо бэкапить! 
Резервное
копирование
Резервные копии – процедуры
Регулярная регламентированная процедура
восстановления проекта из резервной копии
Ключевые показатели:
1. Оценка времени, занятого на восстановление из
резервной копии
2. Оценка «отката во времени» на проекте, после
восстановление из резервной копии
3. Оценка целостности восстановленной резервной
копии
Резервирование
Ключевые вопросы:
1. Выбор площадки для резервирования
2. Мощности для резервирования и бюджеты
3. Процедуры переключения на резерв
Резервирование
Выбор площадки для резервирования
1. Резервная площадка не должна быть связана с
текущим датацентром (часто видим резервные
сервера в той же стойке даже на крупных
проектах)
2. Существует риск того, что резервная площадка
после переключения останется основной надолго –
она не должна быть слишком плохой по качеству
или слишком дорогой по стоимости.
Резервирование
Мощности для резервирования
На запуске проекта – простаивающие мощности –
лишние затраты.
1. Проект можно разделить на два ДЦ, и переходить
на один в случае аварии (тогда возможны
тормоза)
2. Гибридное облако – резерв находится в
минимальной конфигурации в облаках,
достаточной только для того чтобы принимать
репликацию. В случае аварии – масштабирование
и переключение.
Резервирование
Резервирование – процедуры
Регулярная регламентированная процедура
переключения на резерв (все ненавидят)
1. Оценка времени, занятого на переключение
2. Оценка целостности данных после
переключения на резерв
3. Очень не любит бизнес – риск простоя (но еще
больший риск – если не делать)
Резервирование и
резервное
копирование
1. Slave – это не бэкап
2. Бэкап в том же ДЦ – это не бэкап
3. Резерв в том же ДЦ – это не резерв
4. Бэкап, который не восстанавливали – это не
бэкап
5. Бэкап без статики – это не бэкап
6. Если не хватает места – это не отмазка
7. Резерв без переключения – это почти не резерв
8. «Я решу про бэкап на днях» – первый (из двух)
шагов к потерянным данным.
Поддержка
Все это – не работает без команды
1. Понимание внутренностей продукта, способность
локализовать проблему
2. Вовлеченность в команду (ночные алерты - это боль)
3. Стрессоустойчивость (ночные алерты – это боль)
4. Чаще всего – на старте – разработчики с задатками
админа.
5. Должны быть экстраверты (по крайней мере – те
кто будут объяснять бизнесу что случилось)
Поддержка
Все это – не работает без организации
1. Исправленная авария, шаги по исправлению
которой не документированы - не исправлена
2. Любой инцидент без алертов может случится
один раз. Это должен быть единственный раз.
3. Любые повторяющиеся процедуры,
повторяющиеся алерты должны быть описаны
4. Минимум бюрократии на этапе борьбы с
аварией, формализация – на этапе postmortem-а.
Поддержка
Режим работы
1. Старт – SMS-ки ключевым людям, телефонные
звонки
2. Дежурства: двое через двое по 12 часов –
отсутствует жизнь.
3. Категорически не должно быть одного человека
на sms-ках. Минимум двое (лучше трое)
4. У каждого из людей on-call должно быть
минимум 3 телефона критических людей для
оповещения
Поддержка
Дополнительные метрики
1. Alerts per hour – для общего понимания
увеличения беды.
2. Время проведенное на серверах (рост времени –
рост проблем).
3. Запись SSH-сессий как способ просто
восстановить сделанные во время аварий
операции.
4. У каждого из людей on-call должно быть
минимум 3 телефона критических людей для
оповещения
Поддержка
Еще про работу
1. Bus factor – если несколько ключевых людей
летят на одном рейсе – серверы обязательно
упадут
2. On-call с SMS-ками – всегда минимум два
способа связи при себе.
3. Идеально: редирект на другого on-call человека
при недоступности мобильного телефона.
4. Жизнь on-call людей тяжела – любите и цените
их 
Вместо выводов
1. Просто сделать и запустить – не работает
(человек тоже болеет)
2. Замониторить и больше никогда не упадет – не
работает (диспансеризация – тот же мониторинг)
3. Зарезервировать и не проверять – не работает
(каждый второй – не проверяет, 9 из 10 не
проверяет полноценно)
4. Зарезервировать, замониторить но не
организовать службу поддержки – не работает
(программисты будут смотреть как «все упало» и
не знать что делать)
Евгений Потапов
http://itsumma.ru
eapotapov@itsumma.ru
http://facebook.com/eapotapov

More Related Content

What's hot

Monitoring driven эксплуатация / Николай Сивко (HeadHunter)
Monitoring driven эксплуатация / Николай Сивко (HeadHunter)Monitoring driven эксплуатация / Николай Сивко (HeadHunter)
Monitoring driven эксплуатация / Николай Сивко (HeadHunter)Ontico
 
Масштабирование баз данных. (Database Scalability)
Масштабирование баз данных. (Database Scalability)Масштабирование баз данных. (Database Scalability)
Масштабирование баз данных. (Database Scalability)Andrew Avdeev
 
Горизонтальное масштабирование: что, зачем, когда и как /Александр Макаров (Y...
Горизонтальное масштабирование: что, зачем, когда и как /Александр Макаров (Y...Горизонтальное масштабирование: что, зачем, когда и как /Александр Макаров (Y...
Горизонтальное масштабирование: что, зачем, когда и как /Александр Макаров (Y...Ontico
 
Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...
Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...
Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...Ontico
 
Пишем свою платформу для управления данными. Это очень просто / Суханов Васил...
Пишем свою платформу для управления данными. Это очень просто / Суханов Васил...Пишем свою платформу для управления данными. Это очень просто / Суханов Васил...
Пишем свою платформу для управления данными. Это очень просто / Суханов Васил...Ontico
 
Чему мы научились разрабатывая микросервисы?
Чему мы научились разрабатывая микросервисы?Чему мы научились разрабатывая микросервисы?
Чему мы научились разрабатывая микросервисы?Vadim Madison
 
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...Ontico
 
Защита данных и датацентров от катастроф. Подход Nutanix / Максим Шапошников ...
Защита данных и датацентров от катастроф. Подход Nutanix / Максим Шапошников ...Защита данных и датацентров от катастроф. Подход Nutanix / Максим Шапошников ...
Защита данных и датацентров от катастроф. Подход Nutanix / Максим Шапошников ...Ontico
 
Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...
Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...
Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...Ontico
 
обзор архитектуры и подсистем деплоя и мониторинга
обзор архитектуры и подсистем деплоя и мониторингаобзор архитектуры и подсистем деплоя и мониторинга
обзор архитектуры и подсистем деплоя и мониторингаКонстантин Никифоров
 
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)Ontico
 
Системный администратор Vkontakte. Как? / Антон Кирюшкин (Vkontakte)
Системный администратор Vkontakte. Как? / Антон Кирюшкин (Vkontakte)Системный администратор Vkontakte. Как? / Антон Кирюшкин (Vkontakte)
Системный администратор Vkontakte. Как? / Антон Кирюшкин (Vkontakte)Ontico
 
Автоматизация тестирования клиентской производительности / Николай Лавлинский...
Автоматизация тестирования клиентской производительности / Николай Лавлинский...Автоматизация тестирования клиентской производительности / Николай Лавлинский...
Автоматизация тестирования клиентской производительности / Николай Лавлинский...Ontico
 
DPDK в виртуальном коммутаторе Open vSwitch / Александр Джуринский (Selectel)
DPDK в виртуальном коммутаторе Open vSwitch / Александр Джуринский (Selectel)DPDK в виртуальном коммутаторе Open vSwitch / Александр Джуринский (Selectel)
DPDK в виртуальном коммутаторе Open vSwitch / Александр Джуринский (Selectel)Ontico
 
Как считать и анализировать сотни гигабит трафика в секунду, Станислав Николо...
Как считать и анализировать сотни гигабит трафика в секунду, Станислав Николо...Как считать и анализировать сотни гигабит трафика в секунду, Станислав Николо...
Как считать и анализировать сотни гигабит трафика в секунду, Станислав Николо...Ontico
 
Мониторинг веб-проектов real-time мониторинг и аналитика, поиск ошибок и боев...
Мониторинг веб-проектов real-time мониторинг и аналитика, поиск ошибок и боев...Мониторинг веб-проектов real-time мониторинг и аналитика, поиск ошибок и боев...
Мониторинг веб-проектов real-time мониторинг и аналитика, поиск ошибок и боев...Ontico
 
"Кластеры баз данных: делаем сложные вещи просто" Андрей Тихонов (Avito)
"Кластеры баз данных: делаем сложные вещи просто" Андрей Тихонов (Avito)"Кластеры баз данных: делаем сложные вещи просто" Андрей Тихонов (Avito)
"Кластеры баз данных: делаем сложные вещи просто" Андрей Тихонов (Avito)AvitoTech
 
Высокопроизводительная и отказоустойчивая архитектура фронтальных систем / Ма...
Высокопроизводительная и отказоустойчивая архитектура фронтальных систем / Ма...Высокопроизводительная и отказоустойчивая архитектура фронтальных систем / Ма...
Высокопроизводительная и отказоустойчивая архитектура фронтальных систем / Ма...Ontico
 
Путь от монолита на PHP к микросервисам на Scala / Денис Иванов (2GIS)
Путь от монолита на PHP к микросервисам на Scala  / Денис Иванов (2GIS)Путь от монолита на PHP к микросервисам на Scala  / Денис Иванов (2GIS)
Путь от монолита на PHP к микросервисам на Scala / Денис Иванов (2GIS)Ontico
 

What's hot (20)

Monitoring driven эксплуатация / Николай Сивко (HeadHunter)
Monitoring driven эксплуатация / Николай Сивко (HeadHunter)Monitoring driven эксплуатация / Николай Сивко (HeadHunter)
Monitoring driven эксплуатация / Николай Сивко (HeadHunter)
 
Масштабирование баз данных. (Database Scalability)
Масштабирование баз данных. (Database Scalability)Масштабирование баз данных. (Database Scalability)
Масштабирование баз данных. (Database Scalability)
 
Горизонтальное масштабирование: что, зачем, когда и как /Александр Макаров (Y...
Горизонтальное масштабирование: что, зачем, когда и как /Александр Макаров (Y...Горизонтальное масштабирование: что, зачем, когда и как /Александр Макаров (Y...
Горизонтальное масштабирование: что, зачем, когда и как /Александр Макаров (Y...
 
Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...
Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...
Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...
 
Пишем свою платформу для управления данными. Это очень просто / Суханов Васил...
Пишем свою платформу для управления данными. Это очень просто / Суханов Васил...Пишем свою платформу для управления данными. Это очень просто / Суханов Васил...
Пишем свою платформу для управления данными. Это очень просто / Суханов Васил...
 
Чему мы научились разрабатывая микросервисы?
Чему мы научились разрабатывая микросервисы?Чему мы научились разрабатывая микросервисы?
Чему мы научились разрабатывая микросервисы?
 
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
 
RootConf 2015
RootConf 2015RootConf 2015
RootConf 2015
 
Защита данных и датацентров от катастроф. Подход Nutanix / Максим Шапошников ...
Защита данных и датацентров от катастроф. Подход Nutanix / Максим Шапошников ...Защита данных и датацентров от катастроф. Подход Nutanix / Максим Шапошников ...
Защита данных и датацентров от катастроф. Подход Nutanix / Максим Шапошников ...
 
Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...
Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...
Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...
 
обзор архитектуры и подсистем деплоя и мониторинга
обзор архитектуры и подсистем деплоя и мониторингаобзор архитектуры и подсистем деплоя и мониторинга
обзор архитектуры и подсистем деплоя и мониторинга
 
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
 
Системный администратор Vkontakte. Как? / Антон Кирюшкин (Vkontakte)
Системный администратор Vkontakte. Как? / Антон Кирюшкин (Vkontakte)Системный администратор Vkontakte. Как? / Антон Кирюшкин (Vkontakte)
Системный администратор Vkontakte. Как? / Антон Кирюшкин (Vkontakte)
 
Автоматизация тестирования клиентской производительности / Николай Лавлинский...
Автоматизация тестирования клиентской производительности / Николай Лавлинский...Автоматизация тестирования клиентской производительности / Николай Лавлинский...
Автоматизация тестирования клиентской производительности / Николай Лавлинский...
 
DPDK в виртуальном коммутаторе Open vSwitch / Александр Джуринский (Selectel)
DPDK в виртуальном коммутаторе Open vSwitch / Александр Джуринский (Selectel)DPDK в виртуальном коммутаторе Open vSwitch / Александр Джуринский (Selectel)
DPDK в виртуальном коммутаторе Open vSwitch / Александр Джуринский (Selectel)
 
Как считать и анализировать сотни гигабит трафика в секунду, Станислав Николо...
Как считать и анализировать сотни гигабит трафика в секунду, Станислав Николо...Как считать и анализировать сотни гигабит трафика в секунду, Станислав Николо...
Как считать и анализировать сотни гигабит трафика в секунду, Станислав Николо...
 
Мониторинг веб-проектов real-time мониторинг и аналитика, поиск ошибок и боев...
Мониторинг веб-проектов real-time мониторинг и аналитика, поиск ошибок и боев...Мониторинг веб-проектов real-time мониторинг и аналитика, поиск ошибок и боев...
Мониторинг веб-проектов real-time мониторинг и аналитика, поиск ошибок и боев...
 
"Кластеры баз данных: делаем сложные вещи просто" Андрей Тихонов (Avito)
"Кластеры баз данных: делаем сложные вещи просто" Андрей Тихонов (Avito)"Кластеры баз данных: делаем сложные вещи просто" Андрей Тихонов (Avito)
"Кластеры баз данных: делаем сложные вещи просто" Андрей Тихонов (Avito)
 
Высокопроизводительная и отказоустойчивая архитектура фронтальных систем / Ма...
Высокопроизводительная и отказоустойчивая архитектура фронтальных систем / Ма...Высокопроизводительная и отказоустойчивая архитектура фронтальных систем / Ма...
Высокопроизводительная и отказоустойчивая архитектура фронтальных систем / Ма...
 
Путь от монолита на PHP к микросервисам на Scala / Денис Иванов (2GIS)
Путь от монолита на PHP к микросервисам на Scala  / Денис Иванов (2GIS)Путь от монолита на PHP к микросервисам на Scala  / Денис Иванов (2GIS)
Путь от монолита на PHP к микросервисам на Scala / Денис Иванов (2GIS)
 

Viewers also liked

Как устроена MySQL-репликация / Андрей Аксенов (Sphinx)
Как устроена MySQL-репликация / Андрей Аксенов (Sphinx)Как устроена MySQL-репликация / Андрей Аксенов (Sphinx)
Как устроена MySQL-репликация / Андрей Аксенов (Sphinx)Ontico
 
С чего начать внедрение Hadoop в компании / Алексей Еремихин (Badoo)
С чего начать внедрение Hadoop в компании / Алексей Еремихин (Badoo)С чего начать внедрение Hadoop в компании / Алексей Еремихин (Badoo)
С чего начать внедрение Hadoop в компании / Алексей Еремихин (Badoo)Ontico
 
Как устроен поиск / Андрей Аксенов (Sphinx)
Как устроен поиск / Андрей Аксенов (Sphinx)Как устроен поиск / Андрей Аксенов (Sphinx)
Как устроен поиск / Андрей Аксенов (Sphinx)Ontico
 
Основы индексирования и расширенные возможности EXPLAIN в MySQL / Василий Лук...
Основы индексирования и расширенные возможности EXPLAIN в MySQL / Василий Лук...Основы индексирования и расширенные возможности EXPLAIN в MySQL / Василий Лук...
Основы индексирования и расширенные возможности EXPLAIN в MySQL / Василий Лук...Ontico
 
Кэширование данных в web приложениях. Использование memcached / Юрий Красноще...
Кэширование данных в web приложениях. Использование memcached / Юрий Красноще...Кэширование данных в web приложениях. Использование memcached / Юрий Красноще...
Кэширование данных в web приложениях. Использование memcached / Юрий Красноще...Ontico
 
Как понять, что происходит на сервере? / Александр Крижановский (NatSys Lab.,...
Как понять, что происходит на сервере? / Александр Крижановский (NatSys Lab.,...Как понять, что происходит на сервере? / Александр Крижановский (NatSys Lab.,...
Как понять, что происходит на сервере? / Александр Крижановский (NatSys Lab.,...Ontico
 
Современная операционная система: что надо знать разработчику / Александр Кри...
Современная операционная система: что надо знать разработчику / Александр Кри...Современная операционная система: что надо знать разработчику / Александр Кри...
Современная операционная система: что надо знать разработчику / Александр Кри...Ontico
 
Осваиваем Tarantool 1.6 / Евгений Шадрин (Sberbank Digital Ventures)
Осваиваем Tarantool 1.6 / Евгений Шадрин (Sberbank Digital Ventures)Осваиваем Tarantool 1.6 / Евгений Шадрин (Sberbank Digital Ventures)
Осваиваем Tarantool 1.6 / Евгений Шадрин (Sberbank Digital Ventures)Ontico
 
Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подо...
Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подо...Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подо...
Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подо...Ontico
 
NoSQL - коротко о главном / Сергей Туленцев (TextMaster)
NoSQL - коротко о главном / Сергей Туленцев (TextMaster)NoSQL - коротко о главном / Сергей Туленцев (TextMaster)
NoSQL - коротко о главном / Сергей Туленцев (TextMaster)Ontico
 
Какие бывают провайдеры услуг дата-центров и как выбрать оптимальный? / Игорь...
Какие бывают провайдеры услуг дата-центров и как выбрать оптимальный? / Игорь...Какие бывают провайдеры услуг дата-центров и как выбрать оптимальный? / Игорь...
Какие бывают провайдеры услуг дата-центров и как выбрать оптимальный? / Игорь...Ontico
 
Принципы и приёмы обработки очередей / Константин Осипов (Mail.ru)
Принципы и приёмы обработки очередей / Константин Осипов (Mail.ru)Принципы и приёмы обработки очередей / Константин Осипов (Mail.ru)
Принципы и приёмы обработки очередей / Константин Осипов (Mail.ru)Ontico
 
Производительность запросов в PostgreSQL - шаг за шагом / Илья Космодемьянски...
Производительность запросов в PostgreSQL - шаг за шагом / Илья Космодемьянски...Производительность запросов в PostgreSQL - шаг за шагом / Илья Космодемьянски...
Производительность запросов в PostgreSQL - шаг за шагом / Илья Космодемьянски...Ontico
 
Эволюция процесса деплоя в проекте / Денис Яковлев (2ГИС)
Эволюция процесса деплоя в проекте / Денис Яковлев (2ГИС)Эволюция процесса деплоя в проекте / Денис Яковлев (2ГИС)
Эволюция процесса деплоя в проекте / Денис Яковлев (2ГИС)Ontico
 

Viewers also liked (14)

Как устроена MySQL-репликация / Андрей Аксенов (Sphinx)
Как устроена MySQL-репликация / Андрей Аксенов (Sphinx)Как устроена MySQL-репликация / Андрей Аксенов (Sphinx)
Как устроена MySQL-репликация / Андрей Аксенов (Sphinx)
 
С чего начать внедрение Hadoop в компании / Алексей Еремихин (Badoo)
С чего начать внедрение Hadoop в компании / Алексей Еремихин (Badoo)С чего начать внедрение Hadoop в компании / Алексей Еремихин (Badoo)
С чего начать внедрение Hadoop в компании / Алексей Еремихин (Badoo)
 
Как устроен поиск / Андрей Аксенов (Sphinx)
Как устроен поиск / Андрей Аксенов (Sphinx)Как устроен поиск / Андрей Аксенов (Sphinx)
Как устроен поиск / Андрей Аксенов (Sphinx)
 
Основы индексирования и расширенные возможности EXPLAIN в MySQL / Василий Лук...
Основы индексирования и расширенные возможности EXPLAIN в MySQL / Василий Лук...Основы индексирования и расширенные возможности EXPLAIN в MySQL / Василий Лук...
Основы индексирования и расширенные возможности EXPLAIN в MySQL / Василий Лук...
 
Кэширование данных в web приложениях. Использование memcached / Юрий Красноще...
Кэширование данных в web приложениях. Использование memcached / Юрий Красноще...Кэширование данных в web приложениях. Использование memcached / Юрий Красноще...
Кэширование данных в web приложениях. Использование memcached / Юрий Красноще...
 
Как понять, что происходит на сервере? / Александр Крижановский (NatSys Lab.,...
Как понять, что происходит на сервере? / Александр Крижановский (NatSys Lab.,...Как понять, что происходит на сервере? / Александр Крижановский (NatSys Lab.,...
Как понять, что происходит на сервере? / Александр Крижановский (NatSys Lab.,...
 
Современная операционная система: что надо знать разработчику / Александр Кри...
Современная операционная система: что надо знать разработчику / Александр Кри...Современная операционная система: что надо знать разработчику / Александр Кри...
Современная операционная система: что надо знать разработчику / Александр Кри...
 
Осваиваем Tarantool 1.6 / Евгений Шадрин (Sberbank Digital Ventures)
Осваиваем Tarantool 1.6 / Евгений Шадрин (Sberbank Digital Ventures)Осваиваем Tarantool 1.6 / Евгений Шадрин (Sberbank Digital Ventures)
Осваиваем Tarantool 1.6 / Евгений Шадрин (Sberbank Digital Ventures)
 
Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подо...
Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подо...Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подо...
Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подо...
 
NoSQL - коротко о главном / Сергей Туленцев (TextMaster)
NoSQL - коротко о главном / Сергей Туленцев (TextMaster)NoSQL - коротко о главном / Сергей Туленцев (TextMaster)
NoSQL - коротко о главном / Сергей Туленцев (TextMaster)
 
Какие бывают провайдеры услуг дата-центров и как выбрать оптимальный? / Игорь...
Какие бывают провайдеры услуг дата-центров и как выбрать оптимальный? / Игорь...Какие бывают провайдеры услуг дата-центров и как выбрать оптимальный? / Игорь...
Какие бывают провайдеры услуг дата-центров и как выбрать оптимальный? / Игорь...
 
Принципы и приёмы обработки очередей / Константин Осипов (Mail.ru)
Принципы и приёмы обработки очередей / Константин Осипов (Mail.ru)Принципы и приёмы обработки очередей / Константин Осипов (Mail.ru)
Принципы и приёмы обработки очередей / Константин Осипов (Mail.ru)
 
Производительность запросов в PostgreSQL - шаг за шагом / Илья Космодемьянски...
Производительность запросов в PostgreSQL - шаг за шагом / Илья Космодемьянски...Производительность запросов в PostgreSQL - шаг за шагом / Илья Космодемьянски...
Производительность запросов в PostgreSQL - шаг за шагом / Илья Космодемьянски...
 
Эволюция процесса деплоя в проекте / Денис Яковлев (2ГИС)
Эволюция процесса деплоя в проекте / Денис Яковлев (2ГИС)Эволюция процесса деплоя в проекте / Денис Яковлев (2ГИС)
Эволюция процесса деплоя в проекте / Денис Яковлев (2ГИС)
 

Similar to Поддержка высоконагруженного проекта: мониторинг, резервирование, обслуживание / Евгений Потапов (ITSumma)

Доклад "Мониторинг серверных приложений"
Доклад "Мониторинг серверных приложений"Доклад "Мониторинг серверных приложений"
Доклад "Мониторинг серверных приложений"Grigoriy Orlov
 
CloudsNN 2014. Демидов Александр. Заоблачная безопасность: как обойти чужие г...
CloudsNN 2014. Демидов Александр. Заоблачная безопасность: как обойти чужие г...CloudsNN 2014. Демидов Александр. Заоблачная безопасность: как обойти чужие г...
CloudsNN 2014. Демидов Александр. Заоблачная безопасность: как обойти чужие г...Clouds NN
 
дерюшкин Agile vector
дерюшкин   Agile vectorдерюшкин   Agile vector
дерюшкин Agile vectorMagneta AI
 
Agile Vector - внедрение agile разработки в Райффайзенбанке
Agile Vector - внедрение agile разработки в РайффайзенбанкеAgile Vector - внедрение agile разработки в Райффайзенбанке
Agile Vector - внедрение agile разработки в РайффайзенбанкеAlexey Deryushkin
 
Monitoring-driven эксплуатация (rootconf2015)
Monitoring-driven эксплуатация (rootconf2015)Monitoring-driven эксплуатация (rootconf2015)
Monitoring-driven эксплуатация (rootconf2015)Nikolay Sivko
 
развертывание среды Rails (антон веснин, Locum Ru)
развертывание среды Rails (антон веснин, Locum Ru)развертывание среды Rails (антон веснин, Locum Ru)
развертывание среды Rails (антон веснин, Locum Ru)guest40e031
 
антон веснин Rails Application Servers
антон веснин Rails Application Serversантон веснин Rails Application Servers
антон веснин Rails Application Serversrit2010
 
PostgreSQL - Ups, DevOps..., Алексей Лесовский (PostgreSQL-Consulting)
PostgreSQL - Ups, DevOps..., Алексей Лесовский (PostgreSQL-Consulting)PostgreSQL - Ups, DevOps..., Алексей Лесовский (PostgreSQL-Consulting)
PostgreSQL - Ups, DevOps..., Алексей Лесовский (PostgreSQL-Consulting)Ontico
 
Резервное копирование и оптимизация хранения данных
Резервное копирование и оптимизация хранения данныхРезервное копирование и оптимизация хранения данных
Резервное копирование и оптимизация хранения данныхAndrey Karpov
 
евгений потапов Root Conf потапов
евгений потапов Root Conf   потаповевгений потапов Root Conf   потапов
евгений потапов Root Conf потаповrit2010
 
Evgeniy Potapov Root Conf потапов
Evgeniy Potapov Root Conf   потаповEvgeniy Potapov Root Conf   потапов
Evgeniy Potapov Root Conf потаповrit2010
 
владивосток форум производительность_ha
владивосток форум производительность_haвладивосток форум производительность_ha
владивосток форум производительность_haElena Ometova
 
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центрМониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центрsportgid
 
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUAREТехники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARESQALab
 
м.токовинин компромиссная производительность
м.токовинин   компромиссная производительностьм.токовинин   компромиссная производительность
м.токовинин компромиссная производительностьHighLoad2009
 
Fujitsu + Symantec: проверенные решения для уверенной работы
Fujitsu + Symantec: проверенные решения для уверенной работыFujitsu + Symantec: проверенные решения для уверенной работы
Fujitsu + Symantec: проверенные решения для уверенной работыFujitsu Russia
 
HPE adaptive backup and recovery
HPE adaptive backup and recoveryHPE adaptive backup and recovery
HPE adaptive backup and recoveryAnatoliy Arkhipov
 
Дмитрий Куликовский, Алексей Лавренюк - Построение кластеров, нагрузочное тес...
Дмитрий Куликовский, Алексей Лавренюк - Построение кластеров, нагрузочное тес...Дмитрий Куликовский, Алексей Лавренюк - Построение кластеров, нагрузочное тес...
Дмитрий Куликовский, Алексей Лавренюк - Построение кластеров, нагрузочное тес...Yandex
 
Дмитрий Куликовский - Построение кластеров, нагрузочное тестирование, capacit...
Дмитрий Куликовский - Построение кластеров, нагрузочное тестирование, capacit...Дмитрий Куликовский - Построение кластеров, нагрузочное тестирование, capacit...
Дмитрий Куликовский - Построение кластеров, нагрузочное тестирование, capacit...Yandex
 
RuSIEM. Потребители. Состав продукта. Отличия. Применение.
RuSIEM. Потребители. Состав продукта. Отличия. Применение.RuSIEM. Потребители. Состав продукта. Отличия. Применение.
RuSIEM. Потребители. Состав продукта. Отличия. Применение.Olesya Shelestova
 

Similar to Поддержка высоконагруженного проекта: мониторинг, резервирование, обслуживание / Евгений Потапов (ITSumma) (20)

Доклад "Мониторинг серверных приложений"
Доклад "Мониторинг серверных приложений"Доклад "Мониторинг серверных приложений"
Доклад "Мониторинг серверных приложений"
 
CloudsNN 2014. Демидов Александр. Заоблачная безопасность: как обойти чужие г...
CloudsNN 2014. Демидов Александр. Заоблачная безопасность: как обойти чужие г...CloudsNN 2014. Демидов Александр. Заоблачная безопасность: как обойти чужие г...
CloudsNN 2014. Демидов Александр. Заоблачная безопасность: как обойти чужие г...
 
дерюшкин Agile vector
дерюшкин   Agile vectorдерюшкин   Agile vector
дерюшкин Agile vector
 
Agile Vector - внедрение agile разработки в Райффайзенбанке
Agile Vector - внедрение agile разработки в РайффайзенбанкеAgile Vector - внедрение agile разработки в Райффайзенбанке
Agile Vector - внедрение agile разработки в Райффайзенбанке
 
Monitoring-driven эксплуатация (rootconf2015)
Monitoring-driven эксплуатация (rootconf2015)Monitoring-driven эксплуатация (rootconf2015)
Monitoring-driven эксплуатация (rootconf2015)
 
развертывание среды Rails (антон веснин, Locum Ru)
развертывание среды Rails (антон веснин, Locum Ru)развертывание среды Rails (антон веснин, Locum Ru)
развертывание среды Rails (антон веснин, Locum Ru)
 
антон веснин Rails Application Servers
антон веснин Rails Application Serversантон веснин Rails Application Servers
антон веснин Rails Application Servers
 
PostgreSQL - Ups, DevOps..., Алексей Лесовский (PostgreSQL-Consulting)
PostgreSQL - Ups, DevOps..., Алексей Лесовский (PostgreSQL-Consulting)PostgreSQL - Ups, DevOps..., Алексей Лесовский (PostgreSQL-Consulting)
PostgreSQL - Ups, DevOps..., Алексей Лесовский (PostgreSQL-Consulting)
 
Резервное копирование и оптимизация хранения данных
Резервное копирование и оптимизация хранения данныхРезервное копирование и оптимизация хранения данных
Резервное копирование и оптимизация хранения данных
 
евгений потапов Root Conf потапов
евгений потапов Root Conf   потаповевгений потапов Root Conf   потапов
евгений потапов Root Conf потапов
 
Evgeniy Potapov Root Conf потапов
Evgeniy Potapov Root Conf   потаповEvgeniy Potapov Root Conf   потапов
Evgeniy Potapov Root Conf потапов
 
владивосток форум производительность_ha
владивосток форум производительность_haвладивосток форум производительность_ha
владивосток форум производительность_ha
 
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центрМониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
Мониторинг веб-проектов: штаб оперативного реагирования и аналитический центр
 
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUAREТехники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
 
м.токовинин компромиссная производительность
м.токовинин   компромиссная производительностьм.токовинин   компромиссная производительность
м.токовинин компромиссная производительность
 
Fujitsu + Symantec: проверенные решения для уверенной работы
Fujitsu + Symantec: проверенные решения для уверенной работыFujitsu + Symantec: проверенные решения для уверенной работы
Fujitsu + Symantec: проверенные решения для уверенной работы
 
HPE adaptive backup and recovery
HPE adaptive backup and recoveryHPE adaptive backup and recovery
HPE adaptive backup and recovery
 
Дмитрий Куликовский, Алексей Лавренюк - Построение кластеров, нагрузочное тес...
Дмитрий Куликовский, Алексей Лавренюк - Построение кластеров, нагрузочное тес...Дмитрий Куликовский, Алексей Лавренюк - Построение кластеров, нагрузочное тес...
Дмитрий Куликовский, Алексей Лавренюк - Построение кластеров, нагрузочное тес...
 
Дмитрий Куликовский - Построение кластеров, нагрузочное тестирование, capacit...
Дмитрий Куликовский - Построение кластеров, нагрузочное тестирование, capacit...Дмитрий Куликовский - Построение кластеров, нагрузочное тестирование, capacit...
Дмитрий Куликовский - Построение кластеров, нагрузочное тестирование, capacit...
 
RuSIEM. Потребители. Состав продукта. Отличия. Применение.
RuSIEM. Потребители. Состав продукта. Отличия. Применение.RuSIEM. Потребители. Состав продукта. Отличия. Применение.
RuSIEM. Потребители. Состав продукта. Отличия. Применение.
 

More from Ontico

One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...Ontico
 
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Ontico
 
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Ontico
 
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Ontico
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Ontico
 
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)Ontico
 
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Ontico
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Ontico
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)Ontico
 
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)Ontico
 
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Ontico
 
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Ontico
 
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Ontico
 
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Ontico
 
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)Ontico
 
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Ontico
 
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Ontico
 
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...Ontico
 
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Ontico
 
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Ontico
 

More from Ontico (20)

One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
 
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
 
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
 
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
 
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
 
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
 
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
 
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
 
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
 
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
 
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
 
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
 
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
 
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
 
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
 
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
 
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
 

Поддержка высоконагруженного проекта: мониторинг, резервирование, обслуживание / Евгений Потапов (ITSumma)

  • 2. Евгений Потапов генеральный директор компании ITSumma Круглоcуточное удаленное администрирование серверов и техническая поддержка сайтов 100 миллионов уникальных посетителей в сутки Штат – 50 человек Более тысячи серверов на поддержке
  • 4. Содержание • Мониторинг и его специфика в высоконагруженном проекте • Организация резервирования и резервного копирования • Организация обслуживания и поддержки.
  • 5. Цели мониторинга • Мониторинг как система оповещения • Мониторинг как средство анализа • Мониторинг как система принятия решений
  • 6. Мониторинг как система оповещения • Оповещение о проблемах на сервере • Оповещение о проблемах, связанных с логикой приложения • Оповещение о проблемах, связанных с бизнес- показателями
  • 7. Мониторинг как система оповещения Требования к системе оповещения: 1. независимость от самого проекта (если он упадет система должна продолжать работать) 2. максимально быстрое оповещение о достижении критических показателей 3. надежность оповещений о достижении критических показателей
  • 8. Мониторинг как система оповещения Три уровня оповещений: 1. Проблемы на сервере (проблемы на серверном железе/серверном ПО) 2. Проблемы на уровне приложения (производительность подсистем, число обращений к подсистемам) 3. Проблемы на уровне бизнес-логики (метрики бизнеса)
  • 9. Оповещения о проблемах на сервере Проблемы на сервере 1. Статистика по нагрузке на CPU (Оповещения на рост Load Average>числа ядер, CPU idle ниже определенного порога) 2. Статистика по нагрузке на дисковую подсистему (увеличение времени avio, рост дисковых операций iops, рост «busy» диска) 3. Использование оперативной памяти/swap (снижение cached+buffers+free ниже порога, рост использования swap (swap in / swap out)
  • 10. Оповещения о проблемах на сервере 4. Статистика по серверному софту (падение / всплески числа запросов на веб- сервер, статистика сервера БД, итд) 5. Внешний мониторинг ответа сервисов (время ответа страниц, код ответа страниц, размер ответа страниц, ошибки рендеринга в CasperJS, время рендеринга)
  • 11. Оповещения о проблемах на сервере Проблемы на уровне приложения 1. Число ошибок уровня приложения (Рост числа ошибок больше заданного, рост/падение числа событий в целом) 2. Число обращений к подсистемам/ «узлам» приложения (Рост/падение таких обращение) 3. Время взаимодействия приложения с внешними сервисами (рост времени запроса к внешним сервисам, корректность ответов внешних сервисов на уровне приложения)
  • 12. Оповещения о проблемах на сервере Проблемы на уровне бизнес-логики 1. Бизнес данные на «последней миле» технологического стека (Bablo per minute, время с последних действий пользователей, падение числа пользователей) 2. Эмуляция пользовательской логики приложения (оповещения не невозможность выполнить пользовательские действия, оповещения на увеличение времени ответа пользовательских действий)
  • 13. Оповещения о проблемах на сервере 4. Статистика по серверному софту (падение / всплески числа запросов на веб- сервер, статистика сервера БД, итд) 5. Внешний мониторинг ответа сервисов (время ответа страниц, код ответа страниц, размер ответа страниц, ошибки рендеринга в CasperJS, время рендеринга)
  • 14. Оповещения о проблемах на сервере Устанавливать оповещения следует не на фатальные состояния (не осталось места на диске, CPU загружен на 95%), а на «контрольные точки» проекта. 1. На запуске – проект не загружен. После первоначального «шторма», рост будет плавный. 2. Ключевая метрика роста/проблем - достижение контрольных точек (исчерпали 25% ресурсов, исчерпали 50% ресурсов итд). 3. В сложных решениях нужно иметь запас времени для действий связанных с оптимизацией или масштабированием.
  • 15. Мониторинг как система анализа Цель – понять причину происходящих проблем Требования: 1. возможность хранить максимально возможное количество данных в максимально возможной детализации 2. возможность быстро выбрать эти данные за нужный период 3. возможность быстро отобразить выбранные данные и детально их изучить
  • 16. Мониторинг как система анализа Необходимая функциональность: 1. Сравнение однотипных данных по разным серверам (на каком сервере происходят отклонения от нормы) 2. Сравнение текущих данных с историческими данными (день назад, неделя назад, месяц назад) (насколько текущие показатели отклоняются от нормы) 3. Быстрая выборка большого диапазона исторических данных (изменение данных в
  • 17. Мониторинг как система анализа Дополнительно: Сложная агрегация метрик (скользящая средняя, перцентиль, группировка по минимуму, максимум итд).
  • 18. Мониторинг как система принятия решений Организационный подход: 1. Данные в мониторинге следует использовать не только для анализа причин текущих аварий, но и для понимания что делать дальше 2. Регулярный обзор всех ключевых метрик с целью анализа новых «контрольных точек» («через 6 месяцев мы съедим половину ресурсов») 3. Данные в мониторинге, как средство избежать повторяющихся ошибок
  • 19. Мониторинг Доступные решения: 1. Новый проект на старте: SaaS (Serverdensity, NewRelic, DataDog) 2. Сложный сбор данных, развитие семейство Graphite 3. Извращение и много ресурсов: свои системы
  • 20. Резервное копирование Ключевые проблемы: 1. Процесс снятия резервной копии (нагрузка на сервер) 2. Регулярность снятия резервной копии (объем данных, время, необходимое на резервирование) 3. Время восстановления из резервной копии
  • 21. Резервное копирование Процесс снятия резервной копии: 1. Сам по себе процесс снятия резервной копии – тяжелая процедура 2. Резервные копии - создавать с резервных машин 3. Понимание того, что нужно резервировать: UGC – база легкая, а статика может весить гигабайты. База без картинок людям не нужна. 4. Бэкап без регулярной процедуры восстановления – не бэкап.
  • 22. Резервное копирование Резервные копии - БД: 1. Slave-сервер, как резервная копия на случай аварии (защита от аварий с железом но не от человеческого фактора) 2. Slave-сервер с искусственной задержкой, как резервная копия на случай человеческого фактора 3. Hot-backup-службы – для регулярного внешнего резервного копирования.
  • 23. Резервное копирование Резервные копии – БД – хранение: 1. Минимум одна копия – в пределах внутреннего канала площадки (оперативное восстановление при повреждении данных) 2. Минимум одна копия – на внешней площадке (восстановление при глобальной аварии).
  • 24. Резервное копирование Резервная копия - контент: 1. Снэпшоты/Rsync (при небольшом количестве изменяемых данных в пределах интервала резервного копирования). 2. Дублирование статики на резервный сервер непосредственно сервером.
  • 25. Резервное копирование Резервная копия - конфигурация: 1. Конфиги надо бэкапить! 
  • 26. Резервное копирование Резервные копии – процедуры Регулярная регламентированная процедура восстановления проекта из резервной копии Ключевые показатели: 1. Оценка времени, занятого на восстановление из резервной копии 2. Оценка «отката во времени» на проекте, после восстановление из резервной копии 3. Оценка целостности восстановленной резервной копии
  • 27. Резервирование Ключевые вопросы: 1. Выбор площадки для резервирования 2. Мощности для резервирования и бюджеты 3. Процедуры переключения на резерв
  • 28. Резервирование Выбор площадки для резервирования 1. Резервная площадка не должна быть связана с текущим датацентром (часто видим резервные сервера в той же стойке даже на крупных проектах) 2. Существует риск того, что резервная площадка после переключения останется основной надолго – она не должна быть слишком плохой по качеству или слишком дорогой по стоимости.
  • 29. Резервирование Мощности для резервирования На запуске проекта – простаивающие мощности – лишние затраты. 1. Проект можно разделить на два ДЦ, и переходить на один в случае аварии (тогда возможны тормоза) 2. Гибридное облако – резерв находится в минимальной конфигурации в облаках, достаточной только для того чтобы принимать репликацию. В случае аварии – масштабирование и переключение.
  • 30. Резервирование Резервирование – процедуры Регулярная регламентированная процедура переключения на резерв (все ненавидят) 1. Оценка времени, занятого на переключение 2. Оценка целостности данных после переключения на резерв 3. Очень не любит бизнес – риск простоя (но еще больший риск – если не делать)
  • 31. Резервирование и резервное копирование 1. Slave – это не бэкап 2. Бэкап в том же ДЦ – это не бэкап 3. Резерв в том же ДЦ – это не резерв 4. Бэкап, который не восстанавливали – это не бэкап 5. Бэкап без статики – это не бэкап 6. Если не хватает места – это не отмазка 7. Резерв без переключения – это почти не резерв 8. «Я решу про бэкап на днях» – первый (из двух) шагов к потерянным данным.
  • 32. Поддержка Все это – не работает без команды 1. Понимание внутренностей продукта, способность локализовать проблему 2. Вовлеченность в команду (ночные алерты - это боль) 3. Стрессоустойчивость (ночные алерты – это боль) 4. Чаще всего – на старте – разработчики с задатками админа. 5. Должны быть экстраверты (по крайней мере – те кто будут объяснять бизнесу что случилось)
  • 33. Поддержка Все это – не работает без организации 1. Исправленная авария, шаги по исправлению которой не документированы - не исправлена 2. Любой инцидент без алертов может случится один раз. Это должен быть единственный раз. 3. Любые повторяющиеся процедуры, повторяющиеся алерты должны быть описаны 4. Минимум бюрократии на этапе борьбы с аварией, формализация – на этапе postmortem-а.
  • 34. Поддержка Режим работы 1. Старт – SMS-ки ключевым людям, телефонные звонки 2. Дежурства: двое через двое по 12 часов – отсутствует жизнь. 3. Категорически не должно быть одного человека на sms-ках. Минимум двое (лучше трое) 4. У каждого из людей on-call должно быть минимум 3 телефона критических людей для оповещения
  • 35. Поддержка Дополнительные метрики 1. Alerts per hour – для общего понимания увеличения беды. 2. Время проведенное на серверах (рост времени – рост проблем). 3. Запись SSH-сессий как способ просто восстановить сделанные во время аварий операции. 4. У каждого из людей on-call должно быть минимум 3 телефона критических людей для оповещения
  • 36. Поддержка Еще про работу 1. Bus factor – если несколько ключевых людей летят на одном рейсе – серверы обязательно упадут 2. On-call с SMS-ками – всегда минимум два способа связи при себе. 3. Идеально: редирект на другого on-call человека при недоступности мобильного телефона. 4. Жизнь on-call людей тяжела – любите и цените их 
  • 37. Вместо выводов 1. Просто сделать и запустить – не работает (человек тоже болеет) 2. Замониторить и больше никогда не упадет – не работает (диспансеризация – тот же мониторинг) 3. Зарезервировать и не проверять – не работает (каждый второй – не проверяет, 9 из 10 не проверяет полноценно) 4. Зарезервировать, замониторить но не организовать службу поддержки – не работает (программисты будут смотреть как «все упало» и не знать что делать)