VMware Photon, новые облачные приложения и будущее ИТ-систем корпоративной разработки

Блог компании ИТ-ГРАД
VMware Photon, новые облачные приложения и будущее ИТ-систем корпоративной разработки

Сейчас не вызывает особого сомнения тот факт, что за контейнеризацией программного обеспечения будущее. Все крупные игроки рынка виртуализации представили свое решение (или хотя бы видение) по поддержке контейнеров, позволяющее упростить разработку и повысить переносимость приложений между ОС, гипервизорами и облаками. Как лидер рынка, VMware также включилась в эту гонку и предложила весьма любопытное решение для своих корпоративных пользователей — контейнеры на платформе vSphere. Мы уже писали о контейнерах от VMware в последних новостях, а теперь разберем вопрос подробнее.
Немного об идее

Контейнеры (или иначе контейнерная виртуализация) набирают популярность потому, что позволяют разрабатывать более современные приложения, доступные пользователям в любой момент и с любого устройства. Фокус делается на максимальную гибкость, микросервисную архитектуру с работой через API. Эта архитектура позволит запускать одно и то же приложение на мобильных и стационарных устройствах, а также в облачной среде с размещением данных в гибридной среде из нескольких ЦОД (или даже разных облачных провайдеров). И при этом не требуется специальных версий ПО под разные платформы! Довольно захватывающе.

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

Чтобы было нагляднее, попробую в двух словах объяснить идею контейнеров. Представьте, что у вас есть, например, клиент корпоративной CRM и его нужно установить всем пользователям компании. Вместо того чтобы искать версии под все существующие ОС и потом как-то все это устанавливать, вы просто разворачиваете контейнер с приложением в виртуальной среде, наподобие обычной VM. И уже с таким контейнерным приложением работают по сети пользователи. То есть это просто пакет с приложением и необходимыми ему для работы компонентами, который можно запустить на любом устройстве благодаря технологиям виртуализации. Конечно, этот пример крайне примитивен и не учитывает особенностей таких приложений, но для формирования общего представления подойдет.

Именно на нативные облачные приложения делает ставку VMware. Впрочем, внезапной революции не предвидится — компания не предлагает отказываться от всех традиционных программ. Вместо этого ожидается некий переходный период, при котором у разработчиков появятся новые инструменты для переноса старых приложений в гибридную среду. В то же время при разработке новых решений вендор рекомендует обратить внимание на более перспективные варианты. Логично.

Чтобы помочь с переходом и заложить фундамент будущей архитектуры, VMware представила сразу несколько проектов для унифицированного гибридного облака:
  • vSphere Integrated Containers — решение для запуска в формате контейнеров обычных приложений;
  • Photon Platform — платформа для запуска нативных облачных приложений нового формата.
В этой статье подробнее поговорим именно о Photon Platform, которая сейчас вызывает наибольший интерес общественности.

Photon Platform и новые облачные приложения

VMware vSphere Integrated Containers предлагается в качестве инфраструктуры для уже существующих приложений, благодаря которой компании смогут последовать всеобщей контейнеризации без существенных изменений в ПО, своей ИТ-инфраструктуре, а также в подходах к разработке и управлению. Продукт специально создан так, чтобы предоставить разработчикам свойственные контейнерам преимущества портативности и производительности с интеграцией в платформы автоматизации вроде CoreOS Tectonic, Docker и Pivotal.

Photon Platform и новые облачные приложения

Предполагается, что vSphere Integrated Containers будет использован в сценариях переноса существующей инфраструктуры в гибридное облако. Для тех, кто разрабатывает ПО без привязок к устаревшим системам и волен выбирать архитектуру, создана платформа Photon. Ее особенность заключается в том, что она не содержит некоторых дополнительных возможностей вроде миграции, балансировки нагрузки, систем повышения отказоустойчивости и т. п. Это может вызвать недоумение у любого инженера со стажем, но не стоит забывать, что платформа предназначена исключительно для приложений, разработанных по-новому. Все необходимые функции и «страховки» должны быть заложены в основу нативного облачного ПО.

Основные архитектурные отличия обоих продуктов для контейнерной виртуализации

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

