SlideShare una empresa de Scribd logo
1 de 77
Descargar para leer sin conexión
58.933194

27

Co caine Clouds

2-8-15-2

34,45

17

A Cl oser Look
2-8-7

Сибирёв Андрей
Мы делаем инфраструктуру.

3
Немного истории

4

© SimpleDesktops.com

Как и десять лет назад, обычно инфраструктура
представляет из себя бардак.
Немного истории

Как и десять лет назад, обычно инфраструктура
представляет из себя бардак.

4

© SimpleDesktops.com

При этом, инфраструктура является основой
любого современного бизнеса.
Немного истории

Как и десять лет назад, обычно инфраструктура
представляет из себя бардак.
При этом, инфраструктура является основой
любого современного бизнеса.

4

© SimpleDesktops.com

Кажется, что-то здесь не так.
В начале был сервер

5

© SimpleDesktops.com

Компании начинают с небольшого количества
серверов.
В начале был сервер

Компании начинают с небольшого количества
серверов.

5

© SimpleDesktops.com

Постепенно парк серверов растёт, вместе с
ростом пользовательской базы и,
следовательно, нагрузки.
В начале был сервер

6

© SimpleDesktops.com

Рано или поздно, компания обнаруживает у
себя кучу разнородного железа.
В начале был сервер

Рано или поздно, компания обнаруживает у
себя кучу разнородного железа.

6

© SimpleDesktops.com

И если его использование документировано и
учтено, то всё хорошо.
В начале был сервер

Рано или поздно, компания обнаруживает у
себя кучу разнородного железа.
И если его использование документировано и
учтено, то всё хорошо.

6

© SimpleDesktops.com

Но такое встречается редко.
Разнообразие — это великое зло.

7
И на сервере был софт

8

© SimpleDesktops.com

В программах есть ошибки.
И на сервере был софт

В программах есть ошибки.

8

© SimpleDesktops.com

Ошибки чинят и выпускают новые версии
программ, на радость пользователям.
И на сервере был софт

В программах есть ошибки.
Ошибки чинят и выпускают новые версии
программ, на радость пользователям.

8

© SimpleDesktops.com

Правда, эти новые версии сначала нужно
пользователям доставить.
И на сервере был софт

9

© SimpleDesktops.com

Очевидно, чтобы выкатить новую версию
программы, нужна интеллектуальная система
деплоймента приложений.
И на сервере был софт

Очевидно, чтобы выкатить новую версию
программы, нужна интеллектуальная система
деплоймента приложений.

9

© SimpleDesktops.com

Например, пять тысяч строк на Perl и Rsync!
И на сервере был софт

Очевидно, чтобы выкатить новую версию
программы, нужна интеллектуальная система
деплоймента приложений.
Например, пять тысяч строк на Perl и Rsync!

9

© SimpleDesktops.com

На самом деле, нет.
Rsync — не инструмент деплоймента.

10
И софт был не очень

11

© SimpleDesktops.com

Программы, в которых есть ошибки, ломаются в
самое неподходящее время.
И софт был не очень

Программы, в которых есть ошибки, ломаются в
самое неподходящее время.

11

© SimpleDesktops.com

После работы пяти тысяч строк на Perl понять
где и что именно сломалось невозможно.
И софт был не очень

Программы, в которых есть ошибки, ломаются в
самое неподходящее время.
После работы пяти тысяч строк на Perl понять
где и что именно сломалось невозможно.

11

© SimpleDesktops.com

Бардак только что стал в два раза больше.
И софт был не очень

12

© SimpleDesktops.com

Человечество изобрело мониторинг и метрики,
чтобы такого никогда не было.
И софт был не очень

Человечество изобрело мониторинг и метрики,
чтобы такого никогда не было.

12

© SimpleDesktops.com

Только об этом надо было думать в самом
начале.
И софт был не очень

Человечество изобрело мониторинг и метрики,
чтобы такого никогда не было.
Только об этом надо было думать в самом
начале.

12

© SimpleDesktops.com

Потому что невозможно управлять хаосом.
Мониторинг — это контроль.

13
Утилизация ресурсов

14

© SimpleDesktops.com

Иногда программисты пишут быстрые
программы.
Утилизация ресурсов
Иногда программисты пишут быстрые
программы.

14

© SimpleDesktops.com

Звучит, вроде бы, хорошо, но, на самом деле,
это не всегда так.
Утилизация ресурсов
Иногда программисты пишут быстрые
программы.
Звучит, вроде бы, хорошо, но, на самом деле,
это не всегда так.

14

© SimpleDesktops.com

Обогревать датацентры серверами — не самая
хорошая экономическая модель.
© SimpleDesktops.com

Пики нагрузки
Ваше приложение попало на главную страницу
Хабра.

15
© SimpleDesktops.com

Пики нагрузки
Ваше приложение попало на главную страницу
Хабра.
И тысяча пользователей превратилась в
пятьдесят тысяч. Вот это да, стартап окупился
за одну ночь!

15
© SimpleDesktops.com

Пики нагрузки
Ваше приложение попало на главную страницу
Хабра.
И тысяча пользователей превратилась в
пятьдесят тысяч. Вот это да, стартап окупился
за одну ночь!
То есть, я хотел сказать «503 Service Temporarily
Unavailable».

15
Единообразие — это гибкость.

16
© Volkswagen AG
Cloud

18

© SimpleDesktops.com

Модульная архитектура, унифицированные
вычислительные ресурсы: слоты, слайсы,
юниты.
Cloud
Модульная архитектура, унифицированные
вычислительные ресурсы: слоты, слайсы,
юниты.

18

© SimpleDesktops.com

Детерминированная система деплоймента
приложений.
Cloud
Модульная архитектура, унифицированные
вычислительные ресурсы: слоты, слайсы,
юниты.
Детерминированная система деплоймента
приложений.

18

© SimpleDesktops.com

Тесты, метрики и мониторинг. Мониторинг,
метрики и тесты.
19
© SimpleDesktops.com

Like an OS
19
© SimpleDesktops.com

Like an OS
Kernel
Like an OS
Kernel

