Rambler's Top100
 
Статьи ИКС № 3 2018
АНДРЕЙ ЗАХАРОВ  20 сентября 2018

Контейнеры как новый облачный тренд

Контейнерная виртуализация – the next big thing в сфере облачных технологий. Почему такие гиганты, как Microsoft, Google и Amazon, инвестируют в нее, и чем эти разработки привлекают айтишников по всему миру?

Традиционная виртуализация уже не успевает за стремительным ростом рабочих нагрузок. Эмуляция физического сервера, виртуальные машины с гостевыми операционными системами, развертывание монолитных приложений в этой среде – все это представляет собой нагрузку, от которой многие компании начинают избавляться, переходя на микросервисную архитектуру и контейнеры.

Современный подход заключается в том, чтобы исключить слой эмуляции и обеспечить прямой доступ приложений ко всем необходимым ресурсам. Контейнерная виртуализация (container-based virtualization) – это в некотором роде возврат к модели мейнфреймов IBM и Sun Microsystems в новом технологическом исполнении. Одно ядро и одна ОС делятся между всеми работающими на ней приложениями. Веб-сервер, база данных, почтовый сервер, кэширующий сервер -- все нужные для работы компоненты не разворачиваются в виртуальной среде, а находятся в специальных контейнерах. При таком подходе реализуется микросервисная архитектура, в которой компоненты ИТ-системы распределены и взаимодействуют друг с другом при помощи сетевых протоколов и API.

Технологии контейнеризации построены на свободном ПО. Наиболее популярный формат, ставший де-факто отраслевым стандартом, -- Docker, наиболее популярная платформа – Kubernetes, оболочка для оркестрации контейнеров. Изначально решение Kubernetes использовалось для внутренних нужд Google, на рынок его вывели в 2013 году, и теперь оно свободно распространяется как для развертывания на серверных мощностях пользователей, так и в качестве сервиса из облаков Google, AWS и Microsoft Azure.

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

Оптимизация ресурсов, скорость развертывания и масштабирование

На один физический сервер при контейнерном развертывании удается поместить в 2--3 раза больше приложений, чем при использовании классической модели виртуальных машин. Гостевые ОС не потребляют ценные ресурсы, единая платформа устраняет необходимость интеграции компонентов, не требуется резервировать запас ресурсов, все компоненты упакованы в контейнеры. Скорость развертывания из контейнеров – от нескольких секунд до минут, что в разы быстрее по сравнению с обычной виртуализацией. Размер контейнеров варьируется в пределах нескольких десятков мегабайт, что совсем немного по сравнению с виртуальными машинами минимальным размером от нескольких гигабайт.

В итоге – обслуживание большего числа обращений к системе на том же объеме «железа».

Масштабирование при контейнерном подходе происходит путем добавления физических или виртуальных нод (node), т.е. вычислительных узлов кластера. Это позволяет при необходимости заказывать увеличение объема потребляемых ресурсов с соответствующей моделью оплаты и таким образом отрабатывать пики нагрузки на ИТ-систему без капитальных затрат.

Новый уровень отказоустойчивости

В кластере контейнеры «размазываются тонким слоем» по множеству нод в рамках ИТ-системы. Ресурсы каждой ноды отслеживаются автоматически и дублируются. Если нода «вылетает», все вычисления с нее переносятся в другую область кластера. При этом с точки зрения пользователя в его работе с приложениями ничего не происходит. Для такого же уровня отказоустойчивости виртуальной машины нужно дублировать ее целиком: сервер, ОС и т.д.

Контейнеры несут в себе полноценную среду: приложение, все необходимые библиотеки, зависимые объекты и файлы настройки – все собрано в один пакет. За счет контейнеризации различия в ОС, конфигурациях и инфраструктуре, на которой происходит развертывание, полностью нивелируются. Таким образом контейнеры решают еще одну важную задачу -- обеспечивают надежную работу бизнес-приложений при смене ими вычислительной среды.

Защита инвестиций в ИТ


Контейнерные среды нетребовательны к «железу», на котором они развертываются. Более того, если вы уже вложили средства в создание классической платформы виртуализации, то можете разместить контейнеры и поверх виртуальных машин. Такие решения предлагает, например, VMware, позволяя на кластере серверов создавать виртуальные машины, на которые надстраивается Kubernetes-среда. Это дает возможность получить работающий слой контейнеров на существующей системе.

Еще один подход предлагает на базе своих продуктов SUSE: это решение Kubernetes уровня enterprise для десятка и более вычислительных узлов. Инфраструктура строится специально под контейнеры, все задачи по ее созданию передаются в ЦОД, далее на ней разворачивается все необходимое для эксплуатации приложений в контейнерной среде. Такой подход используется главным образом для систем e-commerce, ERP, онлайн-банкинга, а также бизнес-аналитики.

В целом рост популярности и стремительное проникновение контейнеров в рабочие процессы компаний во всем мире делают вложения в эту модель ИТ-архитектуры актуальными на долгую перспективу.

Широкий спектр применения и эволюция в сторону enterprise-сегмента

Контейнерные технологии присутствуют на рынке не первый год. Сегодня они приобретают универсальную актуальность и вызывают интерес как у разработчиков приложений, так и у enterprise-заказчиков. Крупный бизнес все чаще заказывает ИТ-системы у внешних разработчиков или начинает пользоваться новыми ИТ-сервисами, которые разрабатываются и запускаются на контейнерной архитектуре.

На данном этапе развития рынка контейнерную архитектуру оптимально получать «под ключ», в виде комплексной услуги, включающей серверы в ЦОДе, каналы связи и подготовленную под конкретные задачи контейнерную среду с технической и сервисной поддержкой.

С точки зрения сохранения конкурентоспособности в условиях цифровой экономики использование лучших ИТ-инструментов и адаптация к контейнерам – уже не опция, а необходимость.

Андрей Захаров, директор по продуктам и инновациям, Linxdatacenter
Поделиться:
Заметили неточность или опечатку в тексте? Выделите её мышкой и нажмите: Ctrl + Enter. Спасибо!