Как устроены облака

Сейчас это не про те облака, что летают (хотя там есть разные виды: перистые, кучевые, слоистые…). Это про облака, которые считают. Это целый мир разных компонентов, для разных целей. Итак,

1. Вычисления (Compute):

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

  • Виртуальные машины (VM): полноценные виртуальные компьютеры с собственной операционной системой. Обеспечивают высокую изоляцию и подходят для приложений, требующих полного контроля над ОС.
    Примеры: AWS (Amazon) EC2, Azure Virtual Machines, GCP (Google) Compute Engine
  • Контейнеры: лёгкие изолированные среды, использующие ядро хост-ОС. Позволяют быстро запускать, масштабировать и переносить приложения, особенно в архитектуре микросервисов.
    Примеры: Docker, AWS ECS/Fargate, Azure Container Instances, GCP GKE
  • Бессерверные функции (Serverless): выполнение кода без управления серверами. Платформа автоматически масштабируется и оплачивается только фактическое время выполнения. Подходит для событийных задач, API и фоновых процессов.
    Примеры: AWS Lambda, Azure Functions, GCP Cloud Functions

Простая аналогия:
Виртуальная машина — как отдельный компьютер,
контейнер — как коробка с приложением,
а бессерверная функция — как кнопка: нажал → код выполнился → ресурсы освободились.

2. Хранение данных (Storage):

Облачные платформы предлагают разные виды хранилищ:

  • Блочное хранилище (Block Storage): делит данные на блоки и подключается к виртуальной машине как обычный диск. Отлично подходит для баз данных и операционных систем.
  • Объектное хранилище (Object Storage): хранит файлы как объекты с метаданными, доступные через API. Идеально для бэкапов, мультимедиа и больших файлов.
  • Файловое хранилище (File Storage): предоставляет общий файловый доступ с иерархией папок и файлов, похожий на сетевой диск. Удобно для приложений, которым нужен совместный доступ к файлам или стандартные файловые пути.

Примеры платформ:

  • AWS: EBS (блоки), S3 (объекты), EFS (файлы)
  • Azure: Disk Storage (блоки), Blob Storage (объекты), Files (файлы)
  • GCP: Persistent Disk (блоки), Cloud Storage (объекты), Filestore (файлы)
3. Сети и коммуникации (Networking):


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

  • Виртуальная сеть (VPC / VNet): изолированное сетевое пространство внутри облака, где размещаются серверы, базы данных и сервисы. Позволяет контролировать IP-адресацию, маршрутизацию и безопасность.
  • Балансировка нагрузки (Load Balancing): распределяет входящий трафик между несколькими экземплярами приложения, повышая отказоустойчивость и производительность.
  • CDN (Content Delivery Network): сеть серверов по всему миру, которая доставляет контент пользователям с ближайшей точки, уменьшая задержки.

Примеры платформ:

  • AWS: VPC, Elastic Load Balancer, CloudFront
  • Azure: Virtual Network, Load Balancer, Azure CDN
  • GCP: VPC, Cloud Load Balancing, Cloud CDN

Простая аналогия:
частная дорога (VPC),
диспетчер потоков (Load Balancer)
и склады ближе к клиентам (CDN).

4. Базы данных (Databases):


Облачные базы данных позволяют хранить и обрабатывать данные без ручного администрирования серверов.

  • Реляционные базы данных (SQL): подходят для структурированных данных, транзакций и строгих схем.
  • Нереляционные базы данных (NoSQL): предназначены для гибких схем, больших объёмов данных и высокой масштабируемости.
  • Полностью управляемые сервисы: платформа берёт на себя резервное копирование, обновления и масштабирование.

Примеры платформ:

  • AWS: RDS, Aurora (SQL), DynamoDB (NoSQL)
  • Azure: SQL Database, Database for PostgreSQL, Cosmos DB
  • GCP: Cloud SQL, Firestore, Bigtable
5. Инструменты управления и разработки (Dev & Management Tools):


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

  • Инфраструктура как код (IaC): описание облачных ресурсов в виде конфигураций, которые можно повторно разворачивать.
  • Мониторинг и логирование: сбор метрик, логов и алертов для понимания, как работает система.
  • CI/CD и автоматизация: автоматическая сборка, тестирование и деплой приложений.

Примеры платформ:

  • AWS: CloudFormation, CloudWatch, CodePipeline
  • Azure: Resource Manager, Monitor, Azure DevOps
  • GCP: Deployment Manager, Cloud Monitoring, Cloud Build

Простая аналогия:
инструкции (IaC),
приборная панель (мониторинг)
и автоматический конвейер доставки кода.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *