Hopp til innhold

Облачные услуги и виртуализация

Skip to content

Это машинный перевод текста, который может содержать ошибки!

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

Здесь вам нужно объяснить, что виртуальная машина (VM) и контейнер имеют общего с хостом, а также различить IaaS, PaaS и SaaS на собственных примерах. Вам не обязательно покупать облачную услугу. Используйте доступную вам VM или приведенные в тексте примеры.

Место в учебном материале: Этот уровень объясняет виртуализацию в архитектуре эксплуатации. Раздел «[[Операционная система Уровень 3 - Ядро операционной системы|Ядро операционной системы]]» описывает то, от чего гостевая операционная система имеет собственный экземпляр. [[Архитектура эксплуатации Уровень 0 - Операционная система, ВМ и контейнеры|Обзорная карта]] показывает отношения части к целому, технические связи и пути к практическим задачам.

Что такое виртуализация?

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

Программное обеспечение, которое делает это возможным, называется гипервизором:

Тип Описание Пример
Тип 1 (bare-metal) Платформа виртуализации устанавливается непосредственно на сервере Proxmox VE (KVM), VMware ESXi
Тип 2 (hosted) Работает поверх обычной операционной системы VirtualBox, VMware Workstation

Тип 1 против типа 2

  • Тип 1 — это то, что мы используем в производстве и на серверах. Proxmox работает напрямую на сервере.
  • Тип 2 — это то, что вы используете на своем компьютере для тестирования. VirtualBox запускается поверх Windows или macOS.

Что такое виртуальная машина (ВМ)?

ВМ — это виртуальная машина с виртуальным ЦП, памятью и диском. Она запускает гостевую операционную систему со собственным ядром, пока гипервизор предоставляет доступ к физическому оборудованию. Proxmox VE использует Linux и KVM для запуска ВМ; фраза «напрямую на сервере» не означает отсутствие ядра операционной системы в платформе.

Преимущества ВМ:

  • Изоляция — Сбой в одной гостевой операционной системе обычно не приводит к остановке других ВМ. Тем не менее они разделяют хоста, хранение данных и другие ресурсы и могут пострадать от общих неисправностей или дефицита ресурсов.
  • Гибкость — Вы можете запускать различные операционные системы на одном устройстве (например, Ubuntu и Windows Server).
  • Снимок/резервное копирование — Вы можете сделать снимок состояния ВМ и вернуться к нему, если что-то пойдет не так.
  • Эффективное использование ресурсов — Физическое устройство с большим объемом ОЗУ и мощным ЦП может запускать множество ВМ.

Что такое контейнеры?

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

Conainers и виртальные машины содержит иллюстрированное сравнение и также показывает, как несколько контейнеров могут работать внутри одной ВМ. Используйте его для объяснения того, что разделяет ядро, и что происходит при выключении ВМ. Затем Docker Level 0 представляет конкретный инструмент для контейнезации приложений.

На практике мы часто используем оба подхода: ВМ в качестве хостов для контейнеров Docker.

Облачные услуги

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

Модели обслуживания

Существуют три основные модели облачных услуг:

Модель Полное название Что вы получаете Чем управляете сами Пример
IaaS Инфраструктура как услуга (Infrastructure as a Service) Виртуальные машины, сети и хранилище ОС, приложения, конфигурация Azure VM, AWS EC2
PaaS Платформа как услуга (Platform as a Service) Готовая платформа для запуска вашего кода Только приложение Azure App Service, Heroku
SaaS Программное обеспечение как услуга (Software as a Service) Готовые приложения, используемые через браузер или мобильное приложение Пользователи, доступ, данные и доступные настройки Microsoft 365, Google Docs

Простой способ запомнить это

  • IaaS = Вы арендуете пустую машину. Вы устанавливаете и настраиваете всё сами.
  • PaaS = Вы арендуете готовое окружение. Вам нужно только добавить свой код.
  • SaaS = Вы арендуете готовое приложение. Вам нужно просто войти в систему и использовать его.

Модели доставки

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

Модель Описание Пример
Публичное облако Общая инфраструктура, доступная для всех Azure, AWS, Google Cloud
Приватное облако Облачная среда для одной организации Внутренняя среда с самообслуживанием, общим использованием ресурсов и масштабированием
Гибридное облако Комбинация публичного и приватного Некоторые службы локально, некоторые в Azure

ВПС: типичное облачное решение

Виртуальный выделенный сервер (VPS — Virtual Private Server) является одним из наиболее распространённых решений в модели IaaS. Вы арендуете виртуальную машину у провайдера облачных услуг и имеете полный контроль над ней, точно так же, как если бы у вас был собственный физический сервер.

