Что такое гостевая операционная система

Технология виртуализации

Говоря о технологии виртуализации, необходимо определить основные понятия, разделяющие технологию виртуализации на три логически части.

Что такое гостевая операционная система. Смотреть фото Что такое гостевая операционная система. Смотреть картинку Что такое гостевая операционная система. Картинка про Что такое гостевая операционная система. Фото Что такое гостевая операционная система

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

Графическая оболочка обеспечивает взаимодействие пользователя с приложением виртуальной машины, позволяя настраивать создаваемые виртуальные машины под свои нужды и управлять ее работой.

При использовании технологии виртуализации мы получаем иерархическую структуру взаимодействия виртуальных ЭВМ и реальной аппаратуры. На нижнем слое этой иерархии находится реальное оборудование, управление которым распределяется между хостовой операционной системой и эмулятором виртуальных машин.

Хостовая операционная система и эмулятор распределяют между собой ресурсы реальной ЭВМ и составляют второй уровень иерархии.

Также хостовая операционная система занимается управлением работающих на ней приложений и распределением между ними ресурсов реальной ЭВМ.

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

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

Гостевые операционные системы в свою очередь управляют работой своих приложений в рамках выделенных эмулятором ресурсов.

Схематично, иерархическая структура организации взаимодействия виртуальных машин и реальной ЭВМ приведена на рисунке ниже.

Что такое гостевая операционная система. Смотреть фото Что такое гостевая операционная система. Смотреть картинку Что такое гостевая операционная система. Картинка про Что такое гостевая операционная система. Фото Что такое гостевая операционная система

Рассматривая технологию виртуализации, в первую очередь, необходимо изучить эмулятор виртуальных машин, а именно монитор виртуальных машин, являющийся базовой частью технологии виртуализации.

Именно ему будет посвящена основная часть этой статьи. Графические оболочки эмуляторов, их возможности и недостатки будут подробно разобраны в следующих статьях, посвященных детальному описанию различных типов виртуальных машин.

Все существующие мониторы виртуальных машин можно разделить на четыре вида:

1. Использующие аппаратную виртуализацию.

2. Использующие аппаратно-программную виртуализацию.

3. Использующие программную виртуализацию.

4. Использующие доменную виртуализацию.

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

Существуют три типа программной эмуляции инструкций:

1. Полная эмуляция инструкций.

2. Выборочная эмуляция инструкций.

При использовании полной эмуляции инструкции интерпретируются и преобразуются в ряд инструкций, воспринимаемых реальным процессором. В этом случае появляется возможность создавать виртуальные машины, имитирующие работу аппаратуры, не совместимой по архитектуре с реальной ЭВМ. Например, можно запускать виртуальную машину, имитирующую работу процессора с RISC-архитектурой, на реальной ЭВМ с процессором CISC архитектуры. Это возможно за счет того, что эмуляция ведется на уровне базовых арифметико-логических инструкций, в том или ином виде, присутствующих, практически, в любом процессоре.

Однако, интерпретация каждой инструкции приводит к значительному расходу ресурсов реальной ЭВМ и снижает быстродействие приложений, работающих в гостевой операционной системе. Принимая во внимание, что современные серверы и персональные ЭВМ обладают все большей производительностью, виртуализация, с использованием интерпретации инструкций, приобретает все большую популярность. Яркими представителями этого класса виртуальных машин являются: Microsoft Virtual PC, Bochs, Simics и другие.

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

Например, аналогичный способ виртуализации был использован при эмуляции ЭВМ А15К на ЭВМ «Багет 23В», позволивший без изменения запускать программное обеспечение, разработанное на языке низкого уровня А-15, на современной вычислительной технике. Это дало возможность значительно ускорить модернизацию бортовой вычислительной техники, минимизировать трудоемкость и сохранить без изменений годами отлаживаемое программное обеспечение, а, следовательно, значительно повысить конкурентоспособность разрабатываемого продукта.

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

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

Естественно, появляются дополнительные расходы на анализ инструкций. Но, так как в программах часто встречаются циклы, интерпретация которых может производиться однократно, и наиболее простые инструкции, способные без изменения выполняться на процессоре, обычно, составляют большую часть программ, то производительность виртуальной машины увеличивается в несколько раз, по сравнению с полной эмуляцией инструкций.

К виртуальным машинам этого типа относятся, например: VMware Workstation, VMware Server, Serenity Virtual Station и другие.

В третьем случае, эмулируются API гостевой операционной системы. API (Application Programming Interface) – это интерфейс прикладного программирования.

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