19

© SimpleDesktops.com

Drivers
Like an OS
Kernel

19

© SimpleDesktops.com

Drivers
Resource Managers
Like an OS
Kernel

19

© SimpleDesktops.com

Drivers
Resource Managers
API
Like an OS
Kernel
Drivers
Resource Managers
API

19

© SimpleDesktops.com

Userland
Like an OS
Kernel
Drivers
Resource Managers
API
Userland

19

© SimpleDesktops.com

Apps
Like an OS
Kernel
Drivers
Resource Managers
API
Userland

19

© SimpleDesktops.com

Apps
Сервисы

20

© SimpleDesktops.com

Аналогичны модулям ядра в Linux.
Сервисы

Аналогичны модулям ядра в Linux.

20

© SimpleDesktops.com

Logging, Storage, Search & Indexing, URL
Fetching, Geolocation, ...
Сервисы

Аналогичны модулям ядра в Linux.
Logging, Storage, Search & Indexing, URL
Fetching, Geolocation, ...

20

© SimpleDesktops.com

Теперь все приложения — тоже сервисы.
Локатор

21

© SimpleDesktops.com

Discovery & Arbitration. Для обращения к
сервису нужно знать только его имя.
Локатор
Discovery & Arbitration. Для обращения к
сервису нужно знать только его имя.

21

© SimpleDesktops.com

Мы отказались от IDL, все метаданные о
сервисе приложение получает в рантайме.
Локатор
Discovery & Arbitration. Для обращения к
сервису нужно знать только его имя.
Мы отказались от IDL, все метаданные о
сервисе приложение получает в рантайме.

21

© SimpleDesktops.com

HTTP/2.0-like RPC. Непрозрачные бинарные
потоки, мультиплексирование, расширяемость,
распространённость.
Плагины

22

© SimpleDesktops.com

Сервисы — это абстрактные фронтэнды к
разнообразным функциям инфраструктуры.
Плагины
Сервисы — это абстрактные фронтэнды к
разнообразным функциям инфраструктуры.

22

© SimpleDesktops.com

Logging Service может быть реализован как
через Syslog, так и через Logstash.
Плагины
Сервисы — это абстрактные фронтэнды к
разнообразным функциям инфраструктуры.
Logging Service может быть реализован как
через Syslog, так и через Logstash.

22

© SimpleDesktops.com

Смена реализации делается через изменение
конфига. Код приложений остаётся
неизменным.
Storage Service

23

© SimpleDesktops.com

Система хранения — это фундамент для любой
облачной платформы.
Storage Service
Система хранения — это фундамент для любой
облачной платформы.

23

© SimpleDesktops.com

Самое главное, такая система должна быть
надёжной, включая защиту от котиков и
безумных экскаваторщиков.
Storage Service
Система хранения — это фундамент для любой
облачной платформы.
Самое главное, такая система должна быть
надёжной, включая защиту от котиков и
безумных экскаваторщиков.

23

© SimpleDesktops.com

Мы используем Elliptics.
Elliptics

24

© SimpleDesktops.com

Надёжнее, чем молитва.
Elliptics

Надёжнее, чем молитва.

24

© SimpleDesktops.com

Вторичные индексы, стриминг, кэш, server-side
processing и все остальные ключевые слова из
других систем хранения данных.
Elliptics

Надёжнее, чем молитва.
Вторичные индексы, стриминг, кэш, server-side
processing и все остальные ключевые слова из
других систем хранения данных.

24

© SimpleDesktops.com

И, главное, защита от атомной войны!
Node Service

25

© SimpleDesktops.com

Контролирует работу приложений — доставка
на ноды, конфигурация, управление жизненным
циклом.
Node Service
Контролирует работу приложений — доставка
на ноды, конфигурация, управление жизненным
циклом.

25

© SimpleDesktops.com

Собирает и хранит метрики и статистику о
работе приложений для балансировщика.
Node Service
Контролирует работу приложений — доставка
на ноды, конфигурация, управление жизненным
циклом.
Собирает и хранит метрики и статистику о
работе приложений для балансировщика.

25

© SimpleDesktops.com

Поддерживаются процессы или контейнеры.
© SimpleDesktops.com

Контейнеры
Контейнеры — это легковесная виртуализация.
Нет гипервизора, все контейнеры делят одно
ядро.

26
© SimpleDesktops.com

Контейнеры
Контейнеры — это легковесная виртуализация.
Нет гипервизора, все контейнеры делят одно
ядро.
Процессы работают в изолированных
неймспейсах: pid, uid, ipc, network, filesystem,
mounts, ...

26
© SimpleDesktops.com

Контейнеры
Контейнеры — это легковесная виртуализация.
Нет гипервизора, все контейнеры делят одно
ядро.
Процессы работают в изолированных
неймспейсах: pid, uid, ipc, network, filesystem,
mounts, ...
Запуск контейнера происходит в сотни раз
быстрее, чем запуск виртуальной машины.

26
Docker
Стандарт распространения приложений на базе
Linux Containers.

27
Docker
Стандарт распространения приложений на базе
Linux Containers.
Поддерживается Red Hat, Rackspace, Cloudflare,
Ebay, Mozilla, OpenStack, Chef, Puppet, ...

27
Docker
Стандарт распространения приложений на базе
Linux Containers.
Поддерживается Red Hat, Rackspace, Cloudflare,
Ebay, Mozilla, OpenStack, Chef, Puppet, ...
Единый контейнер, который будет работать как
на ноутбуке разработчика, так и на кластере из
сотен машин.

27
Балансировка
Layer 3. Это значит не только HTTP — какие
угодно данные в любом формате.

© SimpleDesktops.com

28
Балансировка
Layer 3. Это значит не только HTTP — какие
угодно данные в любом формате.
Балансировка в ядре: IPVS, IPv6, динамические
веса, мгновенная реакция на изменения в
кластере.

© SimpleDesktops.com

28
Балансировка
Layer 3. Это значит не только HTTP — какие
угодно данные в любом формате.
Балансировка в ядре: IPVS, IPv6, динамические
веса, мгновенная реакция на изменения в
кластере.
Routing Groups. Расщепление траффика между
несколькими интерфейсно-совместимыми
приложениями.

