Презентация про особенности администрирования и технического саппорта. Читал в январе 2011 на семинаре AdRiver в Минске в мою бытность директором по эксплуатации.
2. Содержание:
Особенности эксплуатации высоконагруженных систем
Январь 2011
Обслуживание
Архитектура
Производительность
Отказоустойчивость
Мониторинг
Поддержка пользователей
Уровни
Чем поможем?
Особенности
эксплуатации
высоконагруженных
систем
2
4. Особенности эксплуатации высоконагруженных систем
Январь 2011
О системе
• Баннерная крутилка
• Гибкая платформа для построения коммерческих продуктов
• Высоконагруженная реалтаймовая система
• Универсальный инструмент для статистики
- Неагрегированные данные доступны за 1 год
- Real-time счетчики
- Подробная статистика по всем объектам
- 20Tb данных только для логов за год
4
5. Особенности эксплуатации высоконагруженных систем
Январь 2011
Компоненты real-time системы
• 15 взаимосвязанных компонентов, обеспечивающих работу
кластера
• Real-time часть сервиса 45 серверов
- Intel 5670, 12 ядер по 3Ghz, 48Gb RAM
5
7. Особенности эксплуатации высоконагруженных систем
Январь 2011
Выборка баннера
ad.adriver.ru ad-serverad-serverad-serverad-server
alg_module
ad.adriver.ru
alg_modulealg_modulealg_modulealg_modulealgorithm
trait uu xp
dbserver
trait uu xp
dbserverdbserverdbserverdbserverdbserver
historyhistoryhistoryhistoryhistoryhistoryhistory
statstatstatstatstatstatstatstatstatstat
browser
7
8. Особенности эксплуатации высоконагруженных систем
Январь 2011
1 запрос на показ это...
• Запрос к 20 внутренним базам
• Реалтаймовое обновление нескольких десятков счетчиков
• Строка ~400 символов в логах
8
11. Особенности эксплуатации высоконагруженных систем
Январь 2011
Производительность
• Весь real-time софт написан в компании
• http сервер - до 20.000 запросов/сек
• algorithm module - до 10.000 запросов/сек
• Общая производительность
- время ответа в среднем 50мкс (0.00005сек)
- десятки тысяч запросов без предвыборки
- обновление информации о событии на всех серверах выборки <0.5сек
11
13. Особенности эксплуатации высоконагруженных систем
Январь 2011
Масштабируемость
• Возможность установки региональных прокси-серверов
• Почти линейная масштабируемость кластера
• Гибкие возможности балансировки с обратной связью
- Внешние компоненты
- Вычислительные модули
- Справочники
13
15. Особенности эксплуатации высоконагруженных систем
Январь 2011
Отказоустойчивость. Концепция.
• Обратная связь в системах балансировки
- keepalived
- load average based
• Схемы N+N, N+1
• Надёжные дата-центры
• uptime не меньше 99.9885%
• Резервирование каналов
- х4 по входящему трафику
- х5 выдача контента на Россию
- х100 выдача контента на Белорусь
• Резервные копии
- основная база - каждые 5 минут + по автоматически по сигналу
- справочники - каждые 60 минут
- время хранения логов показов 1 год
15
16. Особенности эксплуатации высоконагруженных систем
Январь 2011
Пример отказоустойчивого сервиса.
history.
• Данные за 2 недели - 6х
• Данные за 9 месяцев - 3х
• Данные за 9-12 месяцев - 1.5х
• Можем хранить и больше, если
это будет востребовано
16
17. Особенности эксплуатации высоконагруженных систем
Январь 2011
Отказоустойчивость.
Выдача контента.
• Баннер показывается только после закачки на большую часть
зеркал
• Закачка на зеркала за 1-3 минуты
• Весь контент с зеркал кешируется благодаря правильным
http header-ам
• Ограничения на размер баннера установлены с 3х запасом от
типовых размеров
17
18. Особенности эксплуатации высоконагруженных систем
Январь 2011
Отказоустойчивость.
Soſtware.
• Использование linux платформы собственной сборки
• Тестирование всего софта
• Обкатка на резервном кластере
18
19. Особенности эксплуатации высоконагруженных систем
Январь 2011
Отказоустойчивость.
Hardware.
• Все сервера с данными используют RAID массивы
• Все железо проходит проверку
- память, диски, сетевые карты
- сервер основной базы работает на тесте минимум 1 месяц
19
21. Особенности эксплуатации высоконагруженных систем
Январь 2011
Мониторинг - оповещения
• 1255 точек
мониторинга с SMS
информированием
• Критичных около 30
• Проверка ответов
системы с 4 серверов
из других городов
21
22. Особенности эксплуатации высоконагруженных систем
Январь 2011
Мониторинг - визуализация
• >10 параметров на
каждый сервер в
кактусе
• Сводные графики
• Любые параметры
22
24. Особенности эксплуатации высоконагруженных систем
Январь 2011
Мониторинг от А до Я
• Доступность сервисов
• Общесистемные параметры
• Очередь баннеров
• Наличие резервных копий
• Терпература в серверной
• Плазменная панель с критичными параметрами
• Баланс на sms-шлюзе :)
24
25. Особенности эксплуатации высоконагруженных систем
Январь 2011
Плановые операции
• Проверка производительности
• Проверка выдачи баннеров с мирроров
• Проверка доступности мирроров из регионов
• Проверка целостности резервных копий
25
29. Особенности эксплуатации высоконагруженных систем
Январь 2011
Документация
• Четкая структура
• Написана под задачи
• Поддерживается в
актуальном состоянии
• Обратная связь
29
31. Особенности эксплуатации высоконагруженных систем
Январь 2011
Миссия отдела поддержки
• Мы стараемся дать вам то, что вам действительно нужно, а
не только что, что вы просите.
31
32. Особенности эксплуатации высоконагруженных систем
Январь 2011
Постулаты
• Вопросы - это нормально. Плохо, если их нет.
• Мы терпеливо объясним вам как вы сможете достичь
результата, но не всегда сможем сделать это за вас.
32
34. Особенности эксплуатации высоконагруженных систем
Январь 2011
Если даже нам нужна помощь...
• Близость разработчиков позволяет оперативно решать любые
вопросы
• Клиент всегда получит ответ
34
35. Особенности эксплуатации высоконагруженных систем
Январь 2011
Типовой вопрос разработчикам
Jan 12 00:00:00 127.0.0.1 algorithm[0]: A0[0]:
s*erle*0*123992*0*0*0*0*0*0*0*0*421249*16*20*14*79.111.80.140*0*'
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/532.0
(KHTML, like Gecko) Chrome/3.0.197.11 Safari/532.0'*'http://
www.interfax.ru/society/txt.asp?
id=172678/'*7*38*1*0*0*1294779600*''*0.000470****0.000008*3048D95
B48.4D12C16E.3063*1813388126*
Почему в 18-м поле 0?
35