Результат выполнения запроса хостовой операционной системой преобразуется к виду, воспринимаемому гостевой операционной системой, и передается программе, выдавшей запрос.

К сожалению, у такой системы виртуализации есть ряд недостатков:

1. Не все программное обеспечение удается запускать на виртуальной машине с этим принципом виртуализации, так как часто используются недокументированные API и обращение напрямую к аппаратуре.

2. Операционные системы активно развиваются, вносятся корректировки в API и добавляются новые возможности, поэтому эмуляторы API быстро устаревают, и необходимы большие затраты трудоемкости для их модернизации.

3. Эмуляторы API привязываются к конкретным операционным системам, что сильно сужает круг их использования и потребительские свойства.

Однако, использование эмуляции API позволяет избежать значительных потерь производительности.

В качества примера виртуальных машин, использующих эмуляцию API, можно привести такие продукты, как:

— UML (User Mode Linux), встраиваемый в ядро Linux и позволяющий запускать несколько копий операционной системы на одном компьютере.

Источник

Виртуальные машины. Как сделать компьютер в компьютере

Что такое гостевая операционная система. Смотреть фото Что такое гостевая операционная система. Смотреть картинку Что такое гостевая операционная система. Картинка про Что такое гостевая операционная система. Фото Что такое гостевая операционная система

Что такое гостевая операционная система. Смотреть фото Что такое гостевая операционная система. Смотреть картинку Что такое гостевая операционная система. Картинка про Что такое гостевая операционная система. Фото Что такое гостевая операционная система

Содержание

Содержание

В одном обычном компьютере можно создать сразу несколько виртуальных, чтобы познакомиться с возможностями Linux или другими экзотическими ОС, запустить очень старую и сегодня неподдерживаемую программу, пройти заново игру детства на современном железе. Или же запустить Windows Vista внутри Windows 7 внутри Windows 8 внутри Windows 10. Просто потому, что захотелось.

Что такое виртуальные машины

Виртуальная машина — это эмулятор компьютера в самом широком смысле. Это почти как эмулятор игровой приставки или Android-устройства, только настраивается гораздо гибче.

Например, на эмуляторе Sony PlayStation не получится запустить игру под Nintendo GameBoy. А эмулятор DOSbox — это очень условный, специализированный виртуальный компьютер с эмуляцией определенного списка старого оборудования и со встроенной системой DOS, так что запустить там Windows 10 не получится.

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

Зачем нужны виртуальные машины

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

Вот простой пример: у вас есть компьютер и на нем, скорее всего, установлена операционная система Windows. Для изучения программирования вам требуется linux, но вы не хотите экспериментировать со своим компьютером, разбивать личный диск на несколько разделов и рисковать потерей данных. Виртуальная машина позволит работать в другой системе, при этом родная Windows никак не пострадает.

Или, например, есть очень важная и нужная программа, которая запускается только под WindowsXP конкретной версии и сборки. Причем эта программа откажется запускаться, если оперативной памяти больше 128 мегабайт. Можно отпилить часть микросхем от современного модуля на 16 гигабайт, но что-то вам подсказывает, что так делать не нужно. А вот виртуальная машина поможет запустить капризный софт, эмулируя компьютер с нужным объемом памяти.

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

Что такое гостевая операционная система. Смотреть фото Что такое гостевая операционная система. Смотреть картинку Что такое гостевая операционная система. Картинка про Что такое гостевая операционная система. Фото Что такое гостевая операционная система

Часто виртуальная машина используется в качестве «песочницы» — маленькой игровой площадки для программы, которая вызывает у вас подозрения. Чтобы не рисковать, вы запускаете сомнительную программу внутри виртуальной машины, а не на настоящем компьютере: софт честно делает свою работу, потом шифрует все файлы и требует денег, например. Но в виртуальной системе, в той самой «песочнице» не было никаких ценных данных, поэтому вы можете спокойно удалить виртуальную машину с наглой программой внутри. Здорово же!

Наконец, приверженцы техники Apple или убежденные Linux-пользователи тоже могут использовать виртуальную машину, чтобы запустить какой-то специфический софт, который работает только под Windows.

Как видите, даже для домашнего пользования виртуальные машины могут пригодиться. Поэтому разберемся с основными характеристиками и научимся создавать компьютер в компьютере.

Основные термины и их понимание

Гость (guest, гест, гостевая система, таргет) — это виртуальный компьютер, один или несколько, который запускается на хосте.

Хост — это основной компьютер, на котором запускаются виртуальные машины. Производительность хоста должна быть достаточной, чтобы тянуть и собственную систему, и гостевую. Для запуска одной виртуальной машины вполне достаточно возможностей любого современного компьютера. Но для нормальной работы нескольких систем одновременно лучше иметь не меньше шестнадцати гигабайт оперативной памяти, а образы компьютеров создавать на скоростном SSD-накопителе. По очевидным причинам, у вас не получится создать виртуальную машину с характеристиками выше, чем у самого хоста — если на основном компьютере всего 8 гигабайт оперативной памяти, то создать таргет с 16 ГБ не выйдет.

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

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

Установка

Чтобы начать знакомство с виртуальной машиной потребуется установить гипервизор. Таковых существует множество: платных и не очень, для тонкой настройки всего и вся или базового «нажал — заработало». Virtualbox — один из наиболее популярных гипервизоров, потому что бесплатный, доступен под Windows, Mac OS и Linux, активно развивается и поддерживается сообществом разработчиков и энтузиастов. Скачать VirtualBox можно с официального сайта, но учтите, он на английском.

Начиная с шестой версии в VirtualBox убрали поддержку 32-битных хост-систем, но пятая версия до сих пор доступна для скачивания. В любом случае, можно скачать обе версии. Для более комфортной работы потребуется еще и набор расширений — ExtensionPack.

Устанавливается VirtualBox довольно просто, достаточно последовательно соглашаться со всеми предложениями. Перед установкой появится большое предупреждение о том, что компьютер будет отключен от сети, на время установки виртуальных сетевых карт — это нормально. А в ходе установки появится несколько подтверждающих окон — это устанавливается эмулятор USB, сетевых карт и других устройств.

Ну а после установки появится основное окно гипервизора на родном русском языке.

Что такое гостевая операционная система. Смотреть фото Что такое гостевая операционная система. Смотреть картинку Что такое гостевая операционная система. Картинка про Что такое гостевая операционная система. Фото Что такое гостевая операционная система

Первым же делом желательно установить пакет расширений — он добавляет поддержку USB 2.0, подключение по протоколу RDP, поддержку накопителей с NVMe и прочие полезные вещи. В стандартной установке все эти возможности отсутствуют из-за различных лицензий: сам гипервизор бесплатный во все стороны, а расширения бесплатны только для личного пользования и ознакомления.

Чтобы установить расширения достаточно запустить файл Extensionpack дабл-кликом, но делать это нужно после установки самого Virtualbox — потому что установщик расширений запускается внутри гипервизора.

Что такое гостевая операционная система. Смотреть фото Что такое гостевая операционная система. Смотреть картинку Что такое гостевая операционная система. Картинка про Что такое гостевая операционная система. Фото Что такое гостевая операционная система

Как работает виртуальная машина

Гипервизор создает файл образа жесткого диска, резервирует определенное количество оперативной памяти и занимает процессорное время — это необходимо для работы «контейнера», в котором будет работать виртуальная машина. Изнутри же «контейнер» выглядит как полноценный компьютер с жестким диском, оптическим приводом, дисководом, сетевой картой, видеоадаптером, звуковой картой и прочим оборудованием. Причем заменить видеокарту обычно нельзя — она эмулируется как встроенная в материнскую плату. А вот в оптический привод можно либо загрузить образ из файла, либо использовать существующий привод хоста.

Процессор виртуализируется как минимум одним ядром. Для старых систем лучше не использовать многоядерность — не поймут, испугаются и будут глючить. А новым больше двух ядер нужно выдавать только при реальной необходимости.

Подключенные к хосту USB-устройства можно пробросить внутрь виртуальной машины. Достаточно выбрать для конкретной машины нужный пункт из меню «Устройства — USB». При этом, например, флэшка исчезнет из списка накопителей в хост-системе и станет видна в виртуальной машине. Также можно поступить с любым другим USB-устройством, но не забудьте сначала установить Extensionpack, иначе скорость USB 1.1 вас огорчит.

Что такое гостевая операционная система. Смотреть фото Что такое гостевая операционная система. Смотреть картинку Что такое гостевая операционная система. Картинка про Что такое гостевая операционная система. Фото Что такое гостевая операционная система

Чтобы файлы на основной системе были доступны в виртуальной ОС можно воспользоваться общими папками: они монтируются как сетевые пути, но удобнее автоматически их монтировать как сетевой диск — он будет подключаться при загрузке системы. Подробности разберем на этапе настройки.

