Контейнерная виртуализация. Золушка в облаках

Post on 16-Jun-2015

675 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Слайды доклада с конференции Российские Интернет Технологии 2013 http://ritconf.ru Для обеспечения работы крупных веб-проектов как правило реализуются два сценария: железный и облачный. Классический железный сценарий предполагает решение задачи в лоб и чреват серьезными осложнениями в дальнейшем. Более модный облачный вариант выбирают все чаще. В этом случае речь идет о построении инфраструктурного облака с использованием гипервизора: полной виртуализации (как правило, VMware), либо паравиртуализации (как правило, XEN). В докладе предлагается третий сценарий развития веб-проектов: построение облака с использованием контейнерной виртуализации Parallels Virtuozzo Containers (виртуализация на базе операционной системы) на примере Русоникса. Опыт Русоникса - это тысячи виртуальных серверов для тысяч разноплановых веб-проектов с заведомо непредсказуемым поведением на базе контейнерной виртуализации и типового железа. Контейнеры обеспечивают невероятную плотность и эффективность использования физических ресурсов. Технология используется, например, в Google для выполнения важнейших задач, таких как вывод результатов поиска и показ контекстных объявлений. Однако, несмотря на все преимущества, контейнерная виртуализация остается в тени и на практике известна не так широко, как VMware в корпоративном мире или XEN в облачно-амазонном.

TRANSCRIPT

Контейнерная виртуализация Золушка в облаках

Юрий Устинов Русоникс

18+

Золушка в облаках

Контейнерная виртуализация

18+

тысячи веб-проектов

Схема Русоникса

тысячи веб-проектов

тысячи виртуальных серверов

Схема Русоникса

тысячи веб-проектов

тысячи виртуальных серверов

Схема Русоникса

Железный сценарий

Железный сценарий

Железный сценарий

Железный сценарий

Железный сценарий

Железный сценарий

Железный сценарий

!@#$%^&

Железный сценарий

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

гибкости.

Есть: простой ресурсов; медленный старт.

Железный сценарий

Облачный сценарий

Облачный сценарий

Облачный сценарий

Облачный сценарий

Облачный сценарий

Облачный сценарий

Нет: оверкоммита (нельзя раздать > 100%)

Есть: относительно быстрый старт Вирт.Машин. простой ресурсов; потери на гипервизор и гостевые ОС.

Контейнерная виртуализация

Контейнерная виртуализация

Контейнерная виртуализация

Контейнерная виртуализация

Контейнерная виртуализация

Контейнерная виртуализация

Контейнерная виртуализация

Контейнерная виртуализация

Нет: ОС с различными ядрами на одном хосте

Есть: оверкоммит (можно раздать > 100%); максимальная утилизация ресурсов; мгновенный старт контейнеров.

Пример: контейнеры в Google

Подробнее: Tim Hockin, Control Loops In Userspace http://bit.ly/109hHcH

Task 1 Task 2 Task 3

Пример: контейнеры в Google

Подробнее: Tim Hockin, Control Loops In Userspace http://bit.ly/109hHcH

Task 1 Task 2 Task 3

20%

80%

50%

Пример: контейнеры в Google

Подробнее: Tim Hockin, Control Loops In Userspace http://bit.ly/109hHcH

20%

80%

50%

Пример: контейнеры в Google

Подробнее: Tim Hockin, Control Loops In Userspace http://bit.ly/109hHcH

20%

80%

50% Tier 1

Tier 1

Tier 1

Tier 2

Tier 2

Tier 2

Tier 2

Tier 2

Пример: контейнеры в Google

Подробнее: Tim Hockin, Control Loops In Userspace http://bit.ly/109hHcH

Tier 1

Tier 1

Tier 1

Tier 2

Tier 2

Tier 2

Tier 2

Tier 2

Пример: контейнеры в Google

Подробнее: Tim Hockin, Control Loops In Userspace http://bit.ly/109hHcH

Tier 1

Tier 1

Tier 1

Tier 2

Tier 2

Tier 2

Tier 2

Tier 2

Пример: контейнеры в Google

Подробнее: Tim Hockin, Control Loops In Userspace http://bit.ly/109hHcH

Tier 1

Tier 1

Tier 1

Tier 2

Tier 2

Tier 2

Tier 2

Tier 2

Tier 1

Tier 1 Tier 1

Tier 2

Tier 2

Tier 2

Пример: контейнеры в Русониксе тысячи

веб-проектов тысячи

виртуальных серверов

Пример: контейнеры в Русониксе

виртуализация с 2001 года

первое публичное веб-облако в РФ

одно из первых в мире

Технология: Parallels Virtuozzo Containers

