Red Hat разрабатывает новый этапный релиз своей PaaS-технологии (платформа как сервис) OpenShift со сдвигом в сторону контейнеров Docker и системы оркестровки Kubernetes. Будущая платформа OpenShift 3 откроет следующую страницу в продолжающейся эволюции PaaS-проекта Red Hat, который начался с приобретения в 2010 г. компании Makara.

Оригинальный код Makara был переработан уже с выпуском OpenShift 2.x, а в предстоящем релизе OpenShift 3 от первоначального кода Makara уже ничего не останется, сообщил Джо Фернандес, директор Red Hat по управлению продуктами для OpenShift. Сердцевиной крупных перемен в будущем релизе OpenShift 3 является перефокусировка PaaS вокруг контейнеров Docker.

В предстоящем релизе OpenShift 3 предполагается интеграция технологий Docker и Google Kubernetes в качестве основы облачной платформы Red Hat как сервиса.

«OpenShift 3 реально отражает то, что происходило в сфере Open Source и Linux-контейнеров под влиянием Docker и других проектов, которые возникли вокруг Docker, включая Kubernetes и Atomic», — пояснил Фернандес представителям портала eWeek.

Docker является открытой технологией для виртуализации приложений посредством контейнеров, популярность которой выросла за последний год. Проект Red Hat Atomic ставит задачей создать оптимизированную Linux-платформу для Docker, тогда как Kubernetes — открытый проект, реализуемый Google для оркестровки контейнеров.

Проект OpenShift изначально строился вокруг технологии Linux-контейнеров, хотя Docker он не использовал. По словам Фернандеса, с Docker родился стандарт того, как можно управлять контейнерами и как можно управлять приложениями, чтобы они работали внутри контейнера.

Одной лишь технологии Docker для полноценной PaaS недостаточно, и еще требуется система оркестровки, помогающая развертывать и управлять работающими в контейнерах приложениями, говорит Фернандес. Вот здесь-то вступает в игру открытый проект Google Kubernetes. «В плане управления крупномасштабной оркестровкой у Google больше опыта, чем у кого бы то ни было, учитывая, что компания долгое время эксплуатирует контейнеры в больших масштабах», — отметил Фернандес.

В наиболее свежем релизе OpenShift 2.2 компания Red Hat использует собственную реализацию контейнеров под названием Gears. Причем внутри Gear действует картридж OpenShift. Хотя есть немало приложений, доступных в форме картриджей OpenShift, гораздо больше приложений упакованы в форме образов Docker. «В OpenShift 3 мы по существу устранили различие между Gear и Cartridge, — сообщил eWeek Ашлеш Бадани, вице-президент и главный управляющий проекта OpenShift в Red Hat. — Теперь все дело в наличии разных контейнеров».

Ключевая задача Red Hat состоит в том, чтобы открыть для своих пользователей мир гибридных облаков, где рабочие нагрузки можно развертывать в физической или виртуальной инфраструктуре, равно как в частных или публичных облаках. По словам Бадани, используя стандарты типа Docker, легче обеспечивать интероперабельность между по-разному развернутыми средами.

По словам Фернандеса, одним из главных преимуществ Docker является переносимость и то, что один и тот же образ Docker можно запустить в облаке Amazon, в OpenStack или на голом железе.

«Работая над OpenShift, мы стремимся предоставить наилучшую среду для эксплуатации контейнеров. Мы хотим дать людям наилучшие возможности для выстраивания своих приложений и управления ими в течение жизненного цикла», — говорит Фернандес.

Приложения

С отходом от Gears и Cartridges компания преобразует все приложения из версий, поддерживавшихся как Cartridges, в новый формат образов Docker для OpenShift 3. Освоившись с Docker, пользователи OpenShift смогут добывать то, что им нужно, и из других репозиториев Docker-приложений, включая публичный Docker Hub. В перспективе у Red Hat также появятся сервисы миграции для пользователей, заинтересованных в переносе заказных приложений, еще не готовых к использованию в Docker.

Для развертывания корпоративных приложений обычно требуются сетевые ресурсы и ресурсы хранения данных, которые также являются частью Red Hat OpenShift 3. Фернандес пояснил, что в Kubernetes каждый контейнер получает свой IP-адрес. Для сетевого соединения многочисленных контейнеров, размещенных на разных хост-серверах, в Kubernetes уже имеются соответствующие возможности, реализуемые при работе в облаке Google.

«Работая с Google и другими компаниями, мы стремимся гарантировать, чтобы сетевая абстракция функционировала независимо от того, где вы эксплуатируете Kubernetes или OpenShift», — сказал Фернандес.

В Kubernetes также имеется модель для присоединения к контейнерам томов памяти хранения данных. В OpenShift 3 ставится задача создать возможности для отображения памяти контейнеров в корпоративные технологии хранения данных.

С точки зрения перспективы доступности продукта для пользователей Red Hat имеет для OpenShift три потока, включая продукт сообщества открытого исходного кода OpenShift Origin, продукт OpenShift Online и продукт OpenShift Enterprise. Разработка функций OpenShift 3 осуществляется в Origin, и ряд крупных клиентов Red Hat уже приступил к тестированию технологии. По словам Фернандеса, в феврале вероятно выйдет в свет официальная бета-версия OpenShift Enterprise.