SlideShare a Scribd company logo
Тестирование
аварий
Андрей Губа
О себе
•  В IT 15 лет
•  В Одноклассниках с 2008 года
•  Системный администратор
–  Руководитель отдела
–  Deputy CTO
•  Системное Администрирование
API, Платформа
Информационная безопасность
Одноклассники в цифрах
0	
  
10	
  
20	
  
30	
  
40	
  
50	
  
2010	
   2011	
   2012	
   2013	
   2014	
   2015	
  
Уники, млн/сут
Одноклассники в цифрах
0	
  
1000	
  
2000	
  
3000	
  
4000	
  
5000	
  
6000	
  
7000	
  
8000	
  
2010	
   2011	
   2012	
   2013	
   2014	
   2015	
  
Серверов
Одноклассники в цифрах
0	
  
200	
  
400	
  
600	
  
800	
  
1000	
  
1200	
  
2010	
   2011	
   2012	
   2013	
   2014	
   2015	
  
Трафик, Гбит/cек
Авария в WEB проекте
Умер web сервер
Отказала «главная база»
Пропало электричество во втором ДЦ
Пропала сеть в основном ДЦ
jabber сервера с нами больше нет
Главный админ вне досягаемости
Пятница, вечер
Тестирование аварий. Андрей Губа. Highload++ 2015
Авария 04.04.2013
h p://habrahabr.ru/p/268413/
Инциденты с эффектом для
пользователей
2010	
   2011	
   2012	
   2013	
   2014	
   2015	
  
Инциденты/месяц	
   Уники/день	
  
45	
  млн	
  
13	
  млн	
  
16	
  
84	
  
Оперативный мониторинг
Железо и инфраструктура
Приложения
Активность пользователей
Оперативный мониторинг.
Проблемы
Новое оборудование
Новая операционная система
Много информации!
Сложно!
Оперативный мониторинг
Решение
Семафоры
Тестирование аварий. Андрей Губа. Highload++ 2015
Smart Monitoring
Обнаруживает аномалии на графиках
Показывает причинно-следственную
связь между найденными аномалиями
Создает и оформляет тикеты
Тестирование аварий. Андрей Губа. Highload++ 2015
Графики использования
ресурсов
Всё продакшн оборудование
Автоматически
Диски, память, трафик …
Java heap, GC …
2.7 млн метрик
ПОПП — Проверка операционных
показателей и прогнозирование
Резервирование
Диски в райд массиве
Резервный интернет канал
Реплика базы данных
Множество серверов одного типа в
кластере.
Резервирование
MS SQL, HP
Быстро реагируем –> Не всегда помогает
Резервирование
Надежное железо тоже отказывает
1 сервер = раз в 3 года
200 серверов = раз в неделю
2000 серверов > раз в день
Приложения должны обрабатывать
аварийные ситуации:
Отказ
Замедление
Возвращение в работу
Старт без связанных сервисов
Резервирование
Управляемая деградация
Отключение сервиса
Горилла и Годзилла
Тестирование аварийных сценариев в
приложениях, сервисах … ДЦ
Резервирование
Все данные должны иметь копии в
разных дата-центрах
Все данные должны иметь копии в
разных дата-центрах
Все данные должны иметь копии в
разных дата-центрах
Все данные должны иметь копии в
разных дата-центрах
Проект должен работать в случае
отказа любого дата-центра!
Резервирование. Сложности
Приложения не готовы.
Нужно переписать код.
Приложений много!
Нет готовых технических решений.
Нужно внедрять!
Не хватает людей
Рабочие инструменты
Доступ
Рабочие инструменты
Аварийный доступ
Тестирование аварий. Андрей Губа. Highload++ 2015
Рабочие инструменты
Системы управления
Надежность
Системы мониторинга
Надежность
Точность
Документация
Описание сервиса
Схема
Настройка
Решение типичных проблем
Achtung!
План действий при аварии
Чеклист для команды мониторинга:
Оповещение дежурного
Сообщение в рабочие чаты
Создание аварийного чата
Способы оповещения
Мобилизация нужных команд
Оповещение:
руководителей, менеджеров,
партнеров
План действий при аварии
Распределение ролей и ответственности:
Оценка масштаба
Координатор
Составление оперативного плана
Предоставление доступов
Координация работ в отдельном ДЦ
Перенятие ролей
Разбор аварии
План действий при аварии
Чеклист по восстановлению сервисов:
Приоритезированный список
Ссылки на инструкции и инструменты
Как проверять
Что делать, если что-то пошло не так
Тестирование
План действий при аварии
Отдельная инструкция для человека,
выполняющего роль координатора:
Распределять задачи
Контролировать
Делегировать
Обновлять оперативный план
Информировать
План действий при аварии
Отдельная инструкция на случай падения
дата-центра:
Вывод трафика
Ввод трафика
Контроль
План действий при аварии
Регламент взаимодействия с партнёрами:
Список контактов
Способы коммуникации
Уровни взаимодействия:
Информационный
Мобилизационный
Рабочая группа
Распределение ролей
Тестирование плана
Раз в квартал
Разный координатор
Сценарий
Коллеги из других команд
Фиксирование проблем
Задачи на исправление
Тестирование аварий. Андрей Губа. Highload++ 2015
Сами аварии – это тоже
тестирование!
Регистрируем
Время (начало, завершение)
Скорость оповещения
Эффект
Хронология
Суть проблемы
Обновляем в процессе
Результаты разбора
Задачи на исправление
Тестирование аварий. Андрей Губа. Highload++ 2015
Коротко о главном
Мониторинг
Резервирование
Рабочие инструменты
План действий при аварии
Тестирование аварий
Спасибо за внимание!
h p://habrahabr.ru/company/odnoklassniki/blog/
andrey.guba@ok.ru

More Related Content

PDF
Распределенные системы в Одноклассниках / Олег Анастасьев (Одноклассники)
PDF
Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...
PDF
Ангелы и демоны многопоточного программирования / Алексей Федоров (Одноклассн...
PDF
So Your WAF Needs a Parser
PPTX
Тестирование Нейронных сетей
PDF
"Тестирование распределенных систем" Сатарин Андрей, Яндекс
PDF
Распределенные системы в Одноклассниках
PDF
ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)
Распределенные системы в Одноклассниках / Олег Анастасьев (Одноклассники)
Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...
Ангелы и демоны многопоточного программирования / Алексей Федоров (Одноклассн...
So Your WAF Needs a Parser
Тестирование Нейронных сетей
"Тестирование распределенных систем" Сатарин Андрей, Яндекс
Распределенные системы в Одноклассниках
ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)

What's hot (20)

PDF
Database First! О распространённых ошибках использования РСУБД
PDF
Функциональное тестирование высоконагруженных проектов / Илья Пастушков (2ГИС)
PDF
Как начать тестировать безопасность уже сегодня
PPTX
Alexei Sintsov - "Between error and vulerability - one step"
PDF
ZooKeeper Java Cloud
PDF
Zabbix и правильное обнаружение проблем - Алексей Владышев @ RootConf 2015
PPTX
Micro orm для жизни. Кожевников Дмитрий D2D Just.NET
PPTX
Приключения проекта от компьютера разработчика до серьезных нагрузок / Андрей...
PPTX
Ошибки проектирования высоконагруженных проектов / Максим Ехлаков (OneTwoRent)
PDF
Система анализа работы приложений и протоколов Riverbed Cascade
PDF
Java осень 2014 занятие 1
PDF
Фреймворк Akka и его использование в Яндексе
PDF
React со скоростью света: не совсем обычный серверный рендеринг
PPTX
Метапрограммирование с примерами на JavaScript
PDF
Незаурядная Java как инструмент разработки высоконагруженного сервера
PPTX
Node.js введение в технологию, КПИ #ITmeetingKPI
PDF
Technopolis.NoSQL 01
PDF
Лекция 9. ZooKeeper
PDF
Быстрое построение backendов c помощью реактивных потоков
PPS
Check Point. Сергей Чекрыгин. "На один шаг впереди"
Database First! О распространённых ошибках использования РСУБД
Функциональное тестирование высоконагруженных проектов / Илья Пастушков (2ГИС)
Как начать тестировать безопасность уже сегодня
Alexei Sintsov - "Between error and vulerability - one step"
ZooKeeper Java Cloud
Zabbix и правильное обнаружение проблем - Алексей Владышев @ RootConf 2015
Micro orm для жизни. Кожевников Дмитрий D2D Just.NET
Приключения проекта от компьютера разработчика до серьезных нагрузок / Андрей...
Ошибки проектирования высоконагруженных проектов / Максим Ехлаков (OneTwoRent)
Система анализа работы приложений и протоколов Riverbed Cascade
Java осень 2014 занятие 1
Фреймворк Akka и его использование в Яндексе
React со скоростью света: не совсем обычный серверный рендеринг
Метапрограммирование с примерами на JavaScript
Незаурядная Java как инструмент разработки высоконагруженного сервера
Node.js введение в технологию, КПИ #ITmeetingKPI
Technopolis.NoSQL 01
Лекция 9. ZooKeeper
Быстрое построение backendов c помощью реактивных потоков
Check Point. Сергей Чекрыгин. "На один шаг впереди"
Ad