© SimpleDesktops.com

28
Планы на будущее

29

© SimpleDesktops.com

Доступ к сервисам по токенам, аудит и,
следовательно, биллинг.
Планы на будущее

Доступ к сервисам по токенам, аудит и,
следовательно, биллинг.

29

© SimpleDesktops.com

Поддержка Ruby, Racket и Java.
Планы на будущее

Доступ к сервисам по токенам, аудит и,
следовательно, биллинг.
Поддержка Ruby, Racket и Java.

29

© SimpleDesktops.com

HTTP-only режим.
Спасибо за внимание
Андрей Сибирёв
Руководитель службы
разработки облачных
технологий

kobolog
@kobolog
github.com/cocaine

kobolog@yandex-team.ru

© ООО «Яндекс», 2013
31

Más contenido relacionado

La actualidad más candente

MySQL InnoDB Cluster
MySQL InnoDB ClusterMySQL InnoDB Cluster
MySQL InnoDB ClusterVittorio Cioe
 
ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)
ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)
ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)Ontico
 
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...Ontico
 
Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...
Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...
Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...Ontico
 
Приключения проекта от компьютера разработчика до серьезных нагрузок / Андрей...
Приключения проекта от компьютера разработчика до серьезных нагрузок / Андрей...Приключения проекта от компьютера разработчика до серьезных нагрузок / Андрей...
Приключения проекта от компьютера разработчика до серьезных нагрузок / Андрей...Ontico
 
Эксплуатация или искусство ухода за интернет проектами (Александр Титов)
Эксплуатация или искусство ухода за интернет проектами (Александр Титов)Эксплуатация или искусство ухода за интернет проектами (Александр Титов)
Эксплуатация или искусство ухода за интернет проектами (Александр Титов)Ontico
 
Поиск и устранение неисправностей при работе Cisco Jabber через MRA
Поиск и устранение неисправностей при работе Cisco Jabber через MRAПоиск и устранение неисправностей при работе Cisco Jabber через MRA
Поиск и устранение неисправностей при работе Cisco Jabber через MRACisco Russia
 
Опыт построения комплексного катастрофоустойчивого решения NetApp и фрагмента...
Опыт построения комплексного катастрофоустойчивого решения NetApp и фрагмента...Опыт построения комплексного катастрофоустойчивого решения NetApp и фрагмента...
Опыт построения комплексного катастрофоустойчивого решения NetApp и фрагмента...Айдар Гилязов
 
Zabbix и миллионы метрик: наилучший опыт масштабного мониторинга / Алексей Вл...
Zabbix и миллионы метрик: наилучший опыт масштабного мониторинга / Алексей Вл...Zabbix и миллионы метрик: наилучший опыт масштабного мониторинга / Алексей Вл...
Zabbix и миллионы метрик: наилучший опыт масштабного мониторинга / Алексей Вл...Ontico
 
Пряморукий DNS: делаем правильно / Лев Николаев (Макснет)
Пряморукий DNS: делаем правильно / Лев Николаев (Макснет)Пряморукий DNS: делаем правильно / Лев Николаев (Макснет)
Пряморукий DNS: делаем правильно / Лев Николаев (Макснет)Ontico
 
Система записи телефонных разговоров на базе Cisco MediaSense: варианты интег...
Система записи телефонных разговоров на базе Cisco MediaSense: варианты интег...Система записи телефонных разговоров на базе Cisco MediaSense: варианты интег...
Система записи телефонных разговоров на базе Cisco MediaSense: варианты интег...Cisco Russia
 
Антон Галицын
Антон ГалицынАнтон Галицын
Антон ГалицынCodeFest
 
Чеклист по клиентской оптимизации - Лавлинский Николай, РИТ++ 2017
Чеклист по клиентской оптимизации - Лавлинский Николай, РИТ++ 2017Чеклист по клиентской оптимизации - Лавлинский Николай, РИТ++ 2017
Чеклист по клиентской оптимизации - Лавлинский Николай, РИТ++ 2017Николай Лавлинский
 
SDN & DEVOPS ?= ❤: Практики использования SDN / Александр Шалимов (ЦПИКС, МГУ)
SDN & DEVOPS ?= ❤: Практики использования SDN / Александр Шалимов (ЦПИКС, МГУ)SDN & DEVOPS ?= ❤: Практики использования SDN / Александр Шалимов (ЦПИКС, МГУ)
SDN & DEVOPS ?= ❤: Практики использования SDN / Александр Шалимов (ЦПИКС, МГУ)Ontico
 
Александр Зобнин, Grafana Labs
Александр Зобнин, Grafana LabsАлександр Зобнин, Grafana Labs
Александр Зобнин, Grafana LabsBadoo Development
 
KharkovPy #12: I/O in Python apps and smart logging (russian)
KharkovPy #12: I/O in Python apps and smart logging (russian)KharkovPy #12: I/O in Python apps and smart logging (russian)
KharkovPy #12: I/O in Python apps and smart logging (russian)Max Klymyshyn
 
Четырехлетие OpenStack - Сложный возраст OpenStack
Четырехлетие OpenStack - Сложный возраст OpenStackЧетырехлетие OpenStack - Сложный возраст OpenStack
Четырехлетие OpenStack - Сложный возраст OpenStackOpenStackRussia
 
FlexPod для machine learning, 3D, контейнеров и еще сотня проверенных архитектур
FlexPod для machine learning, 3D, контейнеров и еще сотня проверенных архитектурFlexPod для machine learning, 3D, контейнеров и еще сотня проверенных архитектур
FlexPod для machine learning, 3D, контейнеров и еще сотня проверенных архитектурCisco Russia
 
Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...
Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...
Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...Uptime Community
 

La actualidad más candente (20)

MySQL InnoDB Cluster
MySQL InnoDB ClusterMySQL InnoDB Cluster
MySQL InnoDB Cluster
 
ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)
ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)
ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)
 
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
 
Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...
Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...
Проектирование высоконагруженного масштабируемого веб-сервиса в облаке на при...
 
Приключения проекта от компьютера разработчика до серьезных нагрузок / Андрей...
Приключения проекта от компьютера разработчика до серьезных нагрузок / Андрей...Приключения проекта от компьютера разработчика до серьезных нагрузок / Андрей...
Приключения проекта от компьютера разработчика до серьезных нагрузок / Андрей...
 
Эксплуатация или искусство ухода за интернет проектами (Александр Титов)
Эксплуатация или искусство ухода за интернет проектами (Александр Титов)Эксплуатация или искусство ухода за интернет проектами (Александр Титов)
Эксплуатация или искусство ухода за интернет проектами (Александр Титов)
 
Поиск и устранение неисправностей при работе Cisco Jabber через MRA
Поиск и устранение неисправностей при работе Cisco Jabber через MRAПоиск и устранение неисправностей при работе Cisco Jabber через MRA
Поиск и устранение неисправностей при работе Cisco Jabber через MRA
 
Опыт построения комплексного катастрофоустойчивого решения NetApp и фрагмента...
Опыт построения комплексного катастрофоустойчивого решения NetApp и фрагмента...Опыт построения комплексного катастрофоустойчивого решения NetApp и фрагмента...
Опыт построения комплексного катастрофоустойчивого решения NetApp и фрагмента...
 
Breaking logs
Breaking logsBreaking logs
Breaking logs
 
Zabbix и миллионы метрик: наилучший опыт масштабного мониторинга / Алексей Вл...
Zabbix и миллионы метрик: наилучший опыт масштабного мониторинга / Алексей Вл...Zabbix и миллионы метрик: наилучший опыт масштабного мониторинга / Алексей Вл...
Zabbix и миллионы метрик: наилучший опыт масштабного мониторинга / Алексей Вл...
 
Пряморукий DNS: делаем правильно / Лев Николаев (Макснет)
Пряморукий DNS: делаем правильно / Лев Николаев (Макснет)Пряморукий DNS: делаем правильно / Лев Николаев (Макснет)
Пряморукий DNS: делаем правильно / Лев Николаев (Макснет)
 
Система записи телефонных разговоров на базе Cisco MediaSense: варианты интег...
Система записи телефонных разговоров на базе Cisco MediaSense: варианты интег...Система записи телефонных разговоров на базе Cisco MediaSense: варианты интег...
Система записи телефонных разговоров на базе Cisco MediaSense: варианты интег...
 
Антон Галицын
Антон ГалицынАнтон Галицын
Антон Галицын
 
Чеклист по клиентской оптимизации - Лавлинский Николай, РИТ++ 2017
Чеклист по клиентской оптимизации - Лавлинский Николай, РИТ++ 2017Чеклист по клиентской оптимизации - Лавлинский Николай, РИТ++ 2017
Чеклист по клиентской оптимизации - Лавлинский Николай, РИТ++ 2017
 
SDN & DEVOPS ?= ❤: Практики использования SDN / Александр Шалимов (ЦПИКС, МГУ)
SDN & DEVOPS ?= ❤: Практики использования SDN / Александр Шалимов (ЦПИКС, МГУ)SDN & DEVOPS ?= ❤: Практики использования SDN / Александр Шалимов (ЦПИКС, МГУ)
SDN & DEVOPS ?= ❤: Практики использования SDN / Александр Шалимов (ЦПИКС, МГУ)
 
Александр Зобнин, Grafana Labs
Александр Зобнин, Grafana LabsАлександр Зобнин, Grafana Labs
Александр Зобнин, Grafana Labs
 
KharkovPy #12: I/O in Python apps and smart logging (russian)
KharkovPy #12: I/O in Python apps and smart logging (russian)KharkovPy #12: I/O in Python apps and smart logging (russian)
KharkovPy #12: I/O in Python apps and smart logging (russian)
 
Четырехлетие OpenStack - Сложный возраст OpenStack
Четырехлетие OpenStack - Сложный возраст OpenStackЧетырехлетие OpenStack - Сложный возраст OpenStack
Четырехлетие OpenStack - Сложный возраст OpenStack
 
FlexPod для machine learning, 3D, контейнеров и еще сотня проверенных архитектур
FlexPod для machine learning, 3D, контейнеров и еще сотня проверенных архитектурFlexPod для machine learning, 3D, контейнеров и еще сотня проверенных архитектур
FlexPod для machine learning, 3D, контейнеров и еще сотня проверенных архитектур
 
Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...
Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...
Как жить в облаке почти без админов: мониторинг и эксплуатация сотен виртуаль...
 

Destacado

Теория и практика публичных выступлений
Теория и практика публичных выступленийТеория и практика публичных выступлений
Теория и практика публичных выступленийStanislav Mikhaylyuk
 
Четыре мобильности: возможности и вызовы будущего
Четыре мобильности: возможности и вызовы будущегоЧетыре мобильности: возможности и вызовы будущего
Четыре мобильности: возможности и вызовы будущегоStanislav Mikhaylyuk
 
What is Real time bidding (DSP, SSP, DMP, ATD, ITD)
What is Real time bidding (DSP, SSP, DMP, ATD, ITD)What is Real time bidding (DSP, SSP, DMP, ATD, ITD)
What is Real time bidding (DSP, SSP, DMP, ATD, ITD)Stanislav Mikhaylyuk
 
молчанов выступление в ац правительства
молчанов выступление в ац правительствамолчанов выступление в ац правительства
молчанов выступление в ац правительстваStanislav Mikhaylyuk
 

Destacado (14)

Big Data from Small Places
Big Data from Small PlacesBig Data from Small Places
Big Data from Small Places
 
Ong etica
Ong eticaOng etica
Ong etica
 
A. d. a.
A. d. a.A. d. a.
A. d. a.
 
Теория и практика публичных выступлений
Теория и практика публичных выступленийТеория и практика публичных выступлений
Теория и практика публичных выступлений
 
Work 2 n term
Work 2 n termWork 2 n term
Work 2 n term
 
