Виртуализация — это механизм создания виртуального (в нашем случае программного) представления ресурсов без привязки к аппаратному обеспечению. Виртуализировать можно серверы, СХД, сетевые ресурсы, приложения и рабочие столы.
Когда нужно описать, что такое виртуализация, определение может быть и другим: это запуск нескольких систем на базе одной вычислительной машины, при этом физические ресурсы этой машины выделяются каждой виртуальной системе независимо. Распределением ресурсов занимается хостовая ОС — гипервизор, который выдает гостевым (виртуальным) машинам процессорную мощность, оперативную память, ресурсы хранения и сетевых коммуникаций из общего пула ресурсов.
Где используется виртуализация
Продукты виртуализации востребованы у тех компаний, которые движутся в сторону цифровой трансформации и умеют считать деньги. Новая технология востребована там, где вместо нескольких маломощных и требующих модернизации машин компания планирует закупить современное оборудование и использовать его ресурсы на 100 %. Рационально переносить в виртуализированную среду мало- и средненагруженные серверы: веб-сервер, контроллеры доменов, сервер БД, с которой работают до двух-трех сотен пользователей.
Виртуализация используется при создании тестовых сред для программных продуктов перед выпуском в продакшен. Компании не придется покупать или арендовать новое оборудование — достаточно воспользоваться виртуальной средой, например, в облаке, чтобы оценить работу нового сервиса. С помощью виртуализации можно запускать ПО, которые в другой ситуации конфликтовало бы друг с другом, или разные версии одинакового ПО.
Виртуализация позволяет эмулировать работу физических устройств: рабочие ПК, планшеты, стационарные телефоны и смартфоны. Не принципиально, какая ОС или прошивка управляет ими и какие у них технические требования — виртуализация справится с любыми задачами.
Виды виртуализации
Самые популярные виды — это виртуализация серверов, СХД, сети, приложений и рабочих столов.
Виртуализация серверов
Эта технология позволяет на одной физической машине запускать несколько виртуальных машин, каждая из которых имитирует работу отдельного сервера. Программная имитация затрагивает основные компоненты сервера: процессор, накопитель, ОЗУ и другие.
Виртуализация серверов востребована в продакшн-среде, где она сокращает потребность в аппаратных ресурсах и делегирует их функции виртуальным машинам. При таком подходе компания экономит на покупке и модернизации оборудования, снижает энергопотребление и потребность в охлаждении (за счет сокращения тепловыделения).
Часто при переходе на виртуализацию приходится покупать новое, более мощное и адаптированное под специальное ПО оборудование, но эти затраты окупаются. Главное — предусмотреть поддержку аппаратных технологий виртуализации, среди которых популярны MS Hyper-V, Intel VT и AMD-V.
Виртуализация СХД
С помощью виртуализации можно распоряжаться данными как ресурсом, обеспечивая рост производительности, отказоустойчивости, доступности и безопасности. Становится проще управлять любыми объемами данных и мигрировать их между физическими носителями. Виртуализация оптимизирует использование дискового пространства, упрощает и перенос и зеркальное копирование, позволяет экономить на расширении ИТ-инфраструктуры и организовывать многоуровневое хранение.
Виртуализация корпоративной сети
В этом случае программное обеспечение виртуализации полностью эмулирует работу компонентов физической сети передачи данных. В виртуальной сети можно выполнять те же действия, что и в физической. Это повышает эффективность и позволяет работать независимо от реального физического оборудования. Например, теперь рабочие нагрузки можно подключать к любым эмулированным сетевым устройствам вроде коммутаторов, логических портов, маршрутизаторов, VPN-сетей.
Виртуализация приложений
С таким подходом приложения не требуют установки в операционную систему — их достаточно просто запускать на выбранной машине. При этом эмулируются те компоненты ОС, которые нужны приложению для нормальной работы. Каждое приложение получает свою изолированную среду, в которой работает независимо от остального ПО, и необходимые атрибуты: ключи реестра, файлы. Самые популярные приложения для виртуализации — Citrix XenApp, SoftGrid, VMware ThinApp.
Главный плюс виртуализации приложений заключается в их независимой работе (а значит, конфликты исключены). Виртуализированное ПО требует меньше физических ресурсов, чем полноценная эмуляция ОС, не загромождает реестр и не создает файлы конфигурации, засоряя систему.
Виртуализация рабочих мест
Представляет собой перенос пользовательских рабочих мест в виртуальное пространство. Рабочее место отвязывается от аппаратных компонентов, а вычисления выполняются не на конкретном пользовательском устройстве, а на центральном сервере или в облаке. Для доступа к удаленному рабочему месту используются старые ПК, тонкие клиенты (терминалы), смартфоны и планшеты. Они не обрабатывают данные, а лишь передают от пользователя команды, а обратно возвращают содержимое экрана с сервера так, словно подключены к нему напрямую.
Виртуализация рабочих мест позволяет работать с приложениями и их данными с любых устройств из любой точки мира, снизить затраты на содержание парка пользовательских компьютеров, эффективнее защищать корпоративные данные от потери и утечки.
Преимущества виртуализации
Экономический эффект
Виртуализация, виртуальные машины снижают стоимость владения ИТ-инфраструктурой и помогают в будущем сэкономить на ее содержании и модернизации. Технология объединяет в пределах одного мощного оборудования функции нескольких физических устройств, а морально устаревшему «железу» дает вторую жизнь — его можно использовать в качестве терминальных компьютеров. С уменьшением количества единиц оборудования снижается потребность в электроснабжении и охлаждении, сокращается штат технических специалистов для его обслуживания. Компании предстоят крупные затраты на этапе внедрения технологии (лицензии на специализированное ПО стоят дорого), но они окупятся за 2–4 года в зависимости от специфики бизнеса.
Меньше функций администрирования
ИТ-специалистам, занятых обслуживанием виртуальных систем, понадобятся новые знания, но в целом количество задач у них сократится. Например, для перезагрузки виртуального сервера не придется покидать рабочее место, идти в серверную и там нажимать на физическую кнопку. Достаточно зайти в консоль и нажать на Reset, не вставая со стула. Благодаря инструментам автоматизации в разы проще восстановить ИТ-инфраструктуру после серьезного сбоя: система сама через заданные промежутки времени будет делать моментальные снимки и резервировать важные данные. А запустить новый виртуальный сервер с функциями старого можно за несколько минут, так как первый представляет собой обычную программу.
Простая миграция и модернизация «железа»
С физической ИТ-инфраструктурой миграция превращалась в головную для системных администраторов и владельцев бизнеса. С виртуализацией каждая виртуальная машина «не догадывается» о том, какое оборудование установлено на физическом сервере, ресурсами которого она пользуется. Поэтому если требуется перенести виртуальные машины на другой физический сервер или обновить его компоненты, гостевые машины этого не заметят и продолжат работать в обычном режиме. Максимум, что понадобится — это внести несколько изменений в настройках.
Многие производители программных решений для виртуализации предлагают собственные разработки для сокращения времени простоя при миграции. У Microsoft соответствующая технология называется Live Migration, у VMware — Vmotion. Благодаря им пользователи могут продолжать работать со своими программами, в то время как физический сервер перезагружают или меняют на нем, например, оперативную память или сетевую карту.
Высокая отказоустойчивость
Физические серверы, на которых запущены гостевые машины, можно объединять в отказоустойчивые кластеры. Если одно физическое устройство откажет (по любой причине), виртуальные системы практически мгновенно «переедут» на другое, рабочее. Если выходит из строя обычный сервер, его ремонт и восстановление запущенных процессов занимают от нескольких часов до нескольких дней. Это может обернуться для бизнеса финансовыми и репутационными потерями.
Гибкое распределение производительности
В ситуации с несколькими физическими серверами была типичной ситуация, когда одна машина работала на пределе возможностей, а другая оказывалась загруженной вполовину или меньше. Тогда получалось, что одним приложениям ресурсов не хватало, а у других они были в избытке и простаивали без работы. Виртуализация сервисов предполагает балансировку, когда виртуальные машины перемещаются на менее нагруженные серверы, чтобы разгрузить более нагруженные. В продуктах компании Microsoft этим занимается System Center Virtual Machine Manager.