VMware Cloud Foundry: начало передела PaaS-рынка?

Конкуренция между облачными платформами усиливается с каждым годом, и чем более популярной становится концепция PaaS, тем более притягательным становится этот рынок для все большего числа крупных IT-компаний. Поэтому все уже привыкли, что на рынок регулярно выходят все новые игроки, предлагающие свое видение концепции облачных вычислений. Но совсем недавнее появление Cloud Foundry от компании VMware сразу обратило на себя всеобщее внимание: стало понятно, что на этом тесном рынке внезапно появился новый сильный игрок, а значит, на облачном Олимпе грядут новые большие перемены. Сегодня мы попробуем по горячим следам разобраться, что же из себя представляет Cloud Foundry, и что нового она привнесла на рынок PaaS-хостинга.

Готовая среда разработки

Как уже было сказано выше, совсем недавно VMware запустила уникальную инициативу, названную Cloud Foundry. С точки зрения разработчика - это PaaS-сервис, в котором можно бесплатно зарегистрироваться, залогиниться и начать сразу писать в удобном редакторе код нового приложения на множестве популярных языков программирования: на Java, на языке Ruby, на группе языков, работающих поверх JVM. Фактически, предоставляется уже готовый набор различных сред программирования, подобно тому, как это сделано в Engine Yard или Heroku. Кроме того, для полноценного развертывания и сопровождения приложения на выбор доступен целый набор из баз данных, это MySQL, Redis, MongoDB, в самое ближайшее время ожидается появление поддержки RabbitMQ. Короче говоря, для программиста это даже больше, чем MS Visual Studio, - это целая готовая инфраструктура для создания приложений любых масштабов. Если учесть ее реальную мультиплатформенность и облачность, то о таких возможностях раньше можно было только мечтать, впрочем, давайте обо всем по порядку.

Редакции предлагаемых облаков

Главная особенность всех редакций – это полная независимость от конкретного проводника платформы, то есть в любой момент вы можете запустить эту платформу самостоятельно, перенести ее целиком, или только ваше приложение отдельно, на другого cloud-хостера. При этом всего существует четыре варианта работы с Cloud Foundry:

1) Это коммерческий хостинг от родоначальника этой платформы, VMware - cloudfoundry.com. Пока этот сервис находится в стадии тестирования, на хостинге можно зарегистрироваться и пользоваться им и его сервисами бесплатно. Компания VMware заявляет, что пока у нее нет даже примерных цен на будущие услуги этого хостинга;

2) Любой другой облачный хостинг, располагающий соответствующей серверной инфраструктурой, может бесплатно и независимо развернуть эту платформу на своих мощностях. И хотя технически эта платформа исполняется “на верхушке” коммерческих инфраструктур vSphere и vCloud, она вполне может быть запущена на базе других подобных облачных инфраструктур. Партнер VMware, компания RightScale, уже продемонстрировала удачный запуск приложений Cloud Foundry во внешних сервисах, таких как Amazon Web Services. Но поскольку это открытая технология, она может быть запросто адаптирована для запуска на базе таких сервисов, как Eucalyptus or OpenStack. Уже буквально сегодня о подготовке к запуску этой услуги заявил крупный облачный провайдер Joyent.

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

4) Дополнительно поддерживается создание собственных локальных cloud-инфраструктур (micro-cloud), которые можно будет запускать на своем рабочем компьютере, даже без подключения к сети Интернет. В этом случае технически система будет поставляться в виде образа операционной системы, то есть разработчики будут иметь возможность запустить локально тестовый узел на базе Ubuntu 10.04 для любой разработки и отладки своих приложений для Cloud Foundry. Пакет Cloud Foundry Micro Cloud позволит максимально упростить создание локальных cloud-окружений на базе Cloud Foundry и технически будет оформлен в виде образа виртуальной машины, который можно запустить под управлением бесплатного VMware Player.

Код внутренних подсистем проекта, развиваемый в рамках проекта vcap (написан на Ruby), а также интерфейсные части системы, связанные с созданием и развертыванием cloud-приложений, распространяются в исходных текстах в рамках лицензии Apache 2.0. Например, для загрузки доступны исходные тексты движка для организации запуска приложений в инфраструктуре, контроллер cloud-окружений, система мониторинга, маршрутизатор вызовов, система управления жизненным циклом, движок для развертывания приложений в инфраструктуре, клиентское приложение для управления из командной строки, средства для интеграции с типовыми инструментами разработки и программными фреймворками, интерфейс для создания сервисов (Application Services Interface) и интерфейс для обеспечения работы cloud-окружений (Cloud Provider Interface).