Типовые сценарии использования:

  • Запуск веб-сервера
  • Настройка службы VPN
  • Размещение приложения (например, Flask + база данных)
  • Тестирование без риска для собственного оборудования

Примеры поставщиков, предлагающих виртуальные сервера:

  • Akamai (Linode)
  • DigitalOcean
  • Hetzner
  • Microsoft Azure

Расходы в облаке

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

Локально или в облаке

Многие компании используют комбинацию локальных серверов и облачных услуг. Вот некоторые факторы, которые следует учитывать:

Фактор Локальный (на месте) Облако
Контроль Полный контроль над оборудованием и данными Зависит от поставщика
Стоимость Большие начальные инвестиции Ежемесячные текущие расходы
Масштабируемость Ограничена физическим оборудованием Можно масштабировать вверх и вниз по мере необходимости
Поддержка Вы должны ремонтировать всё сами Поставщик обслуживает оборудование
Конфиденциальность данных Вы знаете, где находятся данные Данные могут храниться в других странах

Легко Задание 1 — Исследование виртуальной машины (VM)

Используйте виртуальную машину (VM), к которой у вас уже есть доступ. Если вы используете Proxmox, в разделе [[Установка сервера Уровень 3 — Навигация в Proxmox VE|Навигация в Proxmox VE]] описано, как просмотреть информацию о ЦП, ОЗУ и диске. Если вам нужно создать новую VM, следуйте инструкции по установке: [[Установка сервера Уровень 2 — Виртуальная машина в Proxmox|инструкция по установке]]. Для выполнения этого задания не требуется устанавливать дополнительный гипервизор на вашем собственном компьютере.

  • Сколько ресурсов ЦП, ОЗУ и хранилища выделено данной VM?
  • Что разделяется с другими VM-машинами на физическом хосте?
  • Что может произойти, если несколько VM-машин в совокупности потребляют больше памяти, чем доступно на хосте? Объясните это без изменения настроек ресурсов.

Если у вас нет доступной VM, используйте рекомендации по ресурсам из инструкции по установке в качестве гипотетического примера. Отметьте ответ как объяснение данного примера, а не как описание выполненной установки.

Легко Задание 2 — Запуск контейнера с помощью Docker

Используйте контейнер Nginx из раздела Запуск и исследование контейнера, если вы уже выполнили это упражнение. Если вы его удалили, создайте заново в соответствии с инструкциями по работе с контейнером. Если у вас нет Docker, начните с установки. Объясните, какое ядро использует контейнер, и сравните процесс запуска с виртуальной машиной (VM). Если у вас нет доступа к Docker, используйте схемы из раздела [[Containerisering Level 1 - Containere og virtueller maskiner|Контейнеризация: уровни 1–3 – Контейнеры и виртуальные машины]], чтобы объяснить различия без притворства того, что вы провели практический тест.

Легко Задание 3 — Какие облачные сервисы вы уже используете?

Подумайте о том, какие услуги вы используете в повседневной жизни:

  • Microsoft 365 (Word, Teams, OneDrive) — это SaaS
  • GitHub Pages для хостинга веб-сайта — это PaaS
  • Виртуальная машина в Proxmox демонстрирует виртуализацию. Она не является автоматически IaaS; все зависит от того, как ресурсы предоставляются и управляются как услуга.

Сможете ли вы классифицировать другие используемые вами службы?

Easy Задание 4 — Где хранятся ваши данные?

Перейдите на страницу Microsoft Privacy Dashboard и посмотрите, что Microsoft сохраняет о вас. Также проверьте условия использования облачного сервиса, которым вы пользуетесь:

  • В какой части мира хранятся данные?
  • Что происходит с данными, если вы удаляете свой аккаунт?
  • Принадлежат ли вам ваши данные или их собственником является провайдер?

Эти вопросы особенно важны в контексте GDPR (Общего регламента по защите данных) и конфиденциальности персональных данных.

Проверьте объяснение

Устно или письменно объясните, почему виртуальная машина в Proxmex не является автоматически облачным сервисом. Затем выберите по одному примеру для моделей IaaS, PaaS и SaaS и опишите, что управляет клиент, а что — поставщик услуг в каждом случае. Если вы просто перечисляете названия, используйте таблицу моделей обслуживания для пояснения распределения ответственности.

Резюме

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

Источники: NIST: определение облачных услуг и Proxmox VE: KVM и виртуальные машины.