Таким образом, в соответствии с различными типами услуг облачные вычисления можно разделить на три категории, а именно инфраструктура как услуга (IaaS), платформа как услуга (PaaS) и программное обеспечение как услуга (SaaS). Эти 3 службы облачных вычислений иногда называют стеками облачных вычислений, потому что они строят стек и располагаются друг над другом.
В этой статье мы расскажем, что такое IaaS, PaaS и SaaS.
IaaS
IaaS (Infrastructure as a Service), то есть инфраструктура как услуга. Это относится к сервисной модели, которая предоставляет ИТ-инфраструктуру как услугу через сеть и взимает плату в соответствии с фактическим использованием или занятостью ресурсов пользователями.
Если провести простую аналогию, преимущества услуг IaaS аналогичны услугам общей кухни.
Торговцы предоставляют пользователям ряд кухонных принадлежностей, таких как кухни, кастрюли, газовые плиты, духовки, рисоварки и так далее. Пользователям нужно покупать рис, лапшу, овощи, приправы и т. д. и обрабатывать их.
С помощью услуг IaaS пользователи могут развертывать и запускать любое программное обеспечение, включая операционные системы и прикладное программное обеспечение, в инфраструктуре, предоставляемой поставщиком облачных услуг.
Пользователи не имеют права управлять и получать доступ к базовой инфраструктуре, такой как серверы, коммутаторы, жесткие диски и т. д., но имеют право управлять операционной системой, содержимым хранилища, устанавливать приложения для управления и даже управлять сетевыми компонентами.
Проще говоря, пользователи используют IaaS и имеют право управлять всеми функциями поверх операционной системы. Наши общие услуги IaaS — это виртуальные машины, виртуальные сети и хранилище.
PaaS
PaaS (платформа как услуга) относится к платформе как к услуге. Это служба облачных вычислений, которая предоставляет вычислительную платформу и услуги решений.
Опять же, используйте пример общей кухни в качестве аналогии.
Помимо кухонь и кухонной утвари, ресторан также предоставляет очищенные и нарезанные овощи, приправленное мясо, обертки для пельменей и начинки для пельменей. Чтобы насладиться едой, пользователи должны сначала обжарить, разогреть или приготовить пищу, но им не нужно делать слишком много сложных приготовлений на ранней стадии.
PaaS предоставляет пользователям возможность использовать языки программирования, библиотеки, службы и средства разработки, поддерживаемые поставщиками облачных услуг, для создания, разработки и развертывания приложений в соответствующей инфраструктуре.
Пользователям не нужно управлять базовой инфраструктурой, включая сети, серверы, операционные системы или хранилище. Они могут только управлять приложением, развернутым на операционной системе в инфраструктуре, настраивая настраиваемые параметры среды, в которой размещается приложение.
SaaS
SaaS (Software-as-a-Service) означает программное обеспечение как услугу, то есть предоставление программных услуг через сеть.
Поставщики SaaS-платформы единообразно размещают прикладное ПО на собственных серверах, заказчики могут заказывать у производителя необходимые услуги прикладного ПО через Интернет в соответствии с фактическими потребностями в работе, а также платить производителю в зависимости от количества и продолжительности заказанных услуг. Доступ к услугам, предоставляемым поставщиками платформы Saas.
По сравнению с общей кухней IaaS и PaaS, SaaS больше похожа на платформу доставки еды.
SaaS эквивалентен ресторанам, предлагающим готовые блюда напрямую всем желающим, а также услугам на вынос. Пользователям нужно платить только за то, чтобы насладиться разнообразными видами деликатесов, и они также могут заказывать еду прямо там, где есть точки на вынос.
SaaS предоставляет пользователям возможность использовать приложения поставщиков облачных услуг, работающие в облачной инфраструктуре. Доступ к приложениям можно получить с различных клиентских устройств через облегченный клиентский интерфейс, такой как веб-браузер (например, веб-электронная почта) или программный интерфейс.
Пользователям не нужно управлять или контролировать базовую облачную инфраструктуру, включая сеть, серверы, операционные системы, хранилище или даже отдельные функции приложений, за возможным исключением ограниченных пользовательских настроек конфигурации приложений.
В зависимости от того, обладает ли приложение SaaS характеристиками конфигурируемости, высокой производительности и масштабируемости, модель зрелости SaaS делится на четыре уровня. Каждый уровень добавляет одну из трех характеристик по сравнению с предыдущим уровнем:
Разработан несколько раз
В рамках этой модели поставщик программных услуг настраивает набор программного обеспечения для каждого клиента и развертывает его. Каждый клиент использует отдельный экземпляр базы данных и экземпляр сервера приложений. Структура данных в базе данных и код приложения могут быть настроены в соответствии с потребностями заказчика.
Разработать один раз, развернуть много раз
Удовлетворяйте потребности разных клиентов с помощью различных конфигураций без необходимости специальной настройки для каждого клиента, чтобы снизить стоимость индивидуальной разработки.
Однако архитектура развертывания программного обеспечения не сильно изменилась, и работающий экземпляр по-прежнему развертывается независимо для каждого клиента. Просто каждый запущенный экземпляр выполняет один и тот же код, и используются разные конфигурации для удовлетворения индивидуальных потребностей разных клиентов.
Более общая реализация настраиваемости осуществляется через метаданные (метаданные).
Разработайте один раз и разверните
Многопользовательская архитектура приложений с одним экземпляром (Multi-Tenant) — это настоящая архитектура приложений SaaS, которая может эффективно снизить затраты на оборудование, эксплуатацию и обслуживание приложений SaaS и максимизировать эффект масштабирования приложений SaaS.
Не требуется разработка
Расширьте систему Multi-Tenant SingleInstance третьего уровня до Multi-Tenant MultiInstance. Конечные пользователи сначала получают доступ к слою Tenant Load Balance, а затем назначаются различным экземплярам. Разделяя доступ большого количества пользователей через несколько экземпляров, мы можем добиться практически бесконечного горизонтального расширения приложения.
Суммировать
В этой статье представлены три формы облачных вычислений: IaaS, PaaS и SaaS для большинства блюд на кухне.
От IaaS до PaaS и SaaS поставщики услуг предоставляют все больше и больше услуг и продуктов, в то время как у обычных пользователей все меньше и меньше нагрузки.
Слева направо, после использования соответствующего облачного сервиса, нагрузка на пользователя (зеленая часть на рисунке выше) будет все меньше и меньше, IaaS > PaaS > SaaS.
IaaS — это нижний уровень облачных сервисов, который в основном предоставляет некоторые базовые ресурсы. Общие продукты включают Amazong EC2, Alibaba Cloud и т. д.
PaaS предоставляет платформу для развертывания программного обеспечения, которая абстрагируется от деталей оборудования и операционной системы и может легко масштабироваться. Разработчикам нужно сосредоточиться только на своей бизнес-логике, а не на нижнем уровне. Распространенными продуктами являются Heroku и так далее.
SaaS означает, что разработка, управление и развертывание программного обеспечения передаются третьей стороне, вам не нужно заботиться о технических вопросах, и вы можете использовать его прямо сейчас. Распространенными продуктами являются Gmail, PayPal и т. д.