IaaS, PaaS и SaaS
В описании облачных решений и сервисов часто встречаются аббревиатуры: IaaS, PaaS и SaaS. Расскажем, чем отличаются все эти aaS, как работают и какие возможности дают пользователям облаков.
Что такое IaaS: облачная инфраструктура как услуга
Практически ни одна компания не обходится без IT-инфраструктуры — даже небольшой фирме нужны серверы для хранения баз данных или инструменты, объединяющие компьютеры сотрудников в общую сеть. Компания может закупить серверы и настроить эту инфраструктуру у себя, но это достаточно долго и дорого. А может ничего не покупать, если взять в аренду облачные сервисы IaaS.
IaaS — это Infrastructure as a Service, то есть инфраструктура как услуга. К инфраструктуре относят вычислительные ресурсы: виртуальные серверы, хранилища, сети. Это что-то вроде виртуальных «компьютеров», на которые можно установить что угодно: операционную систему, программное обеспечение, приложения.
Поставщик IaaS (инфраструктуры как сервиса), или облачный провайдер, уже все купил и собрал, обеспечил серверы электричеством и интернетом. Вам остается только подключиться к этим вычислительным мощностям через интернет и использовать их для своих целей.
IaaS включает в себя:
Виртуальные серверы (VPS/VDS), на которые можно устанавливать различные программы. Иногда провайдер предлагает серверы сразу с операционными системами, чтобы на них можно было быстрее развернуть нужные приложения.
Сетевые настройки, которые обеспечивают связь виртуальных серверов друг с другом, внешними серверами, принадлежащими компании-клиенту, и интернетом. К ним относят:
доступность серверов друг для друга и для внешней сети, маршрутизацию сетевых соединений серверов;
балансировщики нагрузки, которые предотвращают перегрузки серверов, распределяя между ними входящий трафик;
VPN — технологию шифрования данных, передаваемых компанией между облаком и ее физическим дата-центром;
Управление доступом пользователей. Например, можно ограничить доступ к отдельным виртуальным машинам или разрешить просмотр данных, но запретить вносить в них изменения.
Облачные хранилища для хранения файлов, данных или бэкапов. От обычных облачных дисков, с которыми имеют дело отдельные пользователи, они отличаются почти неограниченным объемом хранения и быстрой скоростью доступа к данным.
Сервисы резервного копирования и катастрофоустойчивости, которые страхуют вашу инфраструктуру от падений и потери данных при выходе из строя ее отдельных узлов.
Когда вы арендуете инфраструктуру IaaS, то получаете виртуальные серверы, сетевые настройки и облачные хранилища, за которые отвечает провайдер. При этом у вас есть доступ к операционной системе виртуальных серверов и большая свобода в настройке и установке приложений.
Примеры IaaS — как можно использовать облачную инфраструктуру:
Перенос IT-систем в облако. Самое очевидное применение IaaS — отказ от физических серверов и перенос вашей IT-инфраструктуры в облако. С IaaS вы сможете делать все то же, что с физическим дата-центром — хранить данные, настроить CRM-систему, развернуть сайт или любые бизнес-серверы.
Экономия на инфраструктуре. Если вы сами обслуживаете серверы, вам нужно платить за помещение, оборудование, лицензионное ПО — это большие капитальные расходы. Кроме того, в облаке провайдер берет на себя предоставление виртуальной инфраструктуры с оговоренным в SLA временем простоя (аптаймом). Чтобы обеспечить такой же аптайм в собственном частном ЦОДе, а также управлять физической инфраструктурой и виртуализацией, нужен отдельный штат специалистов. Это дополнительные расходы сверх капитальных. Если собственный ЦОД для компании — не профильный бизнес, компания не умеет оценивать риски и дополнительные и скрытые расходы, у нее нет соответствующей экспертизы, тогда дешевле развернуть IT-инфраструктуру в облаке.
Быстрый запуск бизнеса. Облачная инфраструктура IaaS снижает расходы бизнеса на старте, так как помогает уменьшить капитальные вложения, обойтись без закупки оборудования и организации дата-центра.
Расширение инфраструктуры. Облачные технологии IaaS можно использовать и для расширения уже существующей инфраструктуры. К примеру, у вас есть физические серверы, но их мощности не хватает для нынешних задач. Вместо того чтобы покупать новые, можно подключиться к IaaS-платформе, и получить там нужные мощности.
Инфраструктура для компаний со скачками спроса. IaaS подходит, если у компании нелинейный спрос на ресурсы. Например, у вас есть физические серверы, на которых развернут интернет-магазин. В период праздников или распродаж сайт падает — покупателей приходит слишком много, и серверы не выдерживают. Если использовать облачную инфраструктуру, при увеличении нагрузки можно сразу получить дополнительные вычислительные мощности. А когда нагрузка упадет, вернуться к плановому потреблению мощностей. В случае обычной физической инфраструктуры нужно докупать дополнительные серверы — пользоваться ими вы будете только на пике нагрузки, а обслуживать постоянно. Это не говоря о том, что процедура закупки оборудования обычно занимает недели, а облачное масштабирование — минуты или даже секунды.
Разработка и тестирование. Как и в собственной локальной инфраструктуре, в облачной можно организовать раздельные среды разработки, тестирования и «боевой» нагрузки, в которой запущено уже готовое приложение. Но, в отличие от собственной инфраструктуры, в облаке тестовые среды можно разворачивать мгновенно. После завершения тестов лишние среды можно свернуть и не переплачивать за простаивающие ресурсы. Всё это упрощает и ускоряет процесс тестирования ПО и позволяет экономить на покупке тестовых серверов.
Для построения в облаке сложной инфраструктуры IaaS для крупных проектов может потребоваться помощь провайдера в миграции и администрировании. Но для большинства проектов управление облачной инфраструктурой не требует непосредственного участия провайдера. А если возникнут сложности, всегда можно обратиться в техподдержку.
Что такое PaaS: облачная платформа как услуга
Провайдеры облачных услуг могут предоставлять уже настроенные инструменты (платформы) под разные задачи. Такие инструменты называют PaaS — это Platform as a Service, платформа как услуга.
Ключевое отличие PaaS от IaaS в том, что здесь у вас есть определенные инструменты, например: система управления базами данных, среда машинного обучения или обработки big data, промышленный IoT. Их нужно настроить под потребности компании, но не надо строить с нуля. Это позволяет экономить время разработчиков — например, им не нужно возиться с разработкой базы данных, можно просто загрузить в нее информацию и работать.
При этом у вас нет доступа к операционной системе, настройкам виртуальных серверов, которые лежат в основе PaaS, а также к низкоуровневым настройкам самой платформы. Провайдер берет на себя их оптимальную конфигурацию и снимает с вас необходимость следить за настройками, обновлениями, масштабированием и безопасностью. Вы получаете доступ только к интерфейсам самой платформы.
Вот несколько примеров PaaS:
Базы данных. В облака можно перенести все или часть баз данных компании. В случае с IaaS пользователь получает только пространство на дисках, и должен сам выбрать систему управления базами данных, установить ее и настроить, обеспечить защиту данных и резервное копирование. В PaaS СУБД уже установлена, нужно лишь настроить ее для себя и загрузить данные. За работоспособность и резервное копирование отвечает провайдер.
Разработка приложений в контейнерах. Это современный стандарт разработки приложений. Суть в том, что все компоненты, которые нужны для запуска приложения, упаковывают в отдельные виртуальные контейнеры. Их можно быстро вызывать, запускать приложения и при необходимости добавлять вычислительные мощности для быстрого масштабирования и устойчивости к высоким нагрузкам.
Аналитика больших данных. PaaS помогают обрабатывать как исторические большие данные, то есть массивы информации, собранные компанией за какое-то время, так и данные в режиме реального времени. Для этого используют такие инструменты как Apache Hadoop, Apache Spark, Apache Kafka и другие. Они уже установлены и настроены в облаке, вам остается только выбрать нужную конфигурацию.
Машинное обучение. Такая платформа как сервис позволяет быстро разрабатывать приложения на основе глубокого обучения под нужды компании: системы компьютерного зрения для распознавания лиц, номеров автомобилей и других объектов, системы аудиоаналитики. К примеру, у вас есть большая база данных с фотографиями сотрудников, и вы хотите настроить на объекте безбарьерный вход — пропускать сотрудников через турникеты, распознавая их лица. Для этого вы разрабатываете собственное приложение, а потом «учите» нейросеть узнавать сотрудников с помощью PaaS, где уже установлены инструменты для распознавания лиц.
PaaS-сервисы экономят время на конфигурацию инфраструктуры, нужной компании. Вы можете подключить нужный набор сервисов, главное, убедиться, что у облачного провайдера есть нужные сейчас и в перспективе решения.
Что такое SaaS: облачные сервисы для конкретных прикладных задач
SaaS — это полностью настроенная и готовая к работе программа, выполняющая определенные функции. Единственное отличие технологии SaaS от программы на смартфоне или компьютере в том, что сам софт находится в облаке. Доступ к нему идет через интернет, а сама программа работает на мощностях виртуальных серверов, поэтому не нагружает ваш компьютер или смартфон.
SaaS — это Software as a Service, программное обеспечение как сервис. IaaS и PaaS для SaaS-сервисов могут выступать как инфраструктура и среды разработки и развертывания: разработчики программного обеспечения используют облачные мощности, чтобы разрабатывать, запускать и хранить SaaS-приложения, обеспечивать к ним доступ пользователям.
Примеры SaaS — это большинство сервисов в интернете: электронная почта, CRM-системы, планировщики задач, веб-конструкторы для создания сайтов, платформы для ведения блогов. То есть все облачные программы, которые позволяют решать конкретные задачи.
Если у вас есть задача, которая полностью решается платформой SaaS, то дешевле и быстрее воспользоваться ей, а не разрабатывать собственное решение.
Так, даже крупная компания вряд ли будет разрабатывать свой почтовый клиент — есть готовые почтовые сервисы, которые можно приобрести по подписке и функционала которых достаточно для работы.
IaaS, PaaS и Saas — что это и когда нужны
IaaS. Вычислительные мощности для запуска своих решений и развертывания IT-инфраструктуры компании.
PaaS. Позволяет использовать уже готовые и настроенные платформы для специализированных задач.
SaaS. Модель, когда в облаках размещены готовые сервисы для конкретных прикладных функций — отправки почты, ведения базы клиентов, создания сайта.