Пример: контейнеры в Русониксе

Только типовые серверы: DELL PE R610, R420

CPU: Intel 2 x 6-core XEON (итого 24 треда)

RAM: 32 Gb

Диски: 6 x SAS (2,5”, 10k RPM) в RAID 10

Пример: контейнеры в Русониксе

Никаких модных железок

Ни инфинибэнда

Ни блейдов

Ни чудо-дисковых хранилищ

Пример: контейнеры в Русониксе

Автоматизация:

Группы серверов Группы тарифов

Пример: контейнеры в Русониксе

Файловая система VZFS:

Новый контейнер

OS Templates

EZ Templates

CentOS

smth

apache

MySQL

nginx

smth

Пример: контейнеры в Русониксе

Файловая система VZFS:

OS Templates

EZ Templates Новый контейнер

CentOS

smth

apache

MySQL

nginx

smth

CentOS

MySQL smth

apache nginx

Пример: контейнеры в Русониксе

Файловая система VZFS:

OS Templates

EZ Templates Новый контейнер

CentOS

smth

apache

MySQL

nginx

smth

CentOS

MySQL smth

apache nginx

# touch

Пример: контейнеры в Русониксе

Файловая система VZFS:

OS Templates

EZ Templates Новый контейнер

CentOS

smth

apache

MySQL

nginx

smth

CentOS

MySQL smth

apache nginx

# touch

Пример: контейнеры в Русониксе

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

EZ Template: apache

code code code code code code

data data data data data data

Пример: контейнеры в Русониксе

EZ Template: apache

exec exec exec exec exec exec

data data data data data data 1 – 2 Гб памяти

зависит от кол-ва контейнеров и гомогенности ПО

экономия

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

Пример: контейнеры в Русониксе

Новый контейнер:

OS Template + EZ Templates

выполнение команд внутри контейнера индивидуальная конфигурация под клиента

Кастомизация:

vzagent, XML API +

Пример: контейнеры в Русониксе

Изоляция контейнеров и ограничения по ресурсам:

CPU RAM DISK DISK IO LAN

CPU Limit (MHz, ядра)

CPU Unit (вес)

Пример: контейнеры в Русониксе

Изоляция контейнеров и ограничения по ресурсам:

CPU RAM DISK DISK IO LAN

physpages swappages

VSwap

+UBC custom tuning

Пример: контейнеры в Русониксе

Изоляция контейнеров и ограничения по ресурсам:

CPU RAM DISK DISK IO LAN

Жесткое ограничение по объему диска

Пример: контейнеры в Русониксе

Изоляция контейнеров и ограничения по ресурсам:

CPU RAM DISK DISK IO LAN

CFQ, 10 Мбит/с

Обычные ноды:

Deadline, неогр

Ноды для грузчиков:

Пример: контейнеры в Русониксе

Изоляция контейнеров и ограничения по ресурсам:

CPU RAM DISK DISK IO LAN

10-70 Мбит/с

Output:

Пример: контейнеры в Русониксе

Изоляция контейнеров и ограничения по ресурсам:

CPU RAM DISK DISK IO LAN

Мгновенное изменение

на лету

Пример: контейнеры в Русониксе

Тип A Тип A

Тип A Тип A

Тип A Тип A

Тип Б

Тип Б

Балансировка нагрузки, смена тарифа, живая миграция

Пример: контейнеры в Русониксе

Тип A Тип A

Тип A Тип A

Тип A Тип A

Тип Б

Тип Б

Балансировка нагрузки, смена тарифа, живая миграция

Пример: контейнеры в Русониксе Балансировка нагрузки, смена тарифа, живая миграция

Тип A Тип A

Тип A Тип A

Тип A

Тип Б

Тип Б

Тип Б

Пример: контейнеры в Русониксе Балансировка нагрузки, смена тарифа, живая миграция

Тип Б

Тип Б

Тип Б

Пример: контейнеры в Русониксе Балансировка нагрузки, смена тарифа, живая миграция

Тип Б

Тип Б

Тип В /аренда сервера/

Пример: контейнеры в Русониксе Встроенное резервное копирование

node node

node node

Backup node

Итого

• Высочайшая плотность размещения

• Максимальное использование ресурсов

• Изоляция между клиентами

• Простое и быстрое обслуживание

Итого

• Авто активация и кастомизация

• Авто масштабирование, миграция

• Мгновенный старт и уничтожение сервера

• Прозрачный переход на выделенный сервер

Юрий Устинов /Русоникс/ FB: yuri.ustinov rusonyx TWT: @sukahitriy @rusonyx EML: u@rsnx.ru hr@rusonyx.ru

Спасибо, RIT++

top related