Создаем виртуальный компьютер

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

Что такое гостевая операционная система. Смотреть фото Что такое гостевая операционная система. Смотреть картинку Что такое гостевая операционная система. Картинка про Что такое гостевая операционная система. Фото Что такое гостевая операционная система

Несмотря на то, что в списке поддерживаемых систем есть даже Windows 3.1, лучше всего виртуализируются относительно свежие системы, начиная хотя бы с Windows 2000. С win9x немного сложнее: сначала нужно загрузить DOS из образа дискеты, а уже потом запускать установщик — в те времена загрузочные CD не делали, потому что оптические носители только-только появлялись.

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

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

Что такое гостевая операционная система. Смотреть фото Что такое гостевая операционная система. Смотреть картинку Что такое гостевая операционная система. Картинка про Что такое гостевая операционная система. Фото Что такое гостевая операционная система

Установка системы у многих пользователей не вызовет лишних вопросов, поэтому подробно описывать этот процесс не будем. А последующая установка драйверов — другое дело. В VirtualBox есть специальный «диск с драйверами», который называется «Дополнения гостевой ОС» — его можно подключить через пункт меню.

Дополнения — это диск с драйверами, который загружается в виртуальный привод оптических дисков. В Windows-системах достаточно запустить файл autorun с диска, а под Linux — соответствующий скрипт. Главная выгода от установки гостевых драйверов — возможность произвольно менять размеры окна виртуальной машины, а разрешение экрана автоматически подстроится. А, ну и цвета станут повеселее: не 16 базовых, а 32 миллиона оттенков.

Что такое гостевая операционная система. Смотреть фото Что такое гостевая операционная система. Смотреть картинку Что такое гостевая операционная система. Картинка про Что такое гостевая операционная система. Фото Что такое гостевая операционная система

Настраиваем взаимодействие с хостом и сеть

Виртуальная машина с настройками «по умолчанию» получает доступ в интернет, но не имеет никакой связи с основным компьютером. А иногда эта связь нужна…

Что такое гостевая операционная система. Смотреть фото Что такое гостевая операционная система. Смотреть картинку Что такое гостевая операционная система. Картинка про Что такое гостевая операционная система. Фото Что такое гостевая операционная система

В настройках можно включить двусторонний буфер обмена. Он, правда, работает только с текстовой информацией, но упрощает ввод интернет-адресов и консольных команд. Для приема-передачи файлов можно настроить сетевые папки. Любая папка на хосте может быть подключена в виде сетевой папки в гостевой системе. Дополнительно можно выдать права гостевой системе на запись в эту папку и автоматически подключать папку в качестве диска при загрузке системы. Так, например, папка Downloads на хост-системе может быть доступна из гостевой системы через сетевое окружение по адресу //vboxsvr/Downloads или автоматически подключаться как сетевой диск.

Что такое гостевая операционная система. Смотреть фото Что такое гостевая операционная система. Смотреть картинку Что такое гостевая операционная система. Картинка про Что такое гостевая операционная система. Фото Что такое гостевая операционная система

Для экспериментов с Linux-системами и виртуальными серверами часто требуется доступ из хоста к веб-серверу, который запускается на гостевой ОС. Для этого нужно переключить режим сетевой карты с «NAT» на «виртуальный адаптер хоста» или же «Virtualbox Host-only Ethernet Adapter». В последнем случае у гостевой системы не будет личного доступа в интернет, но она сможет общаться с основным компьютером. Так, например, с хоста можно постучаться на файловый сервер, который работает на виртуальной машине.

Что такое гостевая операционная система. Смотреть фото Что такое гостевая операционная система. Смотреть картинку Что такое гостевая операционная система. Картинка про Что такое гостевая операционная система. Фото Что такое гостевая операционная система

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

Проблемы с виртуализацией

Главная проблема — отсутствие вменяемой поддержки видеоадаптера и 3D-ускорения. На обычной хост-системе вы можете пользоваться новейшей видеокартой, но все ее преимущества в виртуальной машине будут недоступны. Впрочем, старые игры не особо требовательны к видео — в большинстве случаев справится и встроенный видеоадаптер процессора.

Второй момент — поддержка современного интернета старыми системами. Открыть любой сайт в системе, которая устарела лет на 10–20, может быть проблематично. Либо страница загрузится не полностью, либо не загрузится вовсе.

Что такое гостевая операционная система. Смотреть фото Что такое гостевая операционная система. Смотреть картинку Что такое гостевая операционная система. Картинка про Что такое гостевая операционная система. Фото Что такое гостевая операционная система

