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

Облако и облачные сервисы: что это такое, как они работают и где используются

2 сен 2024
Рассказываем о том, что такое облако и облачные сервисы простыми словами. Рассмотрим основные виды клауд-сервисов (IaaS, PaaS, SaaS, DRaaS, BaaS), изучим преимущества и недостатки технологии, а также разберемся в том, где ее применяют и кому она будет полезна.

Облако и облачные сервисы: что это такое, как они работают и где используются

Облако (cloud, клауд) — это совокупность виртуальных ИT-ресурсов, доступ к которым возможен через интернет-соединение. Клауд-технологии применяются в самых разных отраслях — например, в ретейле, транспортной сфере, здравоохранении, рекламе, логистике.

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

История появления облачных технологий

В 1961 году Джон Маккарти предложил концепцию time-sharing technology. Во время выступления в Массачусетском технологическом институте он предположил, что компьютерные вычисления могут быть организованы как общедоступный сервис по аналогии с телефонной связью.

В современном воплощении история клауд-сервисов связана с появлением Amazon Web Services (2006). Разработчики начали предлагать ИТ-инфраструктуру как веб-сервис. В 2010 году на этот же путь встал Microsoft: компания предложила пользователям из 21 страны мира сервисы Windows Azure и SQL Azure. Корпорация Google в то же время представила Google Storage для разработчиков. В 2011 появилось решение Google SQL.

К 2014 году подобные решения были у большинства известных ИT-брендов — HP, Intel, SAP, IBM, Oracle.

По данным исследования Gartner, темпы роста рынка IaaS (Infrastructure as a Service) в 2023 году составили 19,1%, а его общий объем достиг 143 млрд долларов. Прогноз на 2025 — кратный рост до 232 млрд долларов.

В России первые провайдеры начали предоставлять услуги с 2008 года. В 2022-м иностранные вендоры приостановили обслуживание клиентов из РФ, поэтому бизнес и частные лица были вынуждены искать варианты импортозамещения. Параллельно с этим изменились требования к поставщикам услуг и приложениям: к примеру, стало важно размещать проекты на российских серверах и принимать меры по защите персональных данных от утечек.

Аналитики iKS-Consulting указывают, что объем российского рынка инфраструктурных сервисов растет.

Рост рынка облачных инфраструктурных сервисов (IaaS+PaaS) на основе исследования KS-Consulting
Рост рынка облачных инфраструктурных сервисов (IaaS+PaaS) на основе исследования KS-Consulting

В топ-20 на рынке IaaS+PaaS по размеру выручки попали Cloud.ru, Ростелеком-ЦОД, YandexCloud, Selectel, МегаФон, МТС, ITGlobal.

ТОП-20 на рынке облачных инфраструктурных сервисов (IaaS+PaaS) на основе исследования KS-Consulting
ТОП-20 на рынке облачных инфраструктурных сервисов (IaaS+PaaS) на основе исследования KS-Consulting

Первое поколение облаков

В 2005–2011 гг. появилось так называемое первое поколение облаков. В центрах обработки данных (ЦОД) размещались ресурсы вычисления и хранения. У облаков первого поколения была традиционная двухуровневая структура:

  • пользователи отправляют запросы; 
  • серверная часть, размещенная в облаке, возвращает ответ на запрос.

Облака первого поколения предоставляли пользователям следующие возможности:

  • виртуальные машины;
  • хранение данных;
  • сетевые ресурсы.

Пользователь размещал на сервере приложение — файл с кодом — и запускал так же, как программу на компьютере. Но возникали проблемы: к примеру, что делать, если работают 5 приложений одновременно, но одно из них забирает все ресурсы машины?

Разработчики предложили решение: виртуализацию, или виртуальное развертывание. Благодаря этому на одном сервере можно было запустить несколько виртуальных машин (ВМ). Каждое приложение, расположенное на отдельной ВМ, «думает», что оно работает на собственном оборудовании: у него свое виртуальное пространство и свои ресурсы. Если возникнет нештатная ситуация, то она затронет только одну виртуальную машину, а остальные продолжат работать.

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

Второе поколение облаков

С 2011 по 2017 год появляются новые инструменты — контейнеры, Kubernetes, Service Mesh и другие, обеспечивающие управляемый жизненный цикл приложений. По сути, стало возможно «упаковать» приложение в контейнер и запустить на любой машине со всеми зависимостями. 

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

К примеру, чтобы создать сайт, нужно:

  • найти веб-сервер и установить операционную систему, а также компоненты (к примеру, MySQL);
  • настроить компоненты и их «взаимодействие»;
  • создать сам сайт.

С контейнером пользователь запускает готовый образ, содержащий все необходимые компоненты. Не нужно ставить ОС, библиотеки, зависимости. Сайт готов к работе.

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

Изменяется и подход к ИТ-инфраструктуре: она становится облачно-ориентированной.

С 2017 года начинается эпоха приложений. Теперь инструментов еще больше: Prometheus для метрик, Kafka для журналов событий, Dapr для интеграции, GraphQL для запроса данных, AWS S3 для хранилища объектов.

Что такое облако и облачные сервисы

Если упростить, то облако — это удаленный компьютер, на котором можно сохранять файлы, запускать программы и скрипты, устанавливать и удалять программное обеспечение (ПО).  В общем, им можно пользоваться, как обычным ПК. Для работы нужна аппаратная часть, ПО и интернет-соединение. 

Основные элементы:

  • инфраструктура — виртуальные машины и образы, Auto Scaling (AS) для масштабирования, Bare Metal Server (BMS) для выделенных физических серверов;
  • сеть — публичные IP, подсети, шлюзы, балансировщики нагрузки, VPN;
  • хранение данных — объектное или блочное хранилище, резервное копирование;
  • контейнеры — кластеры (объединение нескольких серверов) Kubernetes, управление жизненным циклом Container Engine;
  • управление и администрирование — SSH-ключи, мониторинг состояния, анализ логов, отслеживание действий пользователей;
  • безопасность — шифрование данных, защита хостов от вредоносных атак, межсетевые экраны, защита контейнеров от уязвимостей;
  • базы данных — обслуживание, конфигурирование, выполнение запросов (MySQL, PostgreSQL, SQL Server, MongoDB);
  • аналитика данных — Big Data (хранение, облачные вычисления, обработка, анализ).

На небольшом проекте могут пользоваться не всеми перечисленными решениями — к примеру, для лендинга достаточно хостинга с минимальными настройками и местом на диске.

Виды облачных сервисов

Выделяют различные модели получения услуг на рынке клауд-технологий. Среди них:

  • IaaS;
  • PaaS;
  • SaaS;
  • DraaS;
  • BaaS и другие.

Расскажем о них подробнее.

IaaS

IaaS (Infrastructure as a Service) — модель, которая позволяет «взять в прокат» мощности провайдера:

  • сети;
  • хранилища; 
  • серверы. 

IaaS-провайдер занимается обслуживанием физического оборудования и поддержанием его работоспособности. Потребитель IaaS может настроить системное и связующее ПО под свои задачи.

PaaS

PaaS (Platform as a Service) — модель, при которой заказчик использует не только вычислительные ресурсы провайдера, но и среду развертывания и разработки. Платформы уже настроены и адаптированы под решение конкретных задач.

Зона ответственности PaaS-провайдеров — управление сетевыми ресурсами, обеспечение безопасности среды, предоставление заказчику инструментов для создания ПО и управления им.

Разновидности PaaS:

  • AIPaaS — работа с решениями на базе искусственного интеллекта;
  • iPaaS — сервисы для интеграции;
  • cPaaS — интеграция средств коммуникации (видео, сообщения, голосовые).

SaaS 

SaaS (Software as a Service) — модель, при которой поставщик ПО обеспечивает доступ к приложению как к готовому интернет-сервису. Встречаются альтернативные названия — «software on demand», «программное обеспечение как услуга», «программное обеспечение по требованию».

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

DraaS

DraaS (Disaster Recovery as a Service) — услуга аварийного восстановления ИТ-инфраструктуры и данных в случае форс-мажора: например, повреждения сервера, аварии в центре обработки данных. 

Для DraaS используются инструменты фоновой репликации — копирования объектов из одной базы данных в другую — с быстрым запуском на платформах виртуализации: например, Хайстекс Акура или VMware Disaster Recovery. Если по каким-то причинам нельзя получить доступ к данным из основного источника, используют «резервный».

BaaS

BaaS (Business as a Service, Banking as a Service) — предоставление потребителю отдельного бизнес-процесса. Как правило, используется в финансовой сфере, но применимо к области ИТ и другим.

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

XaaS

Появились и другие модели, которые условно называются Anything as a Service (XaaS) — предоставление чего-либо как сервиса. К примеру, это могут быть:

  • SaaS (Serverless as a Service) — размещение кода в бессерверной среде с использованием FunctionGraph или других инструментов;
  • KaaS (Kubernetes as a Service) — автоматизация работы с контейнерами при помощи управляемых кластеров K8S;
  • FaaS (Function as a Service) — предоставление ИТ-инфраструктуры для разработки и развертывания функций, в том числе и через сети доставки контента CDN;
  • SecaaS (Security as a Service) — услуги, связанные с обеспечением информационной безопасности: фильтрация трафика, шифрование виртуальных машин, защита от DDoS-атак и взломов;
  • DBaaS (Database as a Service) — аренда реляционных и нереляционных БД у провайдера;
  • MaaS (Monitoring as a Service) — мониторинг состояния и производительности ресурсов.

Преимущества и недостатки облачных сервисов

Плюсы:

  • доступ с любого устройства (нужно подключение к интернету);
  • оптимизация времени запуска продукта (time-to-market) — можно взять настроенную ИТ-инфраструктуру, а не начинать проект с подбора оборудования;
  • хранение, резервное восстановление, копирование данных;
  • прокачка производительности и возможность масштабирования;
  • выбор модели оплаты — Pay as you go (по мере использования) с возможностью подключать и отключать в любое время.

Минусы:

  • необходимость доступа в интернет;
  • изучение соглашения о качестве предоставления услуг (SLA), необходимость искать и выбирать провайдера.

Применение облачных технологий

Облачная инфраструктура нужна малому и крупному бизнесу для решения разных задач:

  • разместить сайт — интернет-магазин, лендинг, блог, корпоративный портал — с использованием Object Storage Service (OBS), Virtual Private Cloud & Elastic IP, Cloud Container Engine (CCE), Relational Database Service (RDS);
  • развернуть 1С:Предприятие для работы в браузере без установки ПО — Virtual Appliance (образ ВМ) или кластер из нескольких виртуальных машин;
  • создать Serverless чат-бот для техподдержки, заказа услуг, консультаций, внутренних коммуникаций в компании — без ВМ (FunctionGraph и PaaS-сервисы), с фильтрацией входящего трафика Web Application Firewall, с сервисами управляемых БД (Relational Database Service или Document Database Service), возможностью хранения статики (S3, Object Storage Service);
  • разработать и протестировать приложения в Test&Dev-среде — ВМ на базе ОС Windows Server или Linux, RDS, OBS, инструменты CI/CD и другие.

Заключение

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