Viewers also liked (16)

PPTX
Тестирование аварий / Андрей Губа (Одноклассники)
PDF
Тюним память и сетевой стек в Linux: история перевода высоконагруженных серве...
PPTX
тестирование распределенных систем
PPTX
Кадры решают все, или стриминг видео, Александр Тоболь (Одноклассники)
PDF
Distributed systems at ok.ru #rigadevday
PPTX
Как построить видеоплатформу на 200 Гбитс / Ольховченков Вячеслав (Integros)
PPTX
Инструменты высоконагруженных проектов - кэширование и очереди, Вячеслав Моск...
PPTX
Движок LMDB — особенный чемпион / Юрьев Леонид (Петер-Сервис R&D)
PDF
NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)
PDF
Как не положить тысячи серверов с помощью системы централизованного управлени...
PPTX
101 способ приготовления RabbitMQ и немного о pipeline архитектуре / Филонов ...
PDF
Балансировка нагрузки и отказоустойчивость в Одноклассниках
PPTX
Anomaly Detection - New York Machine Learning
PPTX
Artisto: опыт запуска нейросетей в production / Эдуард Тянтов (Mail.ru Group)
PDF
Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...
PDF
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
Тестирование аварий / Андрей Губа (Одноклассники)
Тюним память и сетевой стек в Linux: история перевода высоконагруженных серве...
тестирование распределенных систем
Кадры решают все, или стриминг видео, Александр Тоболь (Одноклассники)
Distributed systems at ok.ru #rigadevday
Как построить видеоплатформу на 200 Гбитс / Ольховченков Вячеслав (Integros)
Инструменты высоконагруженных проектов - кэширование и очереди, Вячеслав Моск...
Движок LMDB — особенный чемпион / Юрьев Леонид (Петер-Сервис R&D)
NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)
Как не положить тысячи серверов с помощью системы централизованного управлени...
101 способ приготовления RabbitMQ и немного о pipeline архитектуре / Филонов ...
Балансировка нагрузки и отказоустойчивость в Одноклассниках
Anomaly Detection - New York Machine Learning
Artisto: опыт запуска нейросетей в production / Эдуард Тянтов (Mail.ru Group)
Sphinx 3.0 и RT-индексы на основном поиске Avito / Андрей Смирнов, Вячеслав К...
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
Ad

Similar to Тестирование аварий. Андрей Губа. Highload++ 2015 (20)