Четыре мобильности: возможности и вызовы будущего
Четыре мобильности: возможности и вызовы будущегоЧетыре мобильности: возможности и вызовы будущего
Четыре мобильности: возможности и вызовы будущего
 
For a better world
For a better worldFor a better world
For a better world
 
Jini+presentation
Jini+presentationJini+presentation
Jini+presentation
 
Regne unit def
Regne unit defRegne unit def
Regne unit def
 
Life process
Life processLife process
Life process
 
Global issues
Global issuesGlobal issues
Global issues
 
What is Real time bidding (DSP, SSP, DMP, ATD, ITD)
What is Real time bidding (DSP, SSP, DMP, ATD, ITD)What is Real time bidding (DSP, SSP, DMP, ATD, ITD)
What is Real time bidding (DSP, SSP, DMP, ATD, ITD)
 
MOOC
MOOCMOOC
MOOC
 
молчанов выступление в ац правительства
молчанов выступление в ац правительствамолчанов выступление в ац правительства
молчанов выступление в ац правительства
 

Similar a Cocaine!!!

CloudsNN 2014. Константин Анисимов.
CloudsNN 2014. Константин Анисимов.CloudsNN 2014. Константин Анисимов.
CloudsNN 2014. Константин Анисимов.Clouds NN
 
About TheCloud.ru
About TheCloud.ruAbout TheCloud.ru
About TheCloud.ruTheCloud_ru
 
Инновационные решения для роста облачного бизнеса
Инновационные решения для роста облачного бизнесаИнновационные решения для роста облачного бизнеса
Инновационные решения для роста облачного бизнесаru_Parallels
 
Почему вам не нужен SOC
Почему вам не нужен SOCПочему вам не нужен SOC
Почему вам не нужен SOCKirill Ermakov
 
Андрей Завадский "Бессерверная архитектура"
 Андрей Завадский "Бессерверная архитектура" Андрей Завадский "Бессерверная архитектура"
Андрей Завадский "Бессерверная архитектура"Fwdays
 
техническая разработка сайтов(2)
техническая разработка сайтов(2)техническая разработка сайтов(2)
техническая разработка сайтов(2)Ольга Куликова
 
Техническая разработка сайтов
Техническая разработка сайтовТехническая разработка сайтов
Техническая разработка сайтовОльга Куликова
 
облако для корпоративных ландшафтов практические аспекты выбора
облако для корпоративных ландшафтов   практические аспекты выбораоблако для корпоративных ландшафтов   практические аспекты выбора
облако для корпоративных ландшафтов практические аспекты выбораPlenipotentiary_Iryna
 
ОПТИМИЗАЦИЯ ИНФРАСТРУКТУРЫ И СОКРАЩЕНИЕ ЗАТРАТ ПРИ ПОМОЩИ ПРОДУКТОВ И ТЕХНОЛО...
ОПТИМИЗАЦИЯ ИНФРАСТРУКТУРЫ И СОКРАЩЕНИЕ ЗАТРАТ ПРИ ПОМОЩИ ПРОДУКТОВ И ТЕХНОЛО...ОПТИМИЗАЦИЯ ИНФРАСТРУКТУРЫ И СОКРАЩЕНИЕ ЗАТРАТ ПРИ ПОМОЩИ ПРОДУКТОВ И ТЕХНОЛО...
ОПТИМИЗАЦИЯ ИНФРАСТРУКТУРЫ И СОКРАЩЕНИЕ ЗАТРАТ ПРИ ПОМОЩИ ПРОДУКТОВ И ТЕХНОЛО...Sasha_Zavorot
 
ОПТИМИЗАЦИЯ ИНФРАСТРУКТУРЫ И СОКРАЩЕНИЕ ЗАТРАТ ПРИ ПОМОЩИ ПРОДУКТОВ И ТЕХНОЛО...
ОПТИМИЗАЦИЯ ИНФРАСТРУКТУРЫ И СОКРАЩЕНИЕ ЗАТРАТ ПРИ ПОМОЩИ ПРОДУКТОВ И ТЕХНОЛО...ОПТИМИЗАЦИЯ ИНФРАСТРУКТУРЫ И СОКРАЩЕНИЕ ЗАТРАТ ПРИ ПОМОЩИ ПРОДУКТОВ И ТЕХНОЛО...
ОПТИМИЗАЦИЯ ИНФРАСТРУКТУРЫ И СОКРАЩЕНИЕ ЗАТРАТ ПРИ ПОМОЩИ ПРОДУКТОВ И ТЕХНОЛО...Yaryomenko
 
Облачные технологии и инфраструктура как сервис (IaaS). Зачем это нужно бизнесу?
Облачные технологии и инфраструктура как сервис (IaaS). Зачем это нужно бизнесу?Облачные технологии и инфраструктура как сервис (IaaS). Зачем это нужно бизнесу?
Облачные технологии и инфраструктура как сервис (IaaS). Зачем это нужно бизнесу?ActiveCloud
 
Open source technologies in Microsoft cloud - MS SWIT 2014
Open source technologies in Microsoft cloud - MS SWIT 2014Open source technologies in Microsoft cloud - MS SWIT 2014
Open source technologies in Microsoft cloud - MS SWIT 2014Alexey Bokov
 
Cisco Umbrella как облачная платформа защиты от угроз
Cisco Umbrella как облачная платформа защиты от угрозCisco Umbrella как облачная платформа защиты от угроз
Cisco Umbrella как облачная платформа защиты от угрозCisco Russia
 
ФРИИ интернет предпринимательство - Приложения и сервисы для бизнеса
ФРИИ интернет предпринимательство - Приложения и сервисы для бизнесаФРИИ интернет предпринимательство - Приложения и сервисы для бизнеса
ФРИИ интернет предпринимательство - Приложения и сервисы для бизнесаЭкосистемные Проекты Фрии
 
Runa for kazan v1 6jt
Runa for kazan v1 6jtRuna for kazan v1 6jt
Runa for kazan v1 6jtit-park
 
алексей лукацкий 1
алексей лукацкий 1алексей лукацкий 1
алексей лукацкий 1Positive Hack Days
 