Языки разработки

На данный момент в cloud-инфраструктуре Cloud Foundry поддерживается запуск нативных приложений, разработанных на языке Java с использованием Spring, на языке Ruby с использованием Rails и Sinatra, JavaScript (Node.js) и языков, работающих поверх JVM, включая Grails. В качестве сопутствующих баз данных имеется возможность использовать MySQL, Redis и MongoDB, RabbitMQ. Для подготовки такой впечатляющей поддержки среды Java ранее VMware пришлось поглотить компанию SpringSource, что и дало ей возможность реализовать полную поддержку этого языка и популярного фреймворка Spring. Давнее партнерство с Joyint привело к реализации Node.js и т.д. Таким образом видно, какую огромную предварительную работу провела VMware по созданию самой возможности реализации этой платформы.

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

Главные отличия Cloud Foundry

Cloud Foundry - это первый OpenSource-проект в сегменте PaaS промышленного уровня: в отличие от других похожих открытых cloud-платформ, таких как OpenStack, CloudStack, Xen Cloud Platform, OpenNebula и Eucalyptus, PaaS-платформа Cloud Foundry ориентирована на запуск в облаке конечных приложений, а не образов операционных систем. То есть Cloud Foundry впервые сделала акцент на PaaS (платформа как сервис), тогда как до этого все подобные инициативы были нацелены на сегмент IaaS (инфраструктура как сервис). Что усиливает эффект новизны, Cloud Foundry выполнена в виде мульти-облачной платформы, которая позволяет выбрать каждому игроку на рынке наиболее удобный ему вариант облачного хостинга. Чтобы стимулировать адаптацию и минимизировать трудности по переносу своей платформы на конкурирующие облачные площадки, технологию решено сделать открытой, тактически жертвуя привязкой клиентов к себе, но стратегически выигрывая на потенциальной популярности и привлекательности такой открытой платформы.

Во время вебинара, посвященного анонсу новой платформы, главный менеджер VMware по подразделению SpringSource Род Джонсон (Rod Johnson) отметил, что за последние несколько лет в области ИТ-приложений произошло две существенных перемены. Во-первых, появилось множество новаторских систем разработки с открытым кодом, созданных разработчиками для разработчиков – эти системы позволили добиться радикального упрощения и повышения эффективности работы программистов по сравнению с традиционными системами. Во-вторых, произошла революция в области виртуализации, позволяющая отвязать приложение от физического оборудования, на котором оно выполняется. Однако революция на верхнем (системы разработки) и на нижнем (виртуализация) уровнях никак не затронула промежуточный уровень – так называемое ПО среднего слоя, к которому относятся, в частности, серверы приложений Java. В последнее время в этой области не происходило практически никаких изменений, и проект Cloud Foundry призван восполнить этот пробел.

Появление качественного решения с открытым кодом, гарантирующее независимость от поставщика при переходе на облачные вычисления, самым неприятным образом ударит по интересам других поставщиков, которые не раскрывают исходные коды своих платформ и потому не могут предоставить аналогичных гарантий. В первую очередь, это касается Google App Engine и Microsoft Azure. В условиях конкуренции со стороны VMware другие поставщики PaaS, вероятно, также ускорят публикацию исходных текстов своих решений. “Я считаю, что рано или поздно мы откроем исходный код наших разработок. Открытость технологий — это стратегически важный момент”, – говорит Руслан Синицкий (проект Hivext). Однако первоочередная задача Hivext в настоящий момент – это, все же, не раскрытие исходных кодов, а создание зрелой версии сервиса и запуск ее в коммерческую эксплуатацию. Топ-менеджер VMware Джерри Чен резюмирует: “Мы верим, что существующие облачные платформы (в первую очередь такие, как Azure and App. Engine) – концептуально неполноценны. До сих пор не существует ни одной мульти-облачной платформы – одновременно в публичной и частной версии, - и при этом ни одна из платформ изначально не проектировалась быть открытой сразу множеству фреймворкам и языкам программирования. Мы даем разработчикам свободу выбирать удобные им средства разработки, мы даем возможность провайдеру выбирать удобный ему способ размещения инфраструктуры, мы даем покупателям выбирать подходящего им провайдера”.

Публикация исходных текстов Cloud Foundry под открытой лицензией – сознательный шаг VMware: “Открытый код – это цена за вход на рынок облачных вычислений сегодня”, – сообщил Чарльз Фитцджеральд, стратег по платформам VMware.

Игорь Савчук internetno.net


Компьютерная газета. Статья была опубликована в номере 19 за 2011 год в рубрике интернет

©1997-2024 Компьютерная газета