Photon Platform состоит из двух компонентов:

  • Photon Controller — распределенный управляющий слой, предназначенный для работы с миллионами контейнеров приложений.
  • Photon Machine — виртуальный хост, который включает Photon OS и микровизор (крайне урезанная версия VMware ESX). На нем запускаются собственно облачные приложения.
Сам контейнер представляет собой виртуальную машину в минимально необходимой «комплектации» (в терминологии VMware — jeVM, just enough virtual machine). Такая jeVM не только формирует собой элемент контейнера, но и осуществляет изоляцию работающих внутри компонентов. Вы, наверное, спросите «так не в том ли вся идея — не в изоляции процессов?».

Отчасти это так. Но до тех пор, пока в дата-центрах контейнеры запускаются внутри виртуальных машин, изоляция процессов полезна только для родной платформы контейнеров. Новые версии vSphere фактически будут, по аналогии с Docker, представлять собой Linux-ядро для запуска контейнеризованных приложений, которые будут ресурсами Virtual Container Host в vCenter. jeVM будет включать в себя модернизированную версию Photon OS, которая благодаря этому будет «знать» о своей работе на vSphere.

В то же время полноценная Photon Platform выглядит довольно открытой для поддержки Docker, Cloud Foundry, Mesos и всего, что душа пожелает, для построения собственной работающей на API инфраструктуры. В общем, проект уже не напоминает «все тот же vSphere, но с костылями». В качестве хоста для запуска контейнеризованных приложений используется Photon Machine, в которой исполняется адаптированная версия ESX вместе с Photon OS. Машина представляет собой связку из гипервизора и Linux в формате пакета для установки на физические серверы.

Photon Machine разрабатывалась с фокусом на процесс производства ПО и за счет модели работы через API изначально оптимизирована для облачных приложений. С точки зрения нагрузки и масштабирования схема использования отдельных интерфейсов API для всех приложений исключает единую точку отказа, с которой мы привыкли бороться в традиционных серверных системах.

Взгляд в будущее
Несмотря на изрядную шумиху вокруг контейнеров, бессмысленно отрицать, что за таким подходом к разработке и распространению ПО будущее. К слову, VMware представила свое видение практически одновременно с Microsoft, и идеи у них похожие, так что общий вектор развития поддерживается основными игроками рынка виртуализации. Обе компании опираются на существующие (пусть и доработанные) гипервизоры в новых решениях, обе полагаются на тонкие микровизоры и ОС.

Взгляд в будущее

VMware разработала Photon Platform, чтобы превратить «контейнерный» подход из угрозы своему бизнесу в перспективное направление. Компания начала официально развивать его лишь в 2014 году, поэтому делать выводы о том, насколько верна выбранная ими стратегия, еще рано. Несмотря на все озвученные вендорами подобных решений плюсы, их будущее остается в руках ИТ-сообщества, которому предстоит определить роль и место контейнеров в облачной инфраструктуре.

На самом деле нативные облачные приложения — это несколько больше, чем просто запакованное в контейнер ПО. Да, в первую очередь это изначально созданное для работы в облачной среде приложение. Но немаловажен и бэкграунд — подход к проектированию инфраструктуры и разработке архитектуры приложений. И действительно прорывная, полностью облачная платформа не только должна поддерживать контейнеры, но и содержать прочие признаки современного подхода к проектированию ПО (идея микросервисов, разделение на разработку и продакшен и т. п.) и его эксплуатации (масштабируемость, высокая доступность). Действительно эффективные и полезные облачные приложения получатся только при разработке с учетом облачной специфики — с самых нижних уровней и до пользовательского интерфейса.

Зная определенный консерватизм в среде корпоративной разработки, сложно рассчитывать на быстрое распространение контейнеров в «энтерпрайзе». Но ведь у нас будет и переходный vSphere Integrated Containers.

Комментарии (0)


Добавление комментариев доступно только зарегистрированным пользователям. Используйте свою существующую учетную запись для авторизации. Если у Вас еще нет учетной записи на сайте ее можно создать пройдя несложную процедуру регистрации. Кстати, для входа на сайт, наравне с учетной записью на cloudzone.ru, можно использовать аккаунт из следующих популярных сервисов: Яндекс, Facebook, Google и LinkedIn