Разработчики: | VMware |
Дата премьеры системы: | апрель 2011 |
Технологии: | Cloud Computing, PaaS - Platform As A Service - Бизнес-платформа как сервис |
Содержание |
В апреле 2011 г. VMware анонсировала собственную PaaS-платформу с открытым кодом Cloud Foundry, которая упростит и ускорит разработку и развертывание приложений `в облаке` с использованием различных сред разработки (Spring, Rails, node.js) на базе различных облачных инфраструктур (в т.ч. на Amazon Web Services, в приватном облаке или на локальном компьютере). Появление Cloud Foundry бросает серьезный конкурентный вызов ряду компаний: Google, Microsoft, IBM, Red Hat. Cloud Foundry составит конкуренцию и отечественной PaaS-платформе Hivext, разработчики которой также задумываются о раскрытии исходных текстов[1].
Это первая `громкая` OpenSource-инициатива в сегменте PaaS: до сих пор известные облачные платформы с открытым кодом, такие как OpenStack и Eucalyptus, преимущественно затрагивали сегмент IaaS (инфраструктура как сервис).
Cloud Foundry позволит программистам вести разработку и внедрение приложений, основанных на различных популярных системах разработки (таких как Spring, Ruby on Rails, node.js) с использованием различных дополнительных сервисов (MySQL, Redis, MongoDB, RabbitMQ). При этом облако Cloud Foundry можно размещать на специализированной площадке CloudFoundry.com, на корпоративном сервере, на инфраструктуре поставщика публичных IaaS-услуг (например, Amazon Web Services) или даже на ноутбуке разработчика (в последнем случае используется адаптированная версия Micro Cloud). Как развертывание приложения в облаке, так и перенос облака из одной среды в другую при использовании Cloud Foundry отнимают у разработчиков минимум времени.
По мнению Руслана Синицкого, руководителя отечественного проекта по созданию PaaS-платформы Hivext, Cloud Foundry составит серьезную конкуренцию существующим PaaS-решениям: `VMware имеет в арсенале SpringSource, в составе которого, в свою очередь, доступен широкий спектр популярных фреймворков для разработчиков. А заявленная открытость Cloud Foundry может еще больше усилить лояльность клиентов`.
Архитектура Cloud Foundry
Во время вебинара, посвященного анонсу новой платформы, главный менеджер VMware по подразделению SpringSource Род Джонсон (Rod Johnson) отметил, что в последние несколько лет в области ИТ-приложений произошло две существенных перемены. Во-первых, появилось множество новаторских систем разработки с открытым кодом, созданных разработчиками для разработчиков – эти системы позволили добиться радикального упрощения и повышения эффективности работы программистов по сравнению с традиционными системами. Во-вторых, произошла революция в области виртуализации, позволяющая отвязать приложение от физического оборудования, на котором оно выполняется. Однако революция на верхнем (системы разработки) и на нижнем (виртуализация) уровнях никак не затронула промежуточный уровень – так называемое ПО среднего слоя, к которому относятся, в частности, серверы приложений Java. В последнее время в этой области не происходило практически никаких изменений, и проект Cloud Foundry призван восполнить этот пробел.Гид по NGFW. 10 наиболее заметных продуктов, доступных на российском рынке
Публикация исходных текстов Cloud Foundry под открытой лицензией – сознательный шаг VMware: `Открытый код – это цена за вход на рынок облачных вычислений сегодня`, – сообщил Чарльз Фитцджеральд (Charles Fitzgerald), стратег по платформам VMware в интервью изданию GigaOM.
Появление качественного решения с открытым кодом, гарантирующее независимость от поставщика при переходе на облачные вычисления, самым неприятным образом ударит по интересам других поставщиков, которые не раскрывают исходные коды своих платформ и потому не могут предоставить аналогичных гарантий. В первую очередь, это касается Google App Engine и Microsoft Azure. В условиях конкуренции со стороны VMware другие поставщики PaaS, вероятно, также ускорят публикацию исходных текстов своих решений.
`Я считаю, что рано или поздно, мы откроем исходный код наших разработок. Открытость технологий это стратегически важный момент`, – говорит Руслан Синицкий. Однако первоочередная задача Hivext в настоящий момент – это, все же, не раскрытие исходных кодов, а создание зрелой версии сервиса и запуск ее в коммерческую эксплуатацию.
По мнению Фитцджеральда, запуск Cloud Foundry серьезно ударит по коммерческим интересам IBM, которая сегодня зарабатывает миллиарды долларов, оказывая услуги по интеграции облачных сервисов (предполагается, что при использовании Cloud Foundry необходимость в таких услугах отпадет). Однако самым непосредственным конкурентом Cloud Foundry являются не перечисленные компании, а Red Hat, которая также стремится продвигать облачную PaaS-платформу с возможностью создания масштабируемых Java-приложений на базе JBoss и недавно приобретенного стартапа Makara. Однако предложение от Red Hat пока не приобрело на рынке существенной популярности.
Создание проекта Cloud Foundry стало возможным для VMware в результате приобретения SpringSource, разработчика популярного фреймворка Spring, позволяющего радикально упростить и ускорить разработку Java-приложений. Совсем недавно к VMware также присоединилась группа разработчиков облачного сервиса для резервного хранения данных Mozy, которая была передана в VMware от материнской компании EMC. При создании сервиса Cloud Foundry были использованы ресурсы обеих команд.
На апрель 2011 г. сервис CloudFoundry.com уже доступен в режиме опытной эксплуатации (до конца тестирования плата за пользование сервисом взыматься не будет), также запущен сайт для сообщества CloudFoundry.org, где можно получить исходные тексты платформы. Версию для запуска на локальных машинах разработчиков Micro Cloud можно будет загрузить через несколько недель.
Платформа Cloud Foundry имеет три измерения. Первое измерение связано с выбором платформ, второе – с выбором приложений и третье измерение – с выбором типа развертывания. Ниже мы посмотрим, что можно выбрать.
Выбор платформы
Cloud Foundry поддерживает следующие платформы Spring для Java, Rails и Sinatra для Ruby, Node.js и языки JVM типа Groovy, Grails и Scala. Она также поддерживает Microsoft .NET Framework и стала первой платформой, которая не была создана компанией MicroSoft с поддержкой .NET. Выбор платформы делает Cloud Foundry достаточно интересным продуктом для разработчиков облачных приложений.
Выбор приложений
Разработчикам облачной эры требуется поддержка надежной системы обмена сообщениями, поддержка баз данных, так называемых NoSQL вместе с реляционными БД. Cloud Foundry включает поддержку RabbitMQ в качестве системы обмена сообщениями, MongoDB и Redis в качестве NoSQL и MySQL, используемой в качестве реляционной базы данных. Список поддерживаемых сервисов растет и Cloud Foundry стала поддерживать PostgreSQL.
Выбор типа развертывания
Cloud Foundry можно развертывать в публичном облаке и даже на ноутбуках с использованием Micro Cloud Foundry. Micro Cloud Foundry это версия Cloud Foundry, предназначенная для установки на виртуальных машинах PC или Mac. Она также может развертываться в частном облаке в пределах компании, или в публичном облаке типа Amazon Web Services. Это делает Cloud Foundry чрезвычайно гибким и интересной платформой.
Развертывание приложений в Cloud Foundry
Разработчики могут развертывать приложения с помощью плагинов Spring Source Tool Suite (STS) или Command line Ruby Gem под названием VMC. Система обмена сообщениями, можно сказать является нервной системой Cloud Foundry. Это центральная система взаимодействия, которая позволяет всем компонентам общаться друг с другом.
Маршрутизаторы обрабатывают весь HTTP-трафик, направляющийся приложениям. Они выделяют URL-адреса для приложений, а также выполняет равномерное распределение трафика между экземплярами. Облачные контроллеры являются главными компонентами, которые выполняют компоновку и размещение приложений. Они привязывают разнообразные сервисы к приложениям. С их помощью отображается REST API.
Health Manager (менеджер технического состояния) контролирует состояние всех работающих приложений. В случае отказа приложения, он информирует об этом облачные контроллеры.
DEA обозначает Droplet Execution Agent. Каждый элемент исполняемого кода представляется как дроплет (droplet) в Cloud Foundry. Этот дроплет абстрагирует базовый код и показывает элемент родового исполняемого кода.
Платформа Cloud Foundry быстро набирает популярность как открытый сервис Open PaaS. Многие поставщики заявляют о своей поддержке данной облачной платформы. Cloud Foundry сможет создать сильную конкуренцию другим поставщикам сервисов PaaS.
Примечания
Подрядчики-лидеры по количеству проектов
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
Распределение систем по количеству проектов, не включая партнерские решения
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
Подрядчики-лидеры по количеству проектов
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
Распределение систем по количеству проектов, не включая партнерские решения
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)