Loading AI tools
разделение виртуальной машины и оборудования Из Википедии, свободной энциклопедии
Виртуализа́ция — предоставление набора вычислительных ресурсов или их логического объединения, абстрагированное от аппаратной реализации, и обеспечивающее при этом логическую изоляцию друг от друга вычислительных процессов, выполняемых на одном физическом ресурсе.
Примером использования виртуализации является возможность запуска нескольких операционных систем на одном компьютере: при том каждый из экземпляров таких гостевых операционных систем работает со своим набором логических ресурсов (процессорных, оперативной памяти, устройств хранения), предоставлением которых из общего пула, доступного на уровне оборудования, управляет хостовая операционная система — гипервизор. Также могут быть подвергнуты виртуализации сети передачи данных, сети хранения данных, платформенное и прикладное программное обеспечение (эмуляция).
Оборудование
Операционные системы
Программное обеспечение
Память
Системы хранения
Базы данных
Сеть
Для виртуализации операционных систем применяется серия подходов, которые по типу реализации подразделяются на программные и аппаратные[3].
При динамической (бинарной) трансляции проблемные команды гостевой операционной системы перехватываются гипервизором. После того как эти команды заменяются на безопасные, происходит возврат управления гостевой системе.
Паравиртуализация — техника виртуализации, при которой гостевые операционные системы подготавливаются для исполнения в виртуализированной среде, для чего их ядро незначительно модифицируется. Операционная система взаимодействует с программой гипервизора, который предоставляет ей гостевой API, вместо использования напрямую таких ресурсов, как таблица страниц памяти.
Метод паравиртуализации позволяет добиться более высокой производительности, чем метод динамической трансляции.
Метод паравиртуализации применим лишь в том случае, если гостевые операционные системы имеют открытые исходные коды, которые можно модифицировать согласно лицензии, или же гипервизор и гостевая операционная система разработаны одним производителем с учётом возможности паравиртуализации гостевой системы (хотя при условии того, что под гипервизором может быть запущен гипервизор более низкого уровня, то и паравиртуализации самого гипервизора).
Впервые термин возник в проекте Denali[англ.].
Преимущества:
Реализации:
Преимущества:
Технологии:
Платформы, использующие аппаратную виртуализацию:
Контейнерная виртуализация — виртуализация на уровне операционной системы — позволяет запускать изолированные виртуальные системы на одном физическом узле, но не позволяет запускать операционные системы с ядрами, отличными от типа ядра базовой операционной системы. При таком подходе не существует отдельного слоя гипервизора, вместо этого сама хостовая операционная система отвечает за разделение аппаратных ресурсов между несколькими гостевыми системами (контейнерами) и обеспечивает их независимость. Некоторые реализации — FreeBSD Jail (2000), Virtuozzo Containers (2000), Solaris Containers (2005), Linux-VServer[англ.], OpenVZ (2005), LXC (2008), iCore Virtual Accounts (2008), Docker (2013).
Виртуальная машина — это окружение, которое представляется для «гостевой» операционной системы, как аппаратное. Однако на самом деле это программное окружение, которое эмулируется программным обеспечением хостовой системы. Эта эмуляция должна быть достаточно надёжной, чтобы драйверы гостевой системы могли стабильно работать. При использовании паравиртуализации, виртуальная машина не эмулирует аппаратное обеспечение, а, вместо этого, предлагает использовать специальный API.
Примеры применения:
Виртуализация ресурсов (или разделение ресурсов, англ. partitioning) может быть представлена как разделение одного физического узла на несколько частей, каждая из которых видна для владельца в качестве отдельного сервера. Не является технологией виртуальных машин, осуществляется на уровне ядра операционной системы.
В системах с гипервизором второго типа обе операционные системы (гостевая и гипервизора) отнимают физические ресурсы, и требуют отдельного лицензирования. Виртуальные серверы, работающие на уровне ядра ОС, почти не теряют в быстродействии, что дает возможность запускать на одном физическом сервере сотни виртуальных, не требующих дополнительных лицензий.
Дисковое пространство или пропускной канал сети разделены на некоторое количество меньших составляющих, и потому легче используемых ресурсов того же типа.
Например, к реализации разделения ресурсов можно отнести OpenSolaris Network Virtualization and Resource Control (Проект Crossbow), позволяющий создавать несколько виртуальных сетевых интерфейсов на основе одного физического.
Агрегация, распределение или добавление множества ресурсов в большие ресурсы или объединение ресурсов. Например, симметричные мультипроцессорные системы объединяют множество процессоров; RAID и дисковые менеджеры объединяют множество дисков в один большой логический диск; RAID и сетевое оборудование использует множество каналов, объединённых так, чтобы они представлялись, как единый широкополосный канал. На мета-уровне компьютерные кластеры делают все вышеперечисленное. Иногда сюда же относят сетевые файловые системы абстрагированные от хранилищ данных на которых они построены, например, Vmware VMFS, Solaris/OpenSolaris ZFS, NetApp WAFL.
Виртуализация приложений — процесс использования приложения, преобразованного из требующего установки в операционную систему в не требующее (требуется только запустить). Для виртуализации приложений программное обеспечение виртуализатора определяет при установке виртуализуемого приложения, какие требуются компоненты ОС, и эмулирует их. Таким образом, создаётся необходимая специализированная среда для конкретно этого виртуализируемого приложения и, тем самым, обеспечивается изолированность работы этого приложения. Для создания виртуального приложения виртуализируемое помещается в контейнер, оформленный, как правило, в виде папки. При запуске виртуального приложения запускается виртуализируемое приложение и контейнер, являющийся для него рабочей средой. Рабочая среда запускается и предоставляет локальные ранее созданные ресурсы, которое включает в себя ключи реестра, файлы и другие компоненты, необходимые для запуска и работы приложения. Такая виртуальная среда работает как прослойка между приложением и операционной системой, что позволяет избежать конфликтов между приложениями. Виртуализацию приложений обеспечивают, например, программы Citrix XenApp[6], SoftGrid[7] и VMware ThinApp.
Достоинства:
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.