Даже в своей самой простой форме технологии виртуализации привели к глубоким изменениям в центрах обработки данных: изменились серверы, запоминающие устройства, сети.
В данной статье речь пойдет исключительно о гипервизоре, испытанной технологии, в течение многих лет применявшейся для работы серверов как многоабонентского устройства (возможности для одного сервера выполнять несколько вычислительных рабочих нагрузок, как будто они выполняются на нескольких серверах).
Существует несколько базовых понятий, которые необходимо усвоить в отношении современного гипервизора.
На самом высоком уровне технологии гипервизора представляют интеллектуальные программные компоненты, позволяющие абстрагировать аппаратные ресурсы и обеспечивать многоабонентскую работу серверов.
Эти виртуальные серверы (или службы) представляют собой программные виртуальные машины (ВМ), обращающиеся к базовым физическим ресурсам сервера и делящиеся этими ресурсами друг с другом.
Основные определения
- Гипервизор типа I (рис.1). Он развертывается на компьютере без операционной системы. Таким образом , это первый программный продукт, устанавливаемый на сервере. Он будет напрямую взаимодействовать с аппаратными средствами физического сервера. Затем эти ресурсы паравиртуализуются и предоставляются работающим виртуальным машинам. Это предпочтительный метод для многих производственных систем.
- Гипервизор типа II (рис.2). Эта модель, показанная на рисунке 2, также известна как хостируемый (hosted) гипервизор. Программа устанавливается не на «голом» железе, а поверх действующей операционной системы.Например, на сервер с Windows Server 2008 R2 поверх операционной системы может быть установлен гипервизор VMware Workstation 8. Появляется дополнительный уровень программного обеспечения, через который передаются вычислительные ресурсы, прежде чем они достигнут виртуальной машины, но задержка минимальная, и благодаря современным усовершенствованиям производительность гипервизора может оставаться оптимальной.
- Гостевая машина или виртуальная машина, представляет собой рабочую нагрузку, то есть рабочее приложение, устанавливаемое поверх гипервизора. Это может быть виртуальное устройство, операционная система или виртуализуемая рабочая нагрузка другого типа. Гостевая машина исходит из того, что является самостоятельным компьютером с собственными выделенными устройствами. Таким образом, благодаря виртуализации вы можете использовать один физический компьютер для выполнения нескольких рабочих нагрузок . Все это происходит при интеллектуальном распределении ресурсов между виртуальными машинами.
- Хост-компьютер. Это физический сервер. Виртуализация может охватывать несколько компонентов — сети хранения SAN, локальные сети, проводные соединения и т.д., но в данной статье мы сосредоточимся на ресурсах физического сервера. Основные ресурсы — оперативная память и процессор — делятся между виртуальными машинами и распределяются по усмотрению администратора. Машина, которой требуется больше оперативной памяти (например, контроллер домена), получит больше ресурсов, а менее важная виртуальная машина (скажем, сервер лицензий) будет иметь меньше ресурсов. Благодаря современным технологиям гипервизоров многие ресурсы можно выделять динамически.
- Инструменты паравиртуализации. После установки гостевой виртуальной машины поверх гипервизора на этой виртуальной машине обычно устанавливается набор инструментов. Они предоставляют набор операций и драйверов для оптимизации работы гостевых виртуальных машин. Например, хотя собственные драйверы для сетевой платы будут работать, взаимодействие паравиртуальных драйверов сетевой платы с базовым физическим уровнем будет гораздо более эффективным и обеспечит сложные сетевые технологии работы.
- Контейнеры. Эта технология все чаще используется совместно с традиционными гипервизорами, такими как VMware или XenServer, или вместо них. Виртуализация уровня операционной системы — превосходный инструмент для создания надежно изолированных многоабонентских сред.
Технологии контейнеров, такие как Docker, добавляют новый уровень абстракции и автоматизации на платформе виртуализации уровня операционной системы на серверах Linux.Контейнеры приложений помогают абстрагировать процесс виртуализации уровня операционной системы. Это дает администраторам большую степень контроля над службами подготовки, расширенные ограничения в области безопасности и процессов и даже более интеллектуальную изоляцию ресурсов.
Это важно, поскольку вы можете, например, запустить контейнер Microsoft IIS, не выделяя целиком виртуальную машину или лицензию операционной системы. Вы непосредственно запускаете только контейнер I IS. Аналогично другие поставщики, такие как Citrix со своей NetScaler СРХ, могут запускать мини-ADC в контейнерной среде.
Интеграция становится все более тесной. Среда Microsoft Azure дополнена поддержкой контейнеров Docker на виртуальных машинах Linux, что позволяет обширной экосистеме «докеризованных» приложений Linux работать в «облаке» Azure.
При еще более глубоком внедрении «облака» системы контейнеров, использующие Docker, также могут быть интегрированы с платформами Chef, Puppet, OpenStack и Amazon Web Services. Red Hat тоже вступил в игру, оснастив Docker таким передовым инструментарием Linux, как systemd и SELinux.
Все эти инструменты дают возможность вынести систему контейнеров за пределы вашего центра обработки данных. Новые возможности позволяют создать собственную гибридно-«облачную» экосистему контейнеров, охватывающую центр обработки данных и, например, AWS.
Наконец, основные поставщики гипервизоров также предоставляют передовые службы контейнеров. Среди них три наиболее важных: VMware vSphere, Microsoft Hyper-V и Citrix XenServer.
Профессионально реализовать виртуализацию серверов поможет команда специалистов с 10-и летним опытом. Пишите нам [email protected]