39

Управление тысячами серверов в Одноклассниках. Алексей Чудов

Embed Size (px)

DESCRIPTION

В докладе пойдет речь о том, как происходит развертывание и управление серверами в проекте Одноклассники, какие этапы проходит каждый сервер с момента его закупки до запуска в работу. Более подробно будут рассмотрены вопросы мониторинга и автоматического управления конфигурацией. Доклад будет полезен как начинающим администраторам, которые смогут почерпнуть в нем идеи для автоматизации инфраструктуры, так и профессионалам, которым интересен опыт высоконагруженных проектов. Видео: http://broadcast.comdi.com/broadcast/player/stream/?streamKey=qgrcbqtqp4dd2d8gtm9z ( кликните на название доклада )

Citation preview

Page 1: Управление тысячами серверов в Одноклассниках. Алексей Чудов
Page 2: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Управление тысячами

серверов в

Page 3: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Знакомство с проектом

Page 4: Управление тысячами серверов в Одноклассниках. Алексей Чудов

wwwmobile xmpp

api

Одноклассники

Page 5: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Немного статистики

200 M зарегистрированных пользователей40 M уникальных пользователей в день6 M одновременно на сайте240 Гбит/с трафикаболее 1 ПБ данных

Page 6: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Команда

100 разработчиков и тестировщиков25 системных администраторов и инженеров8 специалистов по мониторингудизайнеры, менеджеры, правление и др.

Page 7: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Инфраструктура

4 центра обработки данных150 км оптических линийболее 5000 серверов (95% Linux)

Page 8: Управление тысячами серверов в Одноклассниках. Алексей Чудов
Page 9: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Эйфелева башня300 м

5000 серверов350 м

Page 10: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Управление

Page 11: Управление тысячами серверов в Одноклассниках. Алексей Чудов

ЭтапыПланирование

Монтаж

Развертывание

Конфигурация

Ввод в работу

Планирование

Page 12: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Планирование

выбор центра обработки данныхпланирование размещения в стойкепланирование сетевой инфраструктурыназначение имени и IP-адресазанесение информации в CMDB

Page 13: Управление тысячами серверов в Одноклассниках. Алексей Чудов

CMDBБаза данных управления конфигурацией(configuration management database, CMDB) — репозиторий всех компонентов информационной системы. CMDB помогает понять взаимосвязи между этими компонентами и отслеживать их конфигурации. CMDB — основной компонент процесса управления конфигурацией.

Page 14: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Развитие CMDB

+ + +

Page 15: Управление тысячами серверов в Одноклассниках. Алексей Чудов

CMDB в Одноклассниках

автоматическое планированиеавтоматическая проверка оборудованиясвязи между объектамиинтеграция со всеми системамижурнализация измененийотчеты

Page 16: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Интеграция с CMDBDNSфинансовые системысистема развертываниясистемы мониторинга (Zabbix, Cacti)системы бизнес-анализа и статистикисистемы конфигурации и управления порталомсистема предоставления доступа

Page 17: Управление тысячами серверов в Одноклассниках. Алексей Чудов

ЭтапыПланирование

Монтаж

Развертывание

Конфигурация

Ввод в работу

Развертывание

Page 18: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Развертывание

Clonezillaвыделенный VLANинтеграция с CMDBавтоматическое определение MAC адресаавтоматический перевод в рабочий VLAN

Page 19: Управление тысячами серверов в Одноклассниках. Алексей Чудов

ЭтапыПланирование

Монтаж

Развертывание

Конфигурация

Ввод в работу

Конфигурация

Page 20: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Управление конфигурацией

локальное управлениеудаленное управлениеудаленное выполнение командцентрализованное управление

Page 21: Управление тысячами серверов в Одноклассниках. Алексей Чудов

DSSH

Централизованноеуправление

Multi

SSH

Page 22: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Централизованное управление

Page 23: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Требования

интеграция с CMDBконтроль и журнализация изменениймасштабирование и резервированиемониторинг и отчетыразделение доступа

Page 24: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Почему ?

производительностьмасштабируемостьбезопасностьгибкостьпопулярность

Page 25: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Версии

Community edition (Core)open source (GPL3)

Enterprise edition (Nova)коммерческая поддержкавеб-интерфейс (отчеты, мониторинг и др.)

Page 26: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Компоненты

cf-agent выполняет политики

cf-execd запускает агента по расписанию

cf-monitord

собирает статистическую информацию

cf-serverd обслуживает сетевые соединения

cf-runagent

вызывает агента на удаленных хостах

Page 27: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Клиент – сервер

свой протокол 5308/tcp

аутентификацияавторизацияшифрованиепередача файлов

только pull

Page 28: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Политики

git репозиторий на HUBкаждые 5 минут:

git pullкопирование политик

splaytime = 4

Page 29: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Git mirror

Page 30: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Hub fail

Page 31: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Hub fail

Page 32: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Master fail

Page 33: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Master fail

Page 34: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Мониторинг

INSERT SELECT

MySQL на HUBкаждые 5 минут:

INSERT

каждую минуту:SELECT

раз в сутки чистка

Page 35: Управление тысячами серверов в Одноклассниках. Алексей Чудов
Page 36: Управление тысячами серверов в Одноклассниках. Алексей Чудов

ИтогиПланирование

Монтаж

Развертывание

Конфигурация

Ввод в работу

Планирование

Развертывание

Конфигурация

Page 37: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Дополнительная информация

Блог компании Одноклассникиhttp://habrahabr.ru/company/odnoklassniki/CFEnginehttp://cfengine.com/Chefhttp://www.opscode.com/chef/Puppet Labshttp://puppetlabs.com/

Page 38: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Спасибо за внимание!

Page 39: Управление тысячами серверов в Одноклассниках. Алексей Чудов

Алексей Чудовв е д у щ и й с и с т е м н ы й а д м и н и с т р а т о р ,

О д н о к л а с с н и к и

a l e k s e y. c h u d o v @ o d n o k l a s s n i k i . r u