PaaS (платформа как услуга)

menu icon

PaaS (платформа как услуга)

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

Что такое PaaS (платформа как услуга)?

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

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

Все ведущие поставщики облачных услуг, включая Amazon Web Services (AWS), Google Cloud, IBM Cloud и Microsoft Azure, предлагают решения PaaS. Среди популярных решений PaaS есть проекты с открытым исходным кодом (например, Apache Stratos, Cloud Foundry) и ПО известных производителей (например, Red Hat OpenShift и Salesforce Heroku).

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

Наиболее часто клиенты отмечают следующие преимущества PaaS в сравнении с локальной платформой:

  • Ускорение выхода на рынок. При выборе PaaS нет необходимости приобретать и устанавливать аппаратное и программное обеспечение для создания и обслуживания платформы разработки приложений — все необходимые ресурсы сразу же доступны разработчикам. Получив доступ к платформе PaaS поставщика облачных услуг, вы можете немедленно приступить к инициализации ресурсов и разработке.
  • Доступ к более широкому спектру ресурсов с минимальными затратами. Как правило, платформы PaaS предоставляют доступ к более широкому спектру конфигураций в рамках стека приложений, включая операционные системы, промежуточное ПО, базы данных и инструменты разработки, приобретение которых нецелесообразно с практической или экономической точки зрения для большинства организаций.
  • Больше возможностей для экспериментов при меньшем риске. На платформе PaaS можно тестировать новые операционные системы, языки и другие инструменты без существенных инвестиций в новые технологии или сопутствующую инфраструктуру.
  • Простая и экономически эффективная масштабируемость. В случае локальной платформы масштабирование всегда обходится дорого, и при этом существует риск излишних расходов и неверных решений: необходимо иметь дополнительные вычислительные ресурсы, ресурсы хранилища и сетевые компоненты для реагирования на возможные всплески активности; большая часть этих ресурсов будет простаивать в периоды низкой нагрузки, при этом их нельзя оперативно масштабировать в случае непредвиденных обстоятельств. PaaS позволяет в любой момент приобрести дополнительные ресурсы и немедленно приступить к их использованию.
  • Повышение гибкости для разработчиков. Услуги PaaS предоставляют общую среду разработки ПО, с помощью которой специалисты по разработке и эксплуатации могут получить доступ ко всем необходимым инструментам — из любой точки при наличии подключения к Интернету.
  • Снижение общих расходов. Несомненно, PaaS снижает расходы за счет исключения потребности в капиталовложениях в оборудование, необходимое для создания и масштабирования платформы разработки приложений. Более того, PaaS позволяет уменьшить или исключить расходы на приобретение программных лицензий. PaaS берет на себя управление исправлениями, обновлениями и прочие административные задачи, что дополнительно снижает общие расходы на управление приложениями.

Принцип работы PaaS

В общем случае решение PaaS состоит из трех основных компонентов:

  • Облачная инфраструктура, включая виртуальные машины, программное обеспечение ОС, хранилище, сетевые компоненты, брандмауэры
  • Программное обеспечение для создания, развертывания приложений и управления ими
  • Графический пользовательский интерфейс (GUI) для выполнения задач, связанных с разработкой или DevOps, на всех этапах жизненного цикла приложений

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

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

PaaS, IaaS и SaaS

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

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

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

SaaS — прикладное ПО, которое используется в облаке, как если бы оно было установлено на компьютере пользователя (в некоторых случаях отдельные компоненты могут устанавливаться на локальном компьютере). SaaS позволяет использовать приложение без затрат на подготовку и обслуживание необходимой инфраструктуры, в частности на применение исправлений и обновлений, а также устранение сбоев. Примеры популярных предложений SaaS: Salesforce и Slack; большинство веб-приложений относятся к модели SaaS.

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

Еще один признак для сравнения моделей IaaS, PaaS и SaaS — распределение задач управления между клиентом и поставщиком облачных услуг:

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

 

Узнайте больше о моделях IaaS, PaaS и SaaS.