PPT
HappyDev-lite-2016-весна 12 Николай Морозов. Особенности нагрузочного тестир...
PPTX
Анализ ИБ и расследование инцидентов ИБ (учебный семинар)
PPTX
Семинар ИБ ФНС-2013
PDF
владивосток форум производительность_ha
PDF
Обеспечение и контроль качества услуг
PDF
Вебинар: MaxPatrol + MaxPatrol SIEM - что нужно знать об оценке состояния и у...
PPT
DS Activity Monitor
PPTX
Практические шаги создания системы резервного копирования
PDF
Клиентские приложения под нагрузкой, Андрей Смирнов
PDF
Клиентские приложения под нагрузкой (HighLoad 2014)
PPTX
Миграция JIRA - безобразие или безрассудство
PDF
Global Trust Solutions. Александр Астахов. "Как рассчитать эффективность DLP...
PDF
ARinteg: Защита сетевого периметра
PPT
Oblachnye vychisleniya -_ponyatiya_i_tehnologii
PPTX
CloudsNN 2014. Андрей Бешков. Защита ваших данных в Office 365.
PDF
Operational Analytics on Splunk
PDF
Введение в performance management
PDF
РИФ 2016, Заоблачная безопасность: как обойти чужие грабли
PDF
Доклад "Мониторинг серверных приложений"
PPTX
«Облака» под контролем: как эффективно оценить производительность облачных т...
HappyDev-lite-2016-весна 12 Николай Морозов. Особенности нагрузочного тестир...
Анализ ИБ и расследование инцидентов ИБ (учебный семинар)
Семинар ИБ ФНС-2013
владивосток форум производительность_ha
Обеспечение и контроль качества услуг
Вебинар: MaxPatrol + MaxPatrol SIEM - что нужно знать об оценке состояния и у...
DS Activity Monitor
Практические шаги создания системы резервного копирования
Клиентские приложения под нагрузкой, Андрей Смирнов
Клиентские приложения под нагрузкой (HighLoad 2014)
Миграция JIRA - безобразие или безрассудство
Global Trust Solutions. Александр Астахов. "Как рассчитать эффективность DLP...
ARinteg: Защита сетевого периметра
Oblachnye vychisleniya -_ponyatiya_i_tehnologii
CloudsNN 2014. Андрей Бешков. Защита ваших данных в Office 365.
Operational Analytics on Splunk
Введение в performance management
РИФ 2016, Заоблачная безопасность: как обойти чужие грабли
Доклад "Мониторинг серверных приложений"
«Облака» под контролем: как эффективно оценить производительность облачных т...

More from odnoklassniki.ru (12)

PDF
Add a bit of ACID to Cassandra. Cassandra Summit EU 2014
PDF
Кадры решают все, или стриминг видео в «Одноклассниках». Александр Тоболь
PDF
За гранью NoSQL: NewSQL на Cassandra
PDF
Платформа для видео сроком в квартал. Александр Тоболь.
PDF
Франкенштейнизация Voldemort или key-value данные в Одноклассниках. Роман Ан...
PDF
Аварийный дамп – чёрный ящик упавшей JVM. Андрей Паньгин
PDF
Being closer to Cassandra by Oleg Anastasyev. Talk at Cassandra Summit EU 2013
PPTX
Управление тысячами серверов в Одноклассниках. Алексей Чудов.
PDF
Класс!ная Cassandra
PDF
Java Runtime: повседневные обязанности JVM
PPT
Cистема внутренней статистики Odnoklassniki.ru
PPTX
Как, используя Lucene, построить высоконагруженную систему поиска разнородных...
Add a bit of ACID to Cassandra. Cassandra Summit EU 2014
Кадры решают все, или стриминг видео в «Одноклассниках». Александр Тоболь
За гранью NoSQL: NewSQL на Cassandra
Платформа для видео сроком в квартал. Александр Тоболь.
Франкенштейнизация Voldemort или key-value данные в Одноклассниках. Роман Ан...
Аварийный дамп – чёрный ящик упавшей JVM. Андрей Паньгин
Being closer to Cassandra by Oleg Anastasyev. Talk at Cassandra Summit EU 2013
Управление тысячами серверов в Одноклассниках. Алексей Чудов.
Класс!ная Cassandra
Java Runtime: повседневные обязанности JVM
Cистема внутренней статистики Odnoklassniki.ru
Как, используя Lucene, построить высоконагруженную систему поиска разнородных...

Тестирование аварий. Андрей Губа. Highload++ 2015