Виртуализация
В вычислительной технике виртуализация или виртуализация на британском английском языке (иногда сокращенно v12n , нумероним ) — это процесс создания виртуальной (а не фактической) версии чего-либо на том же уровне абстракции, включая аппаратные платформы виртуальных компьютеров, устройства хранения данных и компьютерную сеть. ресурсы.
Виртуализация началась в 1960-х годах как метод логического разделения системных ресурсов, предоставляемых мэйнфреймами, между различными приложениями. Ранним и успешным примером является IBM CP/CMS . Программа управления CP предоставила каждому пользователю моделируемый автономный компьютер System/360. С тех пор значение этого термина расширилось. [ 1 ]
Популярные примеры программного обеспечения для виртуализации включают VirtualBox и VMware Workstation Player .
Аппаратная виртуализация
[ редактировать ]Виртуализация оборудования или виртуализация платформы означает создание виртуальной машины , которая действует как настоящий компьютер с операционной системой. Программное обеспечение, выполняемое на этих виртуальных машинах, отделено от базовых аппаратных ресурсов. Например, на компьютере под управлением Arch Linux может быть установлена виртуальная машина, похожая на компьютер с операционной системой Microsoft Windows ; Программное обеспечение на базе Windows можно запускать на виртуальной машине. [ 2 ] [ 3 ]
При аппаратной виртуализации хост-машина — это машина, которая используется виртуализацией, а гостевая машина — это виртуальная машина. Слова хост и гость используются для того, чтобы отличить программное обеспечение, работающее на физической машине, от программного обеспечения, работающего на виртуальной машине. Программное обеспечение или встроенное ПО , создающее виртуальную машину на аппаратном обеспечении хоста, называется гипервизором или монитором виртуальной машины . [ 4 ]
К различным типам аппаратной виртуализации относятся:
- Полная виртуализация . Почти полная симуляция реального оборудования, позволяющая программным средам, включая гостевую операционную систему и ее приложения, работать без изменений.
- Паравиртуализация . Гостевые приложения выполняются в своих изолированных доменах, как если бы они работали в отдельной системе, но аппаратная среда не моделируется. Гостевые программы необходимо специально модифицировать для работы в этой среде.
Виртуализация с аппаратной поддержкой — это способ повышения общей эффективности виртуализации. Сюда входят процессоры, обеспечивающие аппаратную поддержку виртуализации, и другие аппаратные компоненты, помогающие повысить производительность гостевой среды. [ 5 ]
Виртуализацию оборудования можно рассматривать как часть общей тенденции в корпоративных ИТ, которая включает в себя автономные вычисления (сценарий, в котором ИТ-среда сможет управлять собой на основе воспринимаемой активности), а также служебные вычисления , в которых вычислительная мощность компьютера рассматривается как коммунальные услуги, за которые клиенты могут платить только по мере необходимости. Обычная цель виртуализации — централизовать административные задачи, одновременно улучшая масштабируемость и общее использование аппаратных ресурсов. Благодаря виртуализации несколько операционных систем могут работать параллельно на одном центральном процессоре (ЦП). Этот параллелизм способствует снижению накладных расходов и отличается от многозадачности, которая предполагает запуск нескольких программ в одной и той же ОС. Используя виртуализацию, предприятие может лучше управлять обновлениями и быстрыми изменениями операционной системы и приложений, не отвлекая пользователя. «В конечном счете, виртуализация значительно повышает эффективность и доступность ресурсов и приложений в организации. Вместо того, чтобы полагаться на старую модель «один сервер, одно приложение», которая приводит к недостаточному использованию ресурсов, виртуальные ресурсы динамически применяются для удовлетворения потребностей бизнеса без каких-либо затрат. лишний жир» (ConsonusTech). [ 6 ]
Аппаратная виртуализация — это не то же самое, что эмуляция оборудования . При аппаратной эмуляции одно оборудование имитирует другое, а при аппаратной виртуализации гипервизор (часть программного обеспечения) имитирует конкретную часть компьютерного оборудования или весь компьютер. Более того, гипервизор — это не то же самое, что эмулятор ; обе представляют собой компьютерные программы, имитирующие аппаратное обеспечение, но область их использования на языке различается. [ 7 ]
Снимки
[ редактировать ]Снимок — это состояние виртуальной машины и, как правило, ее устройств хранения данных в определенный момент времени. Снимок позволяет позднее восстановить состояние виртуальной машины на момент создания снимка, эффективно отменяя любые изменения, произошедшие впоследствии. Эта возможность полезна в качестве метода резервного копирования , например, перед выполнением рискованной операции. [ нужна ссылка ]
Виртуальные машины часто используют виртуальные диски в качестве хранилища; В очень простом примере 10- гигабайтный жесткий диск моделируется с помощью 10-гигабайтного плоского файла . Любые запросы виртуальной машины о местоположении на ее физическом диске прозрачно преобразуются в операцию над соответствующим файлом. Однако если такой уровень перевода присутствует, можно перехватывать операции и отправлять их в разные файлы в зависимости от различных критериев. Каждый раз, когда создается снимок, создается новый файл, который используется в качестве наложения на предыдущие файлы. Новые данные записываются в самое верхнее наложение; Однако чтение существующих данных требует сканирования иерархии наложения, что приводит к доступу к самой последней версии. Таким образом, весь стек снимков представляет собой практически один связный диск; в этом смысле создание снимков работает аналогично методу инкрементального резервного копирования . [ нужна ссылка ]
В снимок также можно включить и другие компоненты виртуальной машины, например содержимое ее оперативной памяти (ОЗУ), настройки BIOS или параметры конфигурации. « Сохранить состояние Функция » в эмуляторах игровых консолей является примером таких снимков. [ нужна ссылка ]
Восстановление снимка заключается в удалении или игнорировании всех слоев наложения, добавленных после этого снимка, и направлении всех новых изменений в новое наложение. [ нужна ссылка ]
Миграция
[ редактировать ]Описанные выше снимки можно переместить на другую хост-машину с собственным гипервизором; когда виртуальная машина временно останавливается, создается снимок, перемещается, а затем возобновляется на новом хосте, это называется миграцией. Если старые снимки регулярно синхронизируются, эта операция может быть довольно быстрой и позволить виртуальной машине обеспечивать бесперебойное обслуживание, в то время как ее предыдущий физический хост, например, отключается для физического обслуживания. [ нужна ссылка ]
Аварийное переключение
[ редактировать ]Подобно механизму миграции, описанному выше, аварийное переключение позволяет виртуальной машине продолжать работу в случае сбоя хоста. Обычно это происходит, если миграция перестала работать. Однако в этом случае виртуальная машина продолжает работу из последнего известного когерентного состояния, а не из текущего состояния, основываясь на тех материалах, которые последний раз предоставлялись серверу резервного копирования. [ нужна ссылка ]
Эмуляция игровой консоли
[ редактировать ]Эмулятор игровой консоли — это программа, которая позволяет персональному компьютеру или игровой консоли имитировать поведение другой игровой консоли. Эмуляторы игровых консолей и гипервизоры выполняют аппаратную виртуализацию; такие слова, как «виртуализация», «виртуальная машина», «хост» и «гость», не используются в сочетании с эмуляторами консоли. [ нужна ссылка ]
Вложенная виртуализация
[ редактировать ]Вложенная виртуализация означает возможность запуска одной виртуальной машины внутри другой, причем эту общую концепцию можно расширить на произвольную глубину. Другими словами, вложенная виртуализация означает запуск одного или нескольких гипервизоров внутри другого гипервизора. Характер вложенной гостевой виртуальной машины не обязательно должен быть однородным с виртуальной машиной ее хоста; например, виртуализацию приложений можно развернуть на виртуальной машине, созданной с помощью аппаратной виртуализации . [ 8 ]
Вложенная виртуализация становится все более необходимой, поскольку широко распространенные операционные системы получают встроенные функции гипервизора, которые в виртуализированной среде можно использовать только в том случае, если окружающий гипервизор поддерживает вложенную виртуализацию; например, Windows 7 способна запускать приложения Windows XP на встроенной виртуальной машине. Более того, перемещение уже существующих виртуализированных сред в облако в соответствии с подходом «Инфраструктура как услуга » (IaaS) намного сложнее, если конечная платформа IaaS не поддерживает вложенную виртуализацию. [ 9 ] [ 10 ]
Способ реализации вложенной виртуализации в конкретной компьютерной архитектуре зависит от поддерживаемых возможностей виртуализации с аппаратной поддержкой . Если конкретная архитектура не обеспечивает аппаратную поддержку, необходимую для вложенной виртуализации, для ее реализации используются различные программные методы. [ 9 ] Со временем все больше архитектур получают необходимую аппаратную поддержку; например, после появления микроархитектуры Haswell (анонсированной в 2013 году) Intel начала включать теневое копирование VMCS в качестве технологии, ускоряющей вложенную виртуализацию. [ 11 ]
Лицензирование
[ редактировать ]Виртуальные машины под управлением проприетарных операционных систем требуют лицензирования независимо от операционной системы хост-компьютера. Например, установка Microsoft Windows на гостевую виртуальную машину требует соблюдения лицензионных требований. [ 12 ] [ 13 ] [ 14 ]
Виртуализация настольных компьютеров
[ редактировать ]Виртуализация рабочих столов — это концепция отделения логического рабочего стола от физической машины.
Одну форму виртуализации рабочих столов — инфраструктуру виртуальных рабочих столов (VDI) — можно рассматривать как более продвинутую форму виртуализации оборудования. Вместо того, чтобы взаимодействовать с главным компьютером напрямую через клавиатуру, мышь и монитор, пользователь взаимодействует с главным компьютером с помощью другого настольного компьютера или мобильного устройства посредством сетевого подключения, такого как локальная сеть , беспроводная локальная сеть или даже Интернет. . Кроме того, главный компьютер в этом сценарии становится серверным компьютером, способным одновременно размещать несколько виртуальных машин для нескольких пользователей. [ 15 ]
Поскольку организации продолжают виртуализировать и конвергентировать свою среду центров обработки данных, клиентские архитектуры также продолжают развиваться, чтобы воспользоваться преимуществами предсказуемости, непрерывности и качества обслуживания, предоставляемых их конвергентной инфраструктурой . Например, такие компании, как HP и IBM, предлагают гибридную модель VDI с рядом программного обеспечения для виртуализации и моделей доставки, позволяющую устранить ограничения распределенных клиентских вычислений . [ 16 ] Выбранные клиентские среды перемещают рабочие нагрузки с ПК и других устройств на серверы центров обработки данных, создавая хорошо управляемые виртуальные клиенты, при этом приложения и клиентские операционные среды размещаются на серверах и в хранилище в центре обработки данных. Для пользователей это означает, что они могут получить доступ к своему рабочему столу из любого места, не привязываясь к одному клиентскому устройству. Поскольку ресурсы централизованы, пользователи, перемещающиеся между рабочими местами, по-прежнему могут получить доступ к одной и той же клиентской среде со своими приложениями и данными. [ 16 ] Для ИТ-администраторов это означает более централизованную и эффективную клиентскую среду, которую легче обслуживать и которая способна быстрее реагировать на меняющиеся потребности пользователя и бизнеса. [ 17 ] Другая форма, виртуализация сеансов, позволяет нескольким пользователям подключаться и входить в общий, но мощный компьютер по сети и использовать его одновременно. Каждому дается рабочий стол и личная папка, в которой он хранит свои файлы. [ 15 ] При многопользовательской конфигурации виртуализацию сеансов можно выполнить с использованием одного ПК с несколькими подключенными мониторами, клавиатурами и мышами.
Тонкие клиенты , которые используются в виртуализации настольных компьютеров, представляют собой простые и/или дешевые компьютеры, которые в первую очередь предназначены для подключения к сети. Им может не хватать значительного места на жестком диске , оперативной памяти или даже вычислительной мощности , но многие организации начинают рассматривать экономическую выгоду от отказа от настольных компьютеров «толстого клиента», которые оснащены программным обеспечением (и требуют лицензионных сборов за программное обеспечение), и делают больше стратегических инвестиций. . [ 18 ] Виртуализация настольных компьютеров упрощает управление версиями программного обеспечения и исправлениями: новый образ просто обновляется на сервере, а настольный компьютер получает обновленную версию при перезагрузке. Это также обеспечивает централизованный контроль над тем, к каким приложениям пользователю разрешен доступ на рабочей станции.
При перемещении виртуализированных рабочих столов в облако создаются размещенные виртуальные рабочие столы (HVD), в которых образы рабочих столов централизованно управляются и обслуживаются специализированной хостинговой фирмой. Преимущества включают масштабируемость и сокращение капитальных затрат, которые заменяются ежемесячными эксплуатационными расходами. [ 19 ]
Контейнеризация
[ редактировать ]Виртуализация на уровне операционной системы, также известная как контейнеризация , относится к функции операционной системы , в которой ядро допускает существование нескольких изолированных экземпляров пользовательского пространства . Такие экземпляры, называемые контейнерами, [ 20 ] разделы, виртуальные среды (VE) или клетки ( тюрьма FreeBSD или клетка chroot ) могут выглядеть как настоящие компьютеры с точки зрения программ, работающих в них. Компьютерная программа, работающая в обычной операционной системе, может видеть все ресурсы (подключенные устройства, файлы и папки, общие сетевые ресурсы , мощность процессора, измеримые аппаратные возможности) этого компьютера. Однако программы, работающие внутри контейнера, могут видеть только содержимое контейнера и устройства, назначенные ему.
Это обеспечивает многие преимущества виртуальных машин, такие как стандартизация и масштабируемость, при этом используется меньше ресурсов, поскольку ядро распределяется между контейнерами. [ 21 ]
Контейнеризация начала приобретать популярность в 2014 году с появлением Docker . [ 22 ] [ 23 ]
Другие типы
[ редактировать ]- Программное обеспечение
- Виртуализация приложений и виртуализация рабочей области : изоляция отдельных приложений от базовой ОС и других приложений; тесно связан с концепцией портативных приложений
- Виртуализация сервисов : эмуляция поведения конкретных компонентов в гетерогенных приложениях на основе компонентов, таких как API приложения на основе , облачные приложения и сервис-ориентированные архитектуры.
- Память
- Виртуализация памяти : агрегирование ресурсов оперативной памяти (ОЗУ) сетевых систем в единый пул памяти.
- Виртуальная память : создание у приложения впечатления, что оно имеет непрерывную рабочую память, изолируя ее от базовой реализации физической памяти.
- Хранилище
- Виртуализация хранилища : процесс полного абстрагирования логического хранилища от физического.
- Распределенная файловая система : любая файловая система , которая обеспечивает доступ к файлам с нескольких хостов, совместно используемых через компьютерную сеть.
- Виртуальная файловая система : уровень абстракции поверх более конкретной файловой системы, позволяющий клиентским приложениям единообразно получать доступ к различным типам конкретных файловых систем.
- Гипервизор хранилища : программное обеспечение, которое управляет виртуализацией хранилища и объединяет ресурсы физического хранилища в один или несколько гибких пулов логического хранилища. [ 24 ]
- Виртуальный диск : компьютерная программа, которая эмулирует дисковод, такой как жесткий диск или привод оптических дисков (см. сравнение программного обеспечения для создания образов дисков ).
- Данные
- Виртуализация данных : представление данных в виде абстрактного уровня, независимого от базовых систем баз данных, структур и хранилищ.
- Виртуализация базы данных : разделение уровня базы данных, который находится между уровнями хранения и уровнями приложений внутри стека приложений по всем
- Сеть
- Виртуализация сети : создание виртуализированного сетевого адресного пространства внутри или между подсетями сети.
- Виртуальная частная сеть (VPN): сетевой протокол , который заменяет реальный провод или другую физическую среду в сети абстрактным уровнем, позволяя создавать сеть через Интернет.
- Виртуализация сетевых протоколов : разделение сетевых уровней для ускорения развертывания сетей и управления ими.
См. также
[ редактировать ]- Программное обеспечение для виртуализации с помощью искусственного интеллекта
- Хронология развития виртуализации
- Виртуализация сетевых функций
- Цифровой двойник
- Эмуляция (вычисления)
- Компьютерное моделирование
- Контейнеризация
- Коэффициент консолидации
- Виртуализация ввода-вывода
- Контрольная точка приложения
- Виртуальное искусство
- Виртуализация и эмуляция ОС на Android
- Виртуализация приложений
- Виртуализация пользователей
Ссылки
[ редактировать ]- ^ Грациано, Чарльз. «Анализ производительности гипервизоров Xen и KVM для размещения проекта Xen Worlds Project» . Проверено 29 января 2013 г.
- ^ Тюрбан, Е; Кинг, Д; Ли, Дж; Виланд, Д. (2008). «Глава 19: Создание приложений и инфраструктуры электронной коммерции». Электронная коммерция с управленческой точки зрения . Прентис-Холл. п. 27.
- ^ «Виртуализация в образовании» (PDF) . ИБМ . Октябрь 2007 года . Проверено 6 июля 2010 г.
Виртуальный компьютер — это логическое представление компьютера в программном обеспечении. Отделяя физическое оборудование от операционной системы, виртуализация обеспечивает большую эксплуатационную гибкость и увеличивает коэффициент использования базового физического оборудования.
- ^ Тюрбан, Е; Кинг, Д.; Ли, Дж.; Виланд, Д. (2008). «19». Электронная коммерция с точки зрения менеджмента (PDF) (5-е изд.). Прентис-Холл. п. 27.
- ^ «Виртуализация в образовании» (PDF) . ИБМ . Октябрь 2007 года . Проверено 6 июля 2010 г.
- ^ «Виртуализация в образовании» (PDF) . ИБМ . Октябрь 2007 года . Проверено 6 июля 2010 г.
- ^ Кризи, Р.Дж. (1981). «Происхождение системы разделения времени VM/370» (PDF) . ИБМ . Проверено 26 февраля 2013 г.
- ^ Орит Вассерман, Red Hat (2013). «Вложенная виртуализация: теневые черепахи» (PDF) . КВМ-форум . Проверено 7 мая 2021 г.
- ^ Перейти обратно: а б Мули Бен-Иегуда; Майкл Д. Дэй; Цви Дубицкий; Майкл Фактор; Надав Хар'Эл; Абель Гордон; Энтони Лигуори; Орит Вассерман; Бен-Ами Яссур (23 сентября 2010 г.). «Проект Черепахи: проектирование и реализация вложенной виртуализации» (PDF) . usenix.org . Проверено 16 декабря 2014 г.
- ^ Алекс Фишман; Майк Рапопорт; Евгений Будиловский; Изик Эйдус (25 июня 2013 г.). «HVX: виртуализация облака» (PDF) . www.rackcdn.com . Проверено 16 декабря 2014 г.
- ^ «Процессоры Intel Core vPro 4-го поколения с теневым копированием Intel VMCS» (PDF) . Интел . 2013 . Проверено 16 декабря 2014 г.
- ^ Фоли, Мэри Джо (5 июля 2012 г.). «Microsoft публикует версии Windows Server 2012, лицензирование» . ЗДНет . CBS Интерактив .
Финн объяснил, что Standard охватывает два процессора на хосте и переходит от одного VOSE (среда виртуальной операционной системы — 1 бесплатная стандартная установка на виртуальной машине на этом хосте) к двум, и «теперь обладает всеми функциями и масштабируемостью Datacenter». Он отметил, что будет небольшое повышение цен, но сказал, что, по его мнению, это не будет иметь значения, поскольку «в любом случае его следует виртуализировать, а удвоение прав VOSE компенсирует это». Windows Server Datacenter имел как минимум две лицензии на 1 процессор с неограниченным количеством VOSE. «Теперь это более простой SKU, который охватывает два процессора в хосте с неограниченным количеством VOSE», — сказал Финн.
- ^ «Часто задаваемые вопросы о лицензировании и ценах Windows Server 2012» (PDF) . Майкрософт . Проверено 5 июля 2012 г.
- ^ «Лицензирование настольной операционной системы Windows для использования с виртуальными машинами» (PDF) . microsoft.com . Майкрософт . Проверено 22 декабря 2018 г.
- ^ Перейти обратно: а б «Стратегии обеспечения потребительства» (PDF) . Корпорация Майкрософт. Апрель 2011. с. 9. Архивировано из оригинала (PDF) 15 августа 2011 года . Проверено 22 июля 2011 г.
- ^ Перейти обратно: а б Черников, Дэвид, «HP VDI выходит в центр внимания», ZDNet, 19 августа 2011 г.
- ^ Бабураджан, Раджани, «Растущие возможности рынка облачных хранилищ укрепляют поставщиков», infoTECH, 24 августа 2011 г. It.tmcnet.com. 24 августа 2011 г.
- ^ «Виртуализация настольных компьютеров пытается найти свое место на предприятии» . Dell.com . Проверено 19 июня 2012 г.
- ^ «HVD: серебряная подкладка облака» (PDF) . Внутренняя технология. Архивировано из оригинала (PDF) 2 октября 2012 года . Проверено 30 августа 2012 г.
- ^ Хогг, Скотт (26 мая 2014 г.). «Программные контейнеры: используются чаще, чем многие думают» . Сетевой мир . Сетевой мир, Inc. Проверено 9 июля 2015 г.
- ^ Ганди, Раджив (6 февраля 2019 г.). «Преимущества контейнеризации и что это значит для вас» . Блог IBM . Проверено 15 марта 2024 г.
- ^ Воан-Николс, Стивен Дж. (21 марта 2018 г.). «Что такое Docker и почему он так популярен?» . ЗДНет . CBS Интерактив .
- ^ Батлер, Брэндон (10 июня 2014 г.). «Docker 101: что это такое и почему это важно» . Сетевой мир . ИДГ .
- ^ «Белая книга Enterprise Systems Group, страница 5» (PDF) . Технический документ Группы стратегии предприятия, написанный и опубликованный 20 августа 2011 г. Марком Питерсом. Архивировано из оригинала (PDF) 30 марта 2012 года . Проверено 18 июля 2013 г.
Внешние ссылки
[ редактировать ]- Введение в виртуализацию. Архивировано 22 октября 2020 г. в Wayback Machine , январь 2004 г., автор: Амит Сингх.