Путь к Go на конкретном примере
Путь к Go на конкретном примереПуть к Go на конкретном примере
Путь к Go на конкретном примереSergey Xek
 

Similar a Cocaine!!! (20)

CloudsNN 2014. Константин Анисимов.
CloudsNN 2014. Константин Анисимов.CloudsNN 2014. Константин Анисимов.
CloudsNN 2014. Константин Анисимов.
 
About TheCloud.ru
About TheCloud.ruAbout TheCloud.ru
About TheCloud.ru
 
Инновационные решения для роста облачного бизнеса
Инновационные решения для роста облачного бизнесаИнновационные решения для роста облачного бизнеса
Инновационные решения для роста облачного бизнеса
 
Почему вам не нужен SOC
Почему вам не нужен SOCПочему вам не нужен SOC
Почему вам не нужен SOC
 
Андрей Завадский "Бессерверная архитектура"
 Андрей Завадский "Бессерверная архитектура" Андрей Завадский "Бессерверная архитектура"
Андрей Завадский "Бессерверная архитектура"
 
техническая разработка сайтов(2)
техническая разработка сайтов(2)техническая разработка сайтов(2)
техническая разработка сайтов(2)
 
Техническая разработка сайтов
Техническая разработка сайтовТехническая разработка сайтов
Техническая разработка сайтов
 
облако для корпоративных ландшафтов практические аспекты выбора
облако для корпоративных ландшафтов   практические аспекты выбораоблако для корпоративных ландшафтов   практические аспекты выбора
облако для корпоративных ландшафтов практические аспекты выбора
 
ОПТИМИЗАЦИЯ ИНФРАСТРУКТУРЫ И СОКРАЩЕНИЕ ЗАТРАТ ПРИ ПОМОЩИ ПРОДУКТОВ И ТЕХНОЛО...
ОПТИМИЗАЦИЯ ИНФРАСТРУКТУРЫ И СОКРАЩЕНИЕ ЗАТРАТ ПРИ ПОМОЩИ ПРОДУКТОВ И ТЕХНОЛО...ОПТИМИЗАЦИЯ ИНФРАСТРУКТУРЫ И СОКРАЩЕНИЕ ЗАТРАТ ПРИ ПОМОЩИ ПРОДУКТОВ И ТЕХНОЛО...
ОПТИМИЗАЦИЯ ИНФРАСТРУКТУРЫ И СОКРАЩЕНИЕ ЗАТРАТ ПРИ ПОМОЩИ ПРОДУКТОВ И ТЕХНОЛО...
 
ОПТИМИЗАЦИЯ ИНФРАСТРУКТУРЫ И СОКРАЩЕНИЕ ЗАТРАТ ПРИ ПОМОЩИ ПРОДУКТОВ И ТЕХНОЛО...
ОПТИМИЗАЦИЯ ИНФРАСТРУКТУРЫ И СОКРАЩЕНИЕ ЗАТРАТ ПРИ ПОМОЩИ ПРОДУКТОВ И ТЕХНОЛО...ОПТИМИЗАЦИЯ ИНФРАСТРУКТУРЫ И СОКРАЩЕНИЕ ЗАТРАТ ПРИ ПОМОЩИ ПРОДУКТОВ И ТЕХНОЛО...
ОПТИМИЗАЦИЯ ИНФРАСТРУКТУРЫ И СОКРАЩЕНИЕ ЗАТРАТ ПРИ ПОМОЩИ ПРОДУКТОВ И ТЕХНОЛО...
 
Облачные технологии и инфраструктура как сервис (IaaS). Зачем это нужно бизнесу?
Облачные технологии и инфраструктура как сервис (IaaS). Зачем это нужно бизнесу?Облачные технологии и инфраструктура как сервис (IaaS). Зачем это нужно бизнесу?
Облачные технологии и инфраструктура как сервис (IaaS). Зачем это нужно бизнесу?
 
Open source technologies in Microsoft cloud - MS SWIT 2014
Open source technologies in Microsoft cloud - MS SWIT 2014Open source technologies in Microsoft cloud - MS SWIT 2014
Open source technologies in Microsoft cloud - MS SWIT 2014
 
Free RvSIEM. Intro (Rus)
Free RvSIEM. Intro (Rus)Free RvSIEM. Intro (Rus)
Free RvSIEM. Intro (Rus)
 
Cisco Umbrella как облачная платформа защиты от угроз
Cisco Umbrella как облачная платформа защиты от угрозCisco Umbrella как облачная платформа защиты от угроз
Cisco Umbrella как облачная платформа защиты от угроз
 
ФРИИ интернет предпринимательство - Приложения и сервисы для бизнеса
ФРИИ интернет предпринимательство - Приложения и сервисы для бизнесаФРИИ интернет предпринимательство - Приложения и сервисы для бизнеса
ФРИИ интернет предпринимательство - Приложения и сервисы для бизнеса
 
Runa for kazan v1 6jt
Runa for kazan v1 6jtRuna for kazan v1 6jt
Runa for kazan v1 6jt
 
Anisimov parallels telco-form_08.06.11
Anisimov parallels telco-form_08.06.11Anisimov parallels telco-form_08.06.11
Anisimov parallels telco-form_08.06.11
 
алексей лукацкий 1
алексей лукацкий 1алексей лукацкий 1
алексей лукацкий 1
 
Путь к Go на конкретном примере
Путь к Go на конкретном примереПуть к Go на конкретном примере
Путь к Go на конкретном примере
 
Системы хранения NetApp
Системы хранения NetAppСистемы хранения NetApp
Системы хранения NetApp
 