Виртуализируй это!

Виртуальные машины позволят вам изучить экзотические ОС на современном компьютере. Помимо множества современных Linux-дистрибутивов, это может быть:

Также можно установить старую версию Windows и попробовать покорить современный интернет. Во времена технологии Active Desktop в windows98 интернет был очень другим.

Источник

Зачем же нужна виртуализация?

Слово «виртуализация» в последнее время стало какой-то «модой» в ИТ-среде. Все вендоры железа и ПО, все ИТ-компании в один голос кричат, что виртуализация – это круто, современно, и нужно всем. Но, давайте, вместо того, чтобы идти на поводу у маркетинговых лозунгов (а иногда бывают такими, что сам Геббельс умер бы от зависти), попытаемся посмотреть на это модное слово с точки зрения простых «технарей» и решить, нужно нам это или нет.

Типы виртуализации

Виртуализация приложений – достаточно интересное, и относительно новое направление. Рассказывать здесь подробно о нем я не буду, поскольку это тема для целой отдельной статьи. Коротко говоря, виртуализация приложений позволяет запускать отдельное приложение в своей собственной изолированной среде (иногда называется «песочница», sandbox). Такой способ помогает решить множество проблем. Во-первых – опять же безопасность: приложение, запущенное в изолированной среде – не способно нанести вред ОС и другим приложениям. Во-вторых – все виртуализированные приложения можно обновлять централизованно из одного источника. В-третьих – виртуализация приложений позволяет запускать на одном физическом ПК несколько разных приложений, конфликтующих друг с другом, или даже несколько разных версий одного и того же приложения. Более подробно о виртуализации приложений можно посмотреть, к примеру, в этом вебкасте: www.techdays.ru/videos/1325.html Возможно, однажды я даже напишу статью на эту тему.

И, наконец, перейдем к виртуализации серверов и остановимся на ней подробно.
Виртуализация серверов – это программная имитация с помощью специального ПО аппаратного обеспечения компьютера: процессор, память, жесткий диск, и т.д. Далее, на такой виртуальный компьютер можно установить операционную систему, и она будет на нем работать точно так же, как и на простом, «железном» компьютере. Самое интересное достоинство этой технологии – это возможность запуска нескольких виртуальных компьютеров внутри одного «железного», при этом все виртуальные компьютеры могут работать независимо друг от друга. Для чего это можно применять?
Первое, что приходит в голову – виртуализацию серверов можно использовать в целях обучения и в тестовых целях. К примеру, новые приложения или ОС можно протестировать перед запуском в промышленную эксплуатацию в виртуальной среде, не покупая специально для этого «железо» и не рискуя парализовать работу ИТ-инфраструктуры, если что-то пойдет не так.

Но кроме этого, виртуализация серверов может использоваться и в продакшн-среде. Причин тому много.
Виртуализация позволяет сократить количество серверов благодаря консолидации, то есть там, где раньше требовалось несколько серверов – теперь можно поставить один сервер, и запустить нужное число гостевых ОС в виртуальной среде. Это позволит сэкономить на стоимости приобретения оборудования, а так же снизить энергопотребление, а значит и тепловыделение системы – и, следовательно, можно использовать менее мощные, и, соответственно – более дешевые системы охлаждения. Но у этой медали есть и обратная сторона, и не одна. Дело в том, что при внедрении решений на базе виртуализации, скорее всего придется покупать новые сервера. Дело в том, что виртуальные сервера используют аппаратные ресурсы физического сервера, и, соответственно – понадобятся более мощные процессоры, большие объемы оперативной памяти, а так же более скоростная дисковая подсистема, и, скорее всего – большего объема. Кроме того, некоторые системы виртуализации (в частности – MS Hyper-V) требуют поддержки процессором аппаратных технологий виртуализации (Intel VT или AMD-V) и некоторых других функций процессора. Многие процессоры, которые выпускались до недавнего времени, в частности – все x86_32bit – этим требованиям не удовлетворяют, и поэтому от старых, хотя и вполне рабочих серверов придется отказаться. Однако же, один более мощный сервер скорее всего будет стоить намного дешевле нескольких менее мощных, да и старые сервера, скорее всего давно пора менять из-за морального устаревания.

Есть еще один очень важный момент: виртуализация северов позволяет до предела упростить администрирование инфраструктуры. Главное преимущество, которое оценят все сисадмины – это возможность удаленного доступа к консоли виртуальных серверов на «аппаратном», точнее – «вирутально-аппаратном» уровне, независимо от установленной гостевой ОС и ее состояния. Так, чтобы перезагрузить «зависший» сервер, теперь не нужно бежать в серверную, или покупать дорогостоящее оборудование типа IP-KVM-переключателей, достаточно просто зайти в консоль виртуального сервера и нажать кнопку «Reset». Помимо этого, виртуальные сервера поддерживают технологию моментальных снимков (о ней см. мою предыдущую статью), а так же бэкап и восстановление виртуальных систем намного легче.

Еще одно неоспоримое преимущество – ОС, запущенная внутри виртуальной машины (гостевая ОС) понятия не имеет, какое оборудование установлено на физическом сервере, внутри которого она работает (хост). Поэтому, при замене железа, при апгрейде или даже переезде на новый сервер необходимо обновить драйверы только на ОС самого хоста (хостовой ОС). Гостевые ОС по будут работать как и раньше, поскольку «видят» только виртуальные устройства.

Так же, хочется напомнить, что в виртуальной среде могут действовать особые правила лицензирования ПО (в частности, покупка лицензии на Microsoft Windows Server 2008 Enterprise позволяет использовать бесплатно четыре копии ОС в качестве гостевой, а Microsoft Windows Server 2008 Datacenter вообще разрешает использовать неограниченное число гостевых ОС при условии полного лицензирования по процессорам).

Еще нельзя не упомянуть о технологиях отказоустойчивости. Физические сервера, на которых запускаются виртуальные машины, могут быть объединены в кластер, и в случае отказа одного из серверов – автоматически «переезжать» на другой. Полной отказоустойчивости добиться не всегда возможно (в частности, в MS Hyper-V такой «внезапный переезд» будет выглядеть так же, и иметь такие же возможные последствия, как внезапное обесточивание сервера), но возможные простои сильно сократятся: «переезд» занимает несколько минут, тогда как ремонт или замена самого сервера может занять часы, а то и дни. Если же «переезд» виртуальных машин происходит в штатном режиме, то он может пройти совершенно незаметно для пользователей. Такие технологии у разных вендоров называются по-разному, к примеру у MS она называется «Live Migration», у VMware – Vmotion. Использование таких технологий позволит проводить работы, связанные с выключением сервера (к примеру – замену некоторых аппаратных компонент, или перезагрузку ОС после установки критических обновлений) в рабочее время и не выгоняя пользователей из их любимых приложений. Кроме этого, если инфраструктура построена соответствующим образом – запущенные виртуальные машины могут автоматически перемещаться на менее нагруженные сервера, или же наоборот «разгружать» наиболее загруженные. В инфраструктуре на базе технологий Microsoft для этого используются System Center Virtual Machine Manager и Operations Manager.

В заключение темы по виртуализации серверов — отмечу, что виртуализация не всегда одинаково полезна. В частности, не всегда будет хорошей идеей переносить в виртуальную среду высоконагруженные сервера, а особенно — высоконагруженные по дисковой подсистеме — это «тяжелые» СУБД, Exchange Server, особенно — роль Mailbox Server, и прочие высоконагруженные приложения. А вот сервера с меньшей нагрузкой (контроллеры доменов AD, WSUS, всевозможные System Center * Manager, веб-сервера) виртуализировать можно и даже нужно. Замечу, кстати, что именно с контроллерами доменов — очень желательно, чтобы хотя бы один из контроллеров был «железным», то есть не виртуальным. Нужно это потому, что для корректной работы всей инфраструктуры желательно, чтобы при запуске всех остальных серверов хотя бы один КД уже был доступен в сети.

Резюме

Итак, давайте подведем итоги: какая именно виртуализация когда может пригодиться, и какие у нее есть плюсы и минусы.
Если у вас есть много пользователей, работающих с одинаковым набором ПО, и система сильно распределена территориально – то стоит подумать об использовании виртуализации представлений, сиречь – терминальных службах.

Если у вас существует множество приложений, которые некорректно работают в новой ОС, либо же конфликтуют между собой, или необходимо запускать на одном компьютере несколько версий одной и той же программы – то нужна виртуализация на уровне приложений.

Если же вам нужно освободить место в стойке, снизить энергопотребление систем, избавиться от «серверного зоопарка» — то ваше решение – виртуализация серверов.

Недостатки – в принципе, те же, что и у терминальных решений:

Надеюсь, моя статья окажется для кого-то полезной. Благодарность и конструктивную критику, как всегда, можно высказать в комментариях.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *