Cloud Foundry – PaaS

Изначально Cloud Foundry создавалась как платформа для развертывания приложений на базе Java Spring в сервисах Amazon Web Services. В апреле 2011 года компания VMware приобрела Cloud Foundry и превратила ее в полноценный открытый сервис PaaS (Platform as a service) с поддержкой большого числа языков и платформ, таких как: Java, Spring, Ruby, Scala и Node.js. Компания VMware называет этот продукт — Open PaaS, так как Cloud Foundry может работать на любой платформе, даже на вашем персональном компьютере.

     Платформа 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.

Рисунок1 Логика развертывания приложений в Cloud Foundry

     Health Manager (менеджер технического состояния) контролирует состояние всех работающих приложений. В случае отказа приложения, он информирует об этом облачные контроллеры.

     DEA обозначает Droplet Execution Agent. Каждый элемент исполняемого кода представляется как дроплет (droplet) в Cloud Foundry. Этот дроплет абстрагирует базовый код и показывает элемент родового исполняемого кода. DEA это ©2012 Janakiram & Associates 55, отвечающий за выполнение кода в рамках дроплета. Они обеспечивают ОС и среду выполнения.

Вывод

Платформа Cloud Foundry быстро набирает популярность как открытый сервис Open PaaS. Многие поставщики заявляют о своей поддержке данной облачной платформы. Cloud Foundry сможет создать сильную конкуренцию другим поставщикам сервисов PaaS.

     Подробнее с данным продуктом можно познакомиться на сайте: http:// cloudfoundry.com/

     Документация: http://docs.cloudfoundry.com/getting-started.html


Поделиться информацией

Вы можете послать эту статью или новость коллеге или знакомому по email со своим комментарием, пригласить обсудить ее. Просто нажмите на иконку конверта --->  


Сообщения, вопросы и ответы

Вы можете задать вопрос, написать комментарий, обсудить данную новость или статью.

Ваше сообщение (вопрос, ответ, комментарий)