Cocaine!!!

  • 1.
  • 2. 58.933194 27 Co caine Clouds 2-8-15-2 34,45 17 A Cl oser Look 2-8-7 Сибирёв Андрей
  • 4. Немного истории 4 © SimpleDesktops.com Как и десять лет назад, обычно инфраструктура представляет из себя бардак.
  • 5. Немного истории Как и десять лет назад, обычно инфраструктура представляет из себя бардак. 4 © SimpleDesktops.com При этом, инфраструктура является основой любого современного бизнеса.
  • 6. Немного истории Как и десять лет назад, обычно инфраструктура представляет из себя бардак. При этом, инфраструктура является основой любого современного бизнеса. 4 © SimpleDesktops.com Кажется, что-то здесь не так.
  • 7. В начале был сервер 5 © SimpleDesktops.com Компании начинают с небольшого количества серверов.
  • 8. В начале был сервер Компании начинают с небольшого количества серверов. 5 © SimpleDesktops.com Постепенно парк серверов растёт, вместе с ростом пользовательской базы и, следовательно, нагрузки.
  • 9. В начале был сервер 6 © SimpleDesktops.com Рано или поздно, компания обнаруживает у себя кучу разнородного железа.
  • 10. В начале был сервер Рано или поздно, компания обнаруживает у себя кучу разнородного железа. 6 © SimpleDesktops.com И если его использование документировано и учтено, то всё хорошо.
  • 11. В начале был сервер Рано или поздно, компания обнаруживает у себя кучу разнородного железа. И если его использование документировано и учтено, то всё хорошо. 6 © SimpleDesktops.com Но такое встречается редко.
  • 12. Разнообразие — это великое зло. 7
  • 13. И на сервере был софт 8 © SimpleDesktops.com В программах есть ошибки.
  • 14. И на сервере был софт В программах есть ошибки. 8 © SimpleDesktops.com Ошибки чинят и выпускают новые версии программ, на радость пользователям.
  • 15. И на сервере был софт В программах есть ошибки. Ошибки чинят и выпускают новые версии программ, на радость пользователям. 8 © SimpleDesktops.com Правда, эти новые версии сначала нужно пользователям доставить.
  • 16. И на сервере был софт 9 © SimpleDesktops.com Очевидно, чтобы выкатить новую версию программы, нужна интеллектуальная система деплоймента приложений.
  • 17. И на сервере был софт Очевидно, чтобы выкатить новую версию программы, нужна интеллектуальная система деплоймента приложений. 9 © SimpleDesktops.com Например, пять тысяч строк на Perl и Rsync!
  • 18. И на сервере был софт Очевидно, чтобы выкатить новую версию программы, нужна интеллектуальная система деплоймента приложений. Например, пять тысяч строк на Perl и Rsync! 9 © SimpleDesktops.com На самом деле, нет.
  • 19. Rsync — не инструмент деплоймента. 10
  • 20. И софт был не очень 11 © SimpleDesktops.com Программы, в которых есть ошибки, ломаются в самое неподходящее время.
  • 21. И софт был не очень Программы, в которых есть ошибки, ломаются в самое неподходящее время. 11 © SimpleDesktops.com После работы пяти тысяч строк на Perl понять где и что именно сломалось невозможно.
  • 22. И софт был не очень Программы, в которых есть ошибки, ломаются в самое неподходящее время. После работы пяти тысяч строк на Perl понять где и что именно сломалось невозможно. 11 © SimpleDesktops.com Бардак только что стал в два раза больше.
  • 23. И софт был не очень 12 © SimpleDesktops.com Человечество изобрело мониторинг и метрики, чтобы такого никогда не было.
  • 24. И софт был не очень Человечество изобрело мониторинг и метрики, чтобы такого никогда не было. 12 © SimpleDesktops.com Только об этом надо было думать в самом начале.
  • 25. И софт был не очень Человечество изобрело мониторинг и метрики, чтобы такого никогда не было. Только об этом надо было думать в самом начале. 12 © SimpleDesktops.com Потому что невозможно управлять хаосом.
  • 26. Мониторинг — это контроль. 13
  • 27. Утилизация ресурсов 14 © SimpleDesktops.com Иногда программисты пишут быстрые программы.
  • 28. Утилизация ресурсов Иногда программисты пишут быстрые программы. 14 © SimpleDesktops.com Звучит, вроде бы, хорошо, но, на самом деле, это не всегда так.
  • 29. Утилизация ресурсов Иногда программисты пишут быстрые программы. Звучит, вроде бы, хорошо, но, на самом деле, это не всегда так. 14 © SimpleDesktops.com Обогревать датацентры серверами — не самая хорошая экономическая модель.
  • 30. © SimpleDesktops.com Пики нагрузки Ваше приложение попало на главную страницу Хабра. 15
  • 31. © SimpleDesktops.com Пики нагрузки Ваше приложение попало на главную страницу Хабра. И тысяча пользователей превратилась в пятьдесят тысяч. Вот это да, стартап окупился за одну ночь! 15
  • 32. © SimpleDesktops.com Пики нагрузки Ваше приложение попало на главную страницу Хабра. И тысяча пользователей превратилась в пятьдесят тысяч. Вот это да, стартап окупился за одну ночь! То есть, я хотел сказать «503 Service Temporarily Unavailable». 15
  • 33. Единообразие — это гибкость. 16
  • 35. Cloud 18 © SimpleDesktops.com Модульная архитектура, унифицированные вычислительные ресурсы: слоты, слайсы, юниты.
  • 36. Cloud Модульная архитектура, унифицированные вычислительные ресурсы: слоты, слайсы, юниты. 18 © SimpleDesktops.com Детерминированная система деплоймента приложений.
  • 37. Cloud Модульная архитектура, унифицированные вычислительные ресурсы: слоты, слайсы, юниты. Детерминированная система деплоймента приложений. 18 © SimpleDesktops.com Тесты, метрики и мониторинг. Мониторинг, метрики и тесты.
  • 40. Like an OS Kernel 19 © SimpleDesktops.com Drivers
  • 41. Like an OS Kernel 19 © SimpleDesktops.com Drivers Resource Managers
  • 42. Like an OS Kernel 19 © SimpleDesktops.com Drivers Resource Managers API
  • 43. Like an OS Kernel Drivers Resource Managers API 19 © SimpleDesktops.com Userland
  • 44. Like an OS Kernel Drivers Resource Managers API Userland 19 © SimpleDesktops.com Apps
  • 45. Like an OS Kernel Drivers Resource Managers API Userland 19 © SimpleDesktops.com Apps
  • 47. Сервисы Аналогичны модулям ядра в Linux. 20 © SimpleDesktops.com Logging, Storage, Search & Indexing, URL Fetching, Geolocation, ...
  • 48. Сервисы Аналогичны модулям ядра в Linux. Logging, Storage, Search & Indexing, URL Fetching, Geolocation, ... 20 © SimpleDesktops.com Теперь все приложения — тоже сервисы.
  • 49. Локатор 21 © SimpleDesktops.com Discovery & Arbitration. Для обращения к сервису нужно знать только его имя.
  • 50. Локатор Discovery & Arbitration. Для обращения к сервису нужно знать только его имя. 21 © SimpleDesktops.com Мы отказались от IDL, все метаданные о сервисе приложение получает в рантайме.
  • 51. Локатор Discovery & Arbitration. Для обращения к сервису нужно знать только его имя. Мы отказались от IDL, все метаданные о сервисе приложение получает в рантайме. 21 © SimpleDesktops.com HTTP/2.0-like RPC. Непрозрачные бинарные потоки, мультиплексирование, расширяемость, распространённость.
  • 52. Плагины 22 © SimpleDesktops.com Сервисы — это абстрактные фронтэнды к разнообразным функциям инфраструктуры.
  • 53. Плагины Сервисы — это абстрактные фронтэнды к разнообразным функциям инфраструктуры. 22 © SimpleDesktops.com Logging Service может быть реализован как через Syslog, так и через Logstash.
  • 54. Плагины Сервисы — это абстрактные фронтэнды к разнообразным функциям инфраструктуры. Logging Service может быть реализован как через Syslog, так и через Logstash. 22 © SimpleDesktops.com Смена реализации делается через изменение конфига. Код приложений остаётся неизменным.
  • 55. Storage Service 23 © SimpleDesktops.com Система хранения — это фундамент для любой облачной платформы.
  • 56. Storage Service Система хранения — это фундамент для любой облачной платформы. 23 © SimpleDesktops.com Самое главное, такая система должна быть надёжной, включая защиту от котиков и безумных экскаваторщиков.
  • 57. Storage Service Система хранения — это фундамент для любой облачной платформы. Самое главное, такая система должна быть надёжной, включая защиту от котиков и безумных экскаваторщиков. 23 © SimpleDesktops.com Мы используем Elliptics.
  • 59. Elliptics Надёжнее, чем молитва. 24 © SimpleDesktops.com Вторичные индексы, стриминг, кэш, server-side processing и все остальные ключевые слова из других систем хранения данных.
  • 60. Elliptics Надёжнее, чем молитва. Вторичные индексы, стриминг, кэш, server-side processing и все остальные ключевые слова из других систем хранения данных. 24 © SimpleDesktops.com И, главное, защита от атомной войны!
  • 61. Node Service 25 © SimpleDesktops.com Контролирует работу приложений — доставка на ноды, конфигурация, управление жизненным циклом.
  • 62. Node Service Контролирует работу приложений — доставка на ноды, конфигурация, управление жизненным циклом. 25 © SimpleDesktops.com Собирает и хранит метрики и статистику о работе приложений для балансировщика.
  • 63. Node Service Контролирует работу приложений — доставка на ноды, конфигурация, управление жизненным циклом. Собирает и хранит метрики и статистику о работе приложений для балансировщика. 25 © SimpleDesktops.com Поддерживаются процессы или контейнеры.
  • 64. © SimpleDesktops.com Контейнеры Контейнеры — это легковесная виртуализация. Нет гипервизора, все контейнеры делят одно ядро. 26
  • 65. © SimpleDesktops.com Контейнеры Контейнеры — это легковесная виртуализация. Нет гипервизора, все контейнеры делят одно ядро. Процессы работают в изолированных неймспейсах: pid, uid, ipc, network, filesystem, mounts, ... 26
  • 66. © SimpleDesktops.com Контейнеры Контейнеры — это легковесная виртуализация. Нет гипервизора, все контейнеры делят одно ядро. Процессы работают в изолированных неймспейсах: pid, uid, ipc, network, filesystem, mounts, ... Запуск контейнера происходит в сотни раз быстрее, чем запуск виртуальной машины. 26
  • 68. Docker Стандарт распространения приложений на базе Linux Containers. Поддерживается Red Hat, Rackspace, Cloudflare, Ebay, Mozilla, OpenStack, Chef, Puppet, ... 27
  • 69. Docker Стандарт распространения приложений на базе Linux Containers. Поддерживается Red Hat, Rackspace, Cloudflare, Ebay, Mozilla, OpenStack, Chef, Puppet, ... Единый контейнер, который будет работать как на ноутбуке разработчика, так и на кластере из сотен машин. 27
  • 70. Балансировка Layer 3. Это значит не только HTTP — какие угодно данные в любом формате. © SimpleDesktops.com 28
  • 71. Балансировка Layer 3. Это значит не только HTTP — какие угодно данные в любом формате. Балансировка в ядре: IPVS, IPv6, динамические веса, мгновенная реакция на изменения в кластере. © SimpleDesktops.com 28
  • 72. Балансировка Layer 3. Это значит не только HTTP — какие угодно данные в любом формате. Балансировка в ядре: IPVS, IPv6, динамические веса, мгновенная реакция на изменения в кластере. Routing Groups. Расщепление траффика между несколькими интерфейсно-совместимыми приложениями. © SimpleDesktops.com 28
  • 73. Планы на будущее 29 © SimpleDesktops.com Доступ к сервисам по токенам, аудит и, следовательно, биллинг.
  • 74. Планы на будущее Доступ к сервисам по токенам, аудит и, следовательно, биллинг. 29 © SimpleDesktops.com Поддержка Ruby, Racket и Java.
  • 75. Планы на будущее Доступ к сервисам по токенам, аудит и, следовательно, биллинг. Поддержка Ruby, Racket и Java. 29 © SimpleDesktops.com HTTP-only режим.
  • 77. Андрей Сибирёв Руководитель службы разработки облачных технологий kobolog @kobolog github.com/cocaine kobolog@yandex-team.ru © ООО «Яндекс», 2013 31