Что такое PaaS? Объяснение платформы как услуги

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

Поскольку архитектура PaaS скрывает базовую инфраструктуру из поля зрения разработчиков и других пользователей, модель аналогична концепциям бессерверных вычислений и функции как услуга (FaaS), в которых поставщик облачных услуг предоставляет и запускает сервер и управляет распределением ресурсов. 

FaaS - это тип бессерверного предложения, которое позволяет компаниям разрабатывать и запускать дискретные, управляемые событиями функции без сложности создания и обслуживания инфраструктуры, обычно необходимой для разработки и запуска приложения.

Плата за услуги PaaS и бессерверных вычислений обычно взимается только за потребленные вычислительные ресурсы, хранилище и сетевые ресурсы. FaaS доводит этот подход до крайности, взимая плату только при выполнении функций, что делает FaaS естественным выбором для прерывистых задач. 

Все в облачной семье

Как и в случае с другими облачными сервисами, такими как инфраструктура как услуга (IaaS) и программное обеспечение как услуга (SaaS), PaaS предлагается через размещенную инфраструктуру поставщика облачных услуг. Пользователи обычно получают доступ к предложениям PaaS через веб-браузер.

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

Предлагая частное облако, PaaS предоставляется в виде программного обеспечения или устройства в рамках брандмауэра клиента, обычно в его локальном центре обработки данных. Гибридное облако PaaS предлагает сочетание двух типов облачных сервисов.

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

Как и в случае с другими типами облачных сервисов, клиенты платят за PaaS по факту использования, при этом некоторые поставщики взимают фиксированную ежемесячную плату за доступ к платформе и приложениям, размещенным на платформе.

Видео по теме: Что такое облачный подход?

Из этого 60-секундного видео вы узнаете, как облачный подход меняет способ структурирования технологий предприятиями, от Крейга Маклакки, основателя и генерального директора Heptio, а также одного из изобретателей системы с открытым исходным кодом Kubernetes.

Преимущества PaaS 

Одно из самых больших преимуществ PaaS заключается в том, что предприятия могут получить среду для создания и развертывания новых приложений без необходимости тратить время и деньги на создание и обслуживание инфраструктуры, включающей серверы и базы данных.

Это может привести к более быстрой разработке и доставке приложений, что является огромным плюсом для предприятий, стремящихся получить конкурентное преимущество или которым необходимо быстро вывести продукты на рынок.

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

А использование PaaS вынуждает разработчиков корпоративного программного обеспечения использовать облачные технологии в своих приложениях, помогая затем принять современные принципы и лучше использовать преимущества платформ облачной инфраструктуры (IaaS).

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

Приложения PaaS 

Предоставление размещенной среды для разработки, тестирования и развертывания приложений - одно из наиболее распространенных применений PaaS. Но это далеко не единственная причина, по которой предприятия используют PaaS.

Исследовательская компания Gartner приводит множество вариантов использования PaaS, в том числе:

  • Разработка и управление API. Компании могут использовать PaaS для разработки, запуска, управления и защиты интерфейсов программирования приложений и микросервисов. Это включает создание новых API-интерфейсов и новых интерфейсов для существующих API-интерфейсов, а также сквозное управление API.
  • Бизнес-аналитика / разведка. Инструменты, предоставляемые через PaaS, позволяют предприятиям анализировать свои данные, чтобы найти бизнес-идеи и модели поведения, чтобы они могли принимать более обоснованные решения и более точно прогнозировать будущие события, такие как рыночный спрос на продукты,
  • Управление бизнес-процессами (BPM). Организации могут использовать PaaS для доступа к платформе BPM, предоставляемой как услуга, как и другие облачные предложения. Пакеты BPM объединяют ИТ-компоненты, необходимые для управления процессами, включая данные, бизнес-правила и соглашения об уровне обслуживания.
  • Связь. PaaS также может служить механизмом доставки для коммуникационных платформ. Это позволяет разработчикам добавлять в приложения функции связи, такие как голос, видео и обмен сообщениями.
  • Базы данных. Провайдер PaaS может предоставлять такие услуги, как создание и обслуживание базы данных организации. Исследовательская компания Forrester Research определяет базу данных PaaS как «безопасную и масштабируемую платформу базы данных самообслуживания по запросу, которая автоматизирует выделение ресурсов и администрирование баз данных и может использоваться разработчиками и нетехническим персоналом».
  • Интернет вещей. Ожидается, что в ближайшие годы Интернет вещей станет значительной частью использования PaaS, поддерживая широкий спектр прикладных сред, языков программирования и инструментов, которые будут использоваться в различных развертываниях Интернета вещей.
  • Управление основными данными (MDM). Сюда входят процессы, управление, политики, стандарты и инструменты, которые управляют критически важными бизнес-данными предприятия, обеспечивая единую точку отсчета для данных. Такие данные могут включать справочные данные, такие как информация о транзакциях клиентов, и аналитические данные для поддержки принятия решений.

Технологии PaaS 

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

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

PaaS также включает в себя такие ресурсы, как инструменты разработки, языки программирования, библиотеки, системы управления базами данных и другие инструменты от облачного провайдера.

Примеры PaaS

Среди ведущих поставщиков PaaS - Amazon Web Services (AWS), Microsoft, Google, IBM, Salesforce.com, Red Hat, Pivotal, Mendix, Oracle, Engine Yard и Heroku. Наиболее широко используемые языки, библиотеки, контейнеры и связанные инструменты доступны в облаках всех основных поставщиков PaaS.

Amazon, Microsoft и Google, в частности, предлагают полный набор облачных сервисов, включая вычисления, хранилище, базы данных, аналитику, сетевое взаимодействие, мобильную серверную часть, инструменты разработчика, инструменты управления и безопасность. Во многих случаях это полностью управляемые службы, дополняющие службы PaaS в этих общедоступных облаках. 

Не случайно многие поставщики PaaS также являются ведущими поставщиками инструментов для разработки программного обеспечения. По оценкам Gartner, сегодня существует около 200 провайдеров PaaS.

Вот краткий обзор некоторых ведущих предложений PaaS. 

AWS Elastic Beanstalk

С помощью Elastic Beanstalk компании могут быстро развертывать приложения в облаке AWS и управлять ими, не разбираясь в инфраструктуре, в которой работают приложения. Elastic Beanstalk автоматически обрабатывает детали выделения емкости, балансировки нагрузки, масштабирования и мониторинга работоспособности приложений.

AWS Lambda

AWS Lambda - это управляемая событиями платформа бессерверных вычислений, которая запускает ваш код в ответ на события и автоматически управляет вычислительными ресурсами, необходимыми для этого кода. AWS Lambda популяризировала концепцию FaaS, хотя она появилась раньше этого термина. 

Google App Engine

Google App Engine - это предложение PaaS для разработки и размещения веб-приложений в центрах обработки данных, управляемых Google. Приложения изолированы, запускаются и автоматически масштабируются на нескольких серверах. 

Облачные функции Google

Google Cloud Functions призван упростить разработчикам запуск и масштабирование кода в облаке, а также создание бессерверных приложений, управляемых событиями.

Служба приложений Azure

Служба приложений Microsoft Azure - это полностью управляемая PaaS, которая объединяет веб-сайты Microsoft Azure, мобильные службы и службы BizTalk в единое предложение. Служба приложений Azure обеспечивает интеграцию между локальными и облачными системами.

Функции Azure

Microsoft Azure Functions - это платформа для бессерверных вычислений, которая позволяет разработчикам принимать меры, подключаясь к источникам данных или решениям для обмена сообщениями, что упрощает обработку событий и реагирование на них. Разработчики могут использовать Функции Azure для создания конечных точек API на основе HTTP, доступных для ряда приложений.

Red Hat OpenShift

OpenShift - это семейство предложений PaaS, которые можно размещать в облаке или развертывать локально, для создания и развертывания контейнерных приложений. Флагманским продуктом является OpenShift Container Platform, локальная PaaS, построенная на контейнерах Docker, организованных и управляемых Kubernetes на основе Red Hat Enterprise Linux. 

Pivotal Cloud Foundry 

Cloud Foundry - это PaaS с открытым исходным кодом, управляемая Cloud Foundry Foundation. Первоначально он был разработан VMware, а затем передан Pivotal Software, совместному предприятию EMC, VMware и General Electric. Как и OpenShift, Cloud Foundry предназначен для создания и запуска приложений на основе контейнеров с использованием Kubernetes для оркестровки. 

Риски PaaS

Учитывая, что PaaS - это облачный сервис, он сопряжен со многими из тех же неотъемлемых рисков, что и другие облачные предложения, например, с угрозами информационной безопасности. PaaS основан на концепции использования общих ресурсов, таких как сети и серверы, поэтому риски безопасности включают размещение критически важных данных в этой среде и их кражу из-за несанкционированного доступа или атак хакеров или других злоумышленников.

С другой стороны, основные облачные провайдеры оказались более эффективными в предотвращении таких нарушений, чем типичный корпоративный центр обработки данных, поэтому риск информационной безопасности не оказался тем, чего многие в ИТ изначально опасались.

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

Кроме того, поскольку организации полагаются на инфраструктуру и программное обеспечение конкретного поставщика услуг, существует потенциальная проблема привязки поставщика к средам PaaS. У ИТ-отдела есть законный вопрос: будет ли выбранный им PaaS взаимодействовать с его текущими и будущими развертываниями IaaS и SaaS?

Другой риск, связанный с PaaS, - это простои инфраструктуры поставщика услуг по какой-либо причине, а также влияние, которое может оказать на услуги. А что, если провайдер внесет изменения в свою стратегию развития, языки программирования или другие области?

Не ожидайте, что эти возможные препятствия помешают вам окунуться в PaaS. Это обеспечивает большую гибкость именно потому, что поставщик обрабатывает платформы, а вы занимаетесь программированием.

iPaaS

Любое обсуждение PaaS должно включать упоминание iPaaS, интеграционной платформы как услуги. iPaaS - это набор автоматизированных инструментов для связывания приложений, развернутых в разных средах. Ведущие примеры поставщиков iPaaS включают Dell Boomi, Informatica, MuleSoft и SnapLogic. 

iPaaS имеет смысл для компаний, которым необходимо интегрировать локальные приложения и данные с облачными приложениями и данными, в том числе растущее число предприятий, использующих гибридные облачные среды.