Практическое применение PaaS

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

  • Разработка API и управление ими: встроенные среды PaaS существенно упрощают разработку, запуск, управление и защиту API (программных интерфейсов приложений) для совместного использования данных и функций между приложениями.
  • Интернет вещей (IoT): базовые предложения PaaS поддерживают широкий спектр языков программирования (Java, Python, Swift и т. д.), инструментов и сред приложений, применяемых для разработки приложений IoT и обработки данных, сгенерированных устройствами IoT, в режиме реального времени.
  • Поддержка методологий Agile и DevOps: PaaS может предоставлять полностью настроенные среды для автоматизации жизненного цикла разработки приложений, включая интеграцию, доставку, защиту, тестирование и развертывание.
  • Облачная миграция и разработка: благодаря готовым инструментам и функциям интеграции PaaS упрощает миграцию имеющихся приложений в облако — в особенности путем смены платформы (переноса приложения в облако с некоторыми модификациями для реализации преимуществ масштабируемости, распределения нагрузки и других возможностей) или рефакторинга (изменения архитектуры приложения, полностью или частично, с помощью микросервисов, контейнеров и других облачных технологий).
  • Стратегия гибридного облака: гибридное облако обеспечивает интеграцию услуг общедоступного облака, частного облака и локальной инфраструктуры, а также предоставляет средства оркестрации, управления и переноса приложений между любыми средами. Результатом является универсальная и гибкая среда распределенных вычислений, в которой организация может выполнять и масштабировать как традиционные, так и облачные задачи, выбирая наиболее подходящую модель вычислений. Правильно подобранное решение PaaS позволяет разработчикам создавать приложения единожды и развертывать их где угодно в гибридной облачной среде.

Особые разновидности PaaS

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

  • AIPaaS (PaaS для искусственного интеллекта) позволяет разработчикам создавать приложения на основе искусственного интеллекта (ИИ) без значительных затрат средств на приобретение и обслуживание мощных вычислительных ресурсов, хранилищ и сетевых компонентов, которые требуются для работы таких приложений. Как правило, AiPaaS включает в себя предварительно обученные модели машинного обучения и глубокого обучения, которые можно использовать в существующем виде или адаптировать под конкретные задачи, а также готовые API для интеграции определенных функций ИИ, таких как распознавание речи или преобразование речи в текст, в уже имеющиеся или новые приложения.
  • iPaaS (платформа интеграции как услуга) — облачное решение для интеграции приложений. iPaaS предоставляет организациям стандартизированный способ подключения данных, процессов и служб в общедоступном облаке, частном облаке и локальных средах без необходимости приобретения, установки собственного интеграционного аппаратного обеспечения, промежуточного и основного ПО, а также управления ими. (Следует отметить, что решения Paas часто обеспечивают определенную степень интеграции, например управление API, однако iPaaS предлагает более широкие возможности.)
  • cPaaS (коммуникационная платформа как услуга) — разновидность PaaS, с помощью которой разработчики могут без труда добавлять в приложения поддержку голосовой информации (входящие и исходящие звонки), видео (включая телеконференции) и сообщений (SMS и социальные сети), без инвестиций в специализированное коммуникационное оборудование и ПО.
  • mPaaS (мобильная платформа как услуга) — разновидность PaaS, упрощающая разработку приложений для мобильных устройств. Как правило, mPaaS предлагает малокодовые методы (или простейшие функции перетаскивания) для доступа к таким функциям устройства, как камера телефона, микрофон, датчик движения и определение местоположения (GPS).

PaaS и IBM Cloud

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

IBM Red Hat OpenShift on IBM Cloud — это полностью управляемая услуга OpenShift с высочайшим уровнем масштабируемости и безопасности IBM Cloud для автоматизации процессов обновления, масштабирования и инициализации ресурсов, а также обеспечения стабильной работы в случае непредвиденных всплесков активности. Воспользуйтесь разнообразными инструментами и функциями, чтобы приступить к разработке и модернизации приложений, а также развернуть полностью управляемые кластеры с высоким уровнем доступности одним щелчком мыши. Услуга IBM Red Hat OpenShift on IBM Cloud признана лучшей в отчете The Forrester Wave «Мультиоблачные платформы контейнерной разработки», 3 квартал 2020 г. (PDF, 415 КБ).

IBM Cloud Pak for Applications помогает модернизировать приложения, расширить модули безопасности и создать новые приложения для дальнейшего развития цифровых технологий. Входящие в пакет решения для облачной разработки способны быстро окупиться, а гибкие варианты лицензирования можно адаптировать для любых уникальных потребностей.

Чтобы приступить к использованию PaaS on IBM Cloud, зарегистрируйтесь для получения IBMid и создайте учетную запись IBM Cloud.