Виртуализация: история и тренды развития

03/10/2016

Пост:

На прошедшей недавно конференции Ignite 2016 производитель корпоративного гипервизора №2, компания Microsoft, объявила о релизе и доступности для загрузки новой версии серверной операционной системы Microsoft Windows Server 2016 .

Нам, конечно же, интересны новые возможности платформы серверной виртуализации Microsoft Hyper-V, которая является одной из ролей сервера Windows Server 2016.


Давайте посмотрим, что это за возможности:

1. Совместимость с режимом Connected Standby. Теперь когда роль Hyper-V установлена на сервере с включенным режимом Always On/Always Connected (AOAC), состояние питания Connected Standby теперь полностью поддерживается.

2. Функции Discrete device assignment . Эта возможность позволяет дать виртуальной машине эксклюзивный и прямой доступ к устройствам PCIe. Это позволяет напрямую обращаться из ВМ к таким устройствам. Более подробно об этой возможности написано .

3. Функции Host resource protection. Эти возможности позволяют автоматически отследить чрезмерное использование системных ресурсов хоста виртуальной машиной, что может привести к катастрофическому замедлению работы других ВМ. Эти функции отключены по умолчанию и могут быть включены средствами Windows PowerShell:

Set-VMProcessor -EnableHostResourceProtection $true

4. Горячее добавление и удаление сетевых адаптеров и памяти. Теперь можно добавить сетевой адаптер запущенной виртуальной машине (на базе Windows и Linux). То же самое касается и оперативной памяти.

5. Улучшения Hyper-V Manager :

  • Alternate credentials support - теперь можно использовать другие креды в Hyper-V Manager, когла вы соединяетесь с другим хостом Windows Server 2016 or Windows 10. Также их можно сохранять.
  • Управление старыми версиями - в Hyper-V Manager для Windows Server 2016 и Windows 10 вы можете управлять платформой Hyper-V в ОС Windows Server 2012, Windows 8, Windows Server 2012 R2 и Windows 8.1.
  • Обновленный протокол управления - теперь вся коммуникация с удаленными хостами идет по протоколу WS-MAN, который предоставляет функции аутентификации CredSSP, Kerberos или NTLM.

6. Сервисы интеграции, доставляемые через механизм Windows Update. Теперь эта функция доступна конечным пользователям и сервис-провайдерам, которые могут автоматически обновлять Integration services у своих клиентов. Подробнее об этом методе для Linux и FreeBSD написано .

7. Функции Linux Secure Boot.

Теперь гостевые ОС Linux второго поколения ВМ могут загружаться со включенной опцией Secure Boot. Это поддерживается для Ubuntu 14.04, SUSE Linux Enterprise Server 12, Red Hat Enterprise Linux 7.0, CentOS 7.0, а также более поздних версий этих ОС. Подробнее об этом написано .

8. Улучшения максимумов по памяти и виртуальным процессорам. Это наглядно представлено вот в этой таблице:


Подробно о наращивании вычислительных мощностей ВМ написано .

9. Функции вложенной виртуализации (Nested virtualization).

Эти возможности позволяют вам запускать виртуальные машины внутри виртуальных машин, у которых есть роль Hyper-V. Для них вам потребуется минимум 4 ГБ памяти на хосте, минимальные билды Windows Server 2016 Technical Preview 4 или Windows 10 build 10565, а также процессор с поддержкой Intel VT-x (AMD не поддерживается). Более подробно написано об этом .

10. Улучшения функций сетевого взаимодействия.

  • Поддержка Remote direct memory access (RDMA) и switch embedded teaming (SET). Подробнее .
  • Virtual machine multi queues (VMMQ) - теперь для одной ВМ можно сделать несколько аппаратных очередей, что улучшает быстродействие.
  • Quality of service (QoS) для SDN (software-defined networks). Теперь можно через виртуальный коммутатор управлять классами сетей. Подробнее .

11. Средства Production checkpoints. Это полный снапшот виртуальной машины, включая ее политики. Основана эта возможность на средствах бэкапа, а не на средствах сохранения состояния снапшота как раньше. Работает это все с поддержкой VSS. Предполагается, что такие снапшоты более надежны, чем стандартные. Подробнее об этом написано . Кстати, такие чекпоинты теперь используются по умолчанию.

12. Непрерывный апгрейд кластеров.

Теперь можно добавить узел Windows Server 2016 в Hyper-V Cluster, работающий на базе Windows Server 2012 R2. Пока вы добавляете новые узлы в кластер он будет работать в старом режиме, пока все хосты не станут Windows Server 2016, после чего нужно будет использовать командлет . Сама процедура апгрейда описана .

13. Динамический ресайз для Shared virtual hard disks. Теперь размер VHDX можно менять без простоя виртуальных машин. Также шаренные диски можно защищать с помощью Hyper-V Replica.

14. Shielded virtual machines . Это такие машины, которые сложнее взломать, скопировать их данные или заразить вирусом. Подробнее о них .

15. Задание приоритетов загрузки для кластеризованных ВМ. Теперь можно определять порядок их запуска в кластере с помощью PowerShell (New-ClusterGroupSet, Get-ClusterGroupSet и Add-ClusterGroupSetDependency).

16. Улучшения Storage quality of service (QoS) . Теперь эти политики можно задавать для Scale-Out File Server. Подробнее - .

17. Новый формат конфигурационных файлов виртуальных машин. Теперь появились бинарные файлы.vmcx, которые более надежны и работают быстрее, но не могут быть редактируемы напрямую.

18. Новые версии конфигурации виртуальных машин. Их можно использовать только в Windows Server 2016 или более поздних.

19. Функции Windows Containers. Они позволяют нескольким изолированным приложениям быть запущенными в двух типах виртуализованных окружений на хосте Hyper-V. Вот некоторые основные возможности этой фичи:

  • Поддержка веб-сайтов и приложений с использованием HTTPS.
  • Nano server может исполнять одновременно Windows Server и Hyper-V Containers.
  • Возможность управления данными контейнеров через шаренные папки.
  • Возможность запрещать некоторые ресурсы контейнеров.

Подробнее о поддержке контейнеров написано .

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

Ну и вот вам куча статей на обозначенные выше темы.

Не так давно вышла очередная новая версия Windows Server 2016. Вместе с ним обновился и бесплатный гипервизор от Microsoft — Windows Hyper-V Server 2016. Его можно свободно скачать и использовать на свое усмотрение. Как обычно, первоначальная настройка сложна и не очевидна, придется немного повозиться для получения приемлемого функционала.

Дальше выполняете установку стандартным способом, как и любую другую систему. Загружаетесь с iso образа и следуете по шагам инсталлятора. Каких-то нюансов или проблем с тем, чтобы установить hyper-v server нет, так что я не буду заострять на этом внимание. Обращу внимание только на самый конец установки. У меня появилось вот такое окно:

При этом я не мог ничего сделать или выбрать. Я нажал ctrl+alt+delete и появилось предложение задать пароль администратора. Я сделал это, установка завершилась, загрузилось окно со стандартным интерфейсом управления:


Если вы по какой-то причине закроете это окно, вызвать его снова можно в командной строке с помощью команды sconfig .

Настройка Hyper-V Server 2016

Сразу же выполняем первоначальную настройку Hyper-V Server 2016 через стандартную консоль управления:

  1. Указываете рабочую группу, если вас не устраивает стандартная.
  2. Меняем имя сервера на что-то более осмысленное и понятное.
  3. Добавьте еще одного администратора. Это нужно сделать, чтобы иметь еще одну админскую учетную запись, отличную от administrator. В дальнейшем рекомендую все настройки и подключения выполнять под этой учетной записью.
  4. Разрешаем удаленное управление, в том числе ping.
  5. Автоматическое обновление оставляю на ваше усмотрение. Я обычно отключаю и все делаю вручную.
  6. Рекомендую сразу проверить обновления и установить их.
  7. Включаем Remote Desktop со всеми версиями клиента.
  8. Указываем сетевые настройки. Стандартно стоит dhcp, рекомендую установить адрес статически.
  9. Настройте время, если по-умолчанию стоит не правильное.
  10. Настройки телеметрии полностью отключить нельзя. Такой вот микрософт. Не приходится удивляться, с учетом нововведений в последних версиях системы.

Быстренько пробежались по основным настройкам hyper-v server 2016. Теперь бы сразу начать установку виртуальных машин, но, к сожалению, пока это не получится сделать. Нам надо каким-то образом подключиться к серверу с помощью панели управления. Пока нам доступен только rdp доступ, но этого не достаточно.

Удаленное подключение и управление Hyper-V Server 2016

Подключаемся по rdp к серверу, чтобы было удобно копировать и вставлять длинные команды в командную строку. В консоли cmd переходим в powershell , просто введя команду:

Powershell

Вводим команды для настройки разрешений на фаерволе для удаленного управления:

Set-NetFirewallRule -DisplayGroup "Windows Management Instrumentation (WMI)" -Enabled true -PassThru Set-NetFirewallRule -DisplayGroup "Remote Event Log Management" -Enabled true -PassThru Set-NetFirewallRule -DisplayGroup "Remote Volume Management" -Enabled true -PassThru

Теперь переходим на клиентскую систему. Напоминаю, что в моем случае это Windows 10 Корпоративная. Заходить на нее нужно под учетной записью с теми же параметрами, что создана на гипервизоре. Добавьте такого же пользователя и работайте под ним. Это обязательное условие для подключения к управлению непосредственно сервером, его службам, дисковой подсистемой и т.д. Для подключения только для управления ролью hyper-v иметь одинаковую с сервером учетку не обязательно, в конце я расскажу, как это сделать.

Первым делом создадим запись в файле hosts с именем сервера hyperv. В моем случае эта запись выглядит так:

192.168.1.100 hyperv2016

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


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


Я не сразу смог найти, где это сделать, поэтому подсказываю вам. Продолжаем настройку хоста для подключения к hyper-v server 2016. Запускаем cmd от администратора и переходим в powershell. Выполняем команду:

Winrm quickconfig


Обязательно жмите Y и продолжайте. Вводим следующую команду, которая разрешает управление удаленными системами:

Winrm set winrm/config/client "@{TrustedHosts="hyperv2016"}"

В данном примере, hyperv2016 — имя моего гипервизора.

При копировании приведенной выше команды обратите внимание на одинарные и двойные кавычки. Они могут измениться при копировании/вставке. В итоге вы получите ошибку во время выполнения команды. При необходимости отредактируйте их вручную.


Теперь нам нужно изменить еще один параметр. Запускаем оснастку dcomcnfg.exe , выполнив эту команду в cmd. Открывается оснастка управления службой компонентов.


Выполняем последовательность действий, указанных на картинке. Дальше надо установить стандартную оснастку для управления hyperv. Для этого идем в Панель управления -> Программы -> Включение или отключение компонентов Windows . Выбираем там Средства управления Hyper-V и устанавливаем их. Дожидаемся окончания установки и пробуем подключиться к удаленному серверу:


Если все сделали правильно, вы подключитесь к серверу и у вас появится возможность им управлять.

Расскажу еще об одном нюансе. Вы можете подключиться к удаленному hyper-v серверу, даже если работаете не под той учетной записью, что имеет административные права на гипервизоре. При подключении есть возможность ввести параметры другого пользователя. Но чтобы эта возможность заработала, необходимо выполнить ряд действий как на сервере, так и на клиенте. Для начала надо изменить один параметр в локальной политике компьютера. Для этого выполняем в cmd команду gpedit . Откроется оснастка управления локальными политиками компьютера. Идем по пути: Конфигурация компьютера -> Административные шаблоны -> Система -> Передача учетных данных -> Разрешить передачу новых учетных данных с проверкой подлинности сервера «только NTLM» . Включаем ее и добавляем запись:

Wsman/hyperv2016


Set-Item WSMan:\localhost\Client\TrustedHosts -Value "hyperv2016" Enable-WSManCredSSP -Role client -DelegateComputer "hyperv2016"

Теперь надо внести некоторые изменения на самом гипервизоре. Подключаемся к нему по rdp, переходим в cmd, запускаем powershell и выполняем команды:

Enable-PSRemoting Enable-WSManCredSSP -Role server

После этого можете работать под привычным пользователем компьютера, но при этом подключаться к hyper-v server 2016 под другой учетной записью и управлять им.


Самое трудное сделали. Теперь мы можем свободно подключаться и управлять гипервизором. Забыл упомянуть о том, как подключиться к управлению самим сервером, то есть как посмотреть список дисков, службы, почитать логи и т.д. Делается это очень просто. Заходите на компьютер под той же учетной записью, что является администратором на гипервизоре. Запускаете стандартную оснастку «Управление компьютером», выбираете локальный компьютер, жмете правой правой кнопкой мыши и выбираете подключиться к другому компьютеру:


Пишите имя сервера и подключаетесь к нему. Вам доступны все разделы управления компьютером, кроме диспетчера устройств. К нему почему-то не получается подключиться, возникает ошибка. Я подробно не разбирался в чем дело и как ее исправить.

Настройка виртуальных коммутаторов

Перед тем, как мы приступим к установке виртуальных машин, подготовим для них сеть. Я не буду подробно рассказывать о нюансах работы сети в hyper-v. Это не тема текущего повествования. Просто создадим сетевой бридж для виртуальных машин. В оснастке управления выбираем справа «Диспетчер виртуальных коммутаторов», выбираем тип «Внешняя». Указываете имя коммутатора. Я рекомендую давать осмысленные названия, чтобы было проще потом управлять. Если это бридж в локальную сеть, то назовите виртуальный коммутатор local.


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

Создание виртуальных машин

Мы почти закончили настройку Windows Hyper-V Server 2016 и готовы приступить к установке виртуальных машин. Надо только загрузить iso образ на гипервизор. Тут все очень просто. Открываем в проводнике на управляющей машине удаленный диск через стандартную возможность windows машин, создаем папку iso и загружаем нужный образ.


Так же я рекомендую сразу загрузить какой-нибудь файловый менеджер для удобной навигации по папкам на самом гипервизоре. Лучше использовать портированную версию. Запустить этот менеджер можно будет через командную строку, подключившись по rdp


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

Бэкап виртуальных машин Hyper-V

Ранее я уже рассказывал про программу . Она замечательно работает с Windows Hyper-V Server 2016, приведенная статья полностью актуальна. Для работы программы необходимо установить на гипервизоре .Net Framework 3.5 с помощью команды powershell:

Install-WindowsFeature NET-Framework-Core

Программа, конечно, монструозная, весит много, ставится долго, но зато никаких заморочек. Все настраивается легко и понятно через интерфейс программы. После установки запускаете программу. Добавляете новый сервер:


Указываете, что это Standalone Hyper-V server, добавляете учетные данные и дожидаетесь окончания установки необходимых компонентов на hyperv сервере. После этого можно создать резервную копию виртуальной машины. Для этого выберите гипервизор, виртуальную машину, которую хотите забэкапить и жмите правой кнопкой мыши по ней. Выбираете VeeamZIP:


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

Подключение к Hyper-V Server 2016 с Windows 7

Рассмотрим еще один вариант подключения к бесплатному hyper-v, когда у вас в наличие только операционная система Windows 7. Вам нужно создать виртуальную машину, либо изменить настройки существующей, завершить ее работу, или наоборот запустить. Оснастку управления Hyper-V на Windows 7 поставить не получится. На помощь придет программа 5nine Manager Free . Скачать ее можно либо с указанного сайта, но нужна регистрация, после которой на почту придет ссылка для скачивания и файл с лицензией. Для нормальной установки требуется.NET Framework 4.5 или выше. Если в системе он не будет установлен, то инсталлятор просто не начнет установку, даже не сказав почему. Мне пришлось читать руководство, чтобы разобраться, почему на один компьютер у меня нормально ставится программа, а на другой не хочет.

После установки запускайте программу и добавляйте hyperv server.


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


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

Заключение

Постарался рассмотреть все наиболее значимые аспекты в работе с бесплатным гипервизором от Microsoft. Сам еще не проверял его в работе и особо не интересовался нововведениями, пока не было времени. Смотрел на него только в тестовых стендах. Можете сравнить его с бесплатным гипервизором на kvm — proxmox, который я рассматривал в своей статье у .

Самым большим преимуществом последнего является возможность установки на программный рейд. Hyper-V сервер я никогда не пробовал установить на программный рейд, я даже не знаю, возможно ли это. Так что использовать его можно только там, где есть аппаратный рейд, либо в тестовых вариантах. Лично я никогда не ставлю гипервизоры в продакшн на одиночные диски. Все остальное дело привычки и удобства. В proxmox мне нравится управление через web браузер. Не нужно ничего ставить на компьютер. После установки гипервизор сразу готов к работе.

В hyper-v удобно, что все системы его поддерживают без проблем. На kvm, к примеру, в proxmox, после установки windows систем в качестве гостевых машин, нужно будет устанавливать драйвера с отдельного диска, либо использовать готовые образы, где они будут уже интегрированы. Мелочь, но все равно не так удобно.

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

Если вам нужно скачать виртуальную машину Windows 7, 8 или Windows 10, то Microsoft предоставляет прекрасную возможность для того, чтобы этого сделать. Для всех желающих представляются бесплатные готовые виртуальные машины всех версий ОС, начиная с Windows 7 (обновление 2016: совсем недавно была и XP и Vista, но убрали).

Если вы совсем не знаете, что такое виртуальная машина, то кратко это можно описать как эмуляция настоящего компьютера со своей собственной операционной системой внутри вашей основной ОС. Например, вы можете запустить виртуальный компьютер с Windows 10 в простом окне на Windows 7, как обычную программу, ничего не переустанавливая. Отличный способ попробовать разные версии систем, поэкспериментировать с ними, не боясь что-то испортить. См. например .

Обновление 2016: статья была отредактирована, так как с сайта пропали виртуальные машины для старых версий Windows, изменился интерфейс, да и сам адрес сайта (ранее - Modern.ie). Добавлена краткая сводка по установке в Hyper-V.

Загрузка готовой виртуальной машины

Примечание: в конце статьи есть видео о том, как скачать и запустить виртуальную машину с Windows, возможно вам удобнее будет воспринимать информацию в таком формате (однако в текущей статье есть дополнительная информация, которой нет в видео, и которая пригодится, если вы решите установить виртуальную машину у себя).

Готовые виртуальные машины Windows можно скачать бесплатно с сайта https://developer.microsoft.com/ru-ru/microsoft-edge/tools/vms/ , специально подготовленного Microsoft для того, чтобы разработчики могли тестировать различные версии Internet Explorer в разных версиях Windows (а с выходом Windows 10 - и для тестирования ). Однако ничто не мешает использовать их и для других целей. Виртуальные мышины доступны не только для запуска в среде Windows, но и в Mac OS X или Linux.


Для загрузки выберите на главной странице пункт «Бесплатные виртуальные машины», а затем - какой именно вариант вы планируете использоваться. На момент написания статьи готовые виртуальные машины со следующими операционными системами:

  • Windows 10 Technical Preview (последняя сборка)
  • Windows 10
  • Windows 8.1
  • Windows 8
  • Windows 7
  • Windows Vista
  • Windows XP

Если вы не планируете использовать их для тестирования Internet Explorer, то обращать на то, какая версия браузера установлена, думаю, не стоит.

В качестве платформы для виртуальных машин доступны Hyper-V, Virtual Box, Vagrant и VMWare. Я покажу весь процесс для Virtual Box, который, на мой взгляд, является самым быстрым, функциональным и удобным (а также понятным для начинающего пользователя). Помимо этого Virtual Box бесплатен. Также кратко расскажу об установке виртуальной машины в Hyper-V.

Выбираем, после чего скачиваем либо один zip файл с виртуальной машиной, либо архив, состоящий из нескольких томов (для виртуальной машины Windows 10 размер составил 4.4 Гб). После загрузки файла распакуйте его любым архиватором или встроенными средствами Windows (ОС тоже умеет работать с ZIP архивами).


Также потребуется скачать и установить платформу виртуализации для запуска виртуальной машины, в моем случае - VirtualBox (также это может быть VMWare Player, если вы предпочли этот вариант). Сделать это можно с официальной страницы https://www.virtualbox.org/wiki/Downloads (загружаем VirtualBox for Windows hosts x86/amd64, если только у вас не другая ОС на компьютере).

Во время установки, если вы не специалист, ничего менять не нужно, достаточно нажимать «Далее». Также в процессе пропадет и снова появится Интернет-соединение (не пугайтесь). Если же даже после завершения установки Интернет не появляется (пишет ограничено или неизвестная сеть, возможно в некоторых конфигурациях), отключите компонент VirtualBox Bridged Networking Driver для вашего основного Интернет-подключения (в видео ниже показано, как это сделать).

Итак, все готово для следующего шага.

Запуск виртуальной машины Windows в VirtualBox


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


По завершении вы увидите новую виртуальную машину в списке VirtualBox, а для ее запуска достаточно будет либо дважды кликнуть по ней, либо нажать «Запустить». Начнется загрузка Windows, аналогичная той, которая происходит в первый раз после установки и через короткое время вы увидите рабочий стол полнофункциональной Windows 10, 8.1 или другой версии, которую вы установили. Если вдруг какие-то элементы управления ВМ в VirtualBox вам будут непонятны, внимательно читайте появляющиеся информационные сообщения на русском или зайдите в справку, там все изложено довольно подробно.

На рабочем столе загруженной с modern.ie виртуальной машины имеется кое-какая полезная информация. Помимо имени пользователя и пароля, данные об условиях лицензии и способах продления. Кратко переведу то, что может вам пригодиться:


  • Windows 7, 8 и 8.1 (а также Windows 10) активируются автоматически при подключении к интернету. Если этого не произошло, в командной строке от имени администратора введите slmgr / ato - период действия активации 90 дней.
  • Для Windows Vista и XP срок действия лицензии 30 дней.
  • Возможно продление пробного периода для Windows XP, Windows Vista и Windows 7, для этого в последних двух системах введите в командной строке от имени администратора slmgr / dlv и перезагрузите виртуальную машину, а в Windows XP используйте команду rundll32. exe syssetup, SetupOobeBnk

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

Использование виртуальной машины в Hyper-V

Примерно также выглядит и запуск скаченной виртуальной машины в Hyper-V (которая встроена в Windows 8 и Windows 10 начиная с Pro версий). Сразу после импорта желательно создать контрольную точку виртуальной машины для возврата к ней после истечения 90-дневного срока действия.



Также, если вам требуется доступ в Интернет, в параметрах виртуальной машины задайте для нее виртуальный сетевой адаптер (о его создании я писал в статье про Hyper-V в Windows, упомянутой в начале этой статьи, для этого служит диспетчер виртуальных коммутаторов Hyper-V). При этом, почему-то в моем тесте, интернет в загруженной виртуальной машине заработал только после ручного указания параметров IP соединения в самой ВМ (при этом в тех виртуальных машинах, которые создавались вручную работает и без этого).

Видео - скачиваем и запускаем бесплатную виртуальную машину

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

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

В наши дни лидерами рынка виртуализации являются VMware, Microsoft, Citrix и Red Hat, однако эти компании не стояли у истоков технологии. В 1960-х годах прошлого века все начиналось с разработок специалистов таких компаний, как General Electric (GE), Bell Labs, IBM и др.

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

На заре

Виртуализация зародилась в качестве средства для расширения размеров оперативной памяти компьютеров в 60-х годах прошлого века.

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

Суперкомпьютер Atlas

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

Суперкомпьютер Atlas

Впервые в Atlas была использована виртуальная память (one-level store) - системное хранилище памяти было отделено от использовавшегося пользовательскими программами. Данные разработки стали первыми шагами по направлению к созданию уровня абстракции, использованного в дальнейшем во всех основных технологиях виртуализации.

Проект M44/44X

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

Основным компьютером был «научный» IBM 7044 (M44), на котором запускались виртуальные машины 7044 (40X) - на данном этапе виртуальные машины не симулировали полностью работу «железа».

CP/CMS

IBM работала над мейнфреймом S/360 - планировалось, что этот продукт станет заменой предыдущим разработкам корпорации. S/360 была однопользовательской системой, которая могла запускать несколько процессов одновременно.

Фокус деятельности корпорации начал меняться после 1 июля 1963 года, когда ученые Массачусетского технологического института (MIT) запустили проект MAC. Изначально сокращение системы было образовано от фразы Mathematics and Computation, показывая направленность разработки, но позднее под MAC стали понимать Multiple Access Computer («компьютер множественного доступа»).



IBM S/360

Проект MAC получил грант от американского оборонного агентства DARPA в размере $2 млн - среди поставленных задач было проведение исследований в области операционных систем, искусственного интеллекта и теории вычислений.

Для решения некоторых из этих задач ученым MIT понадобилось компьютерное «железо», с помощью которого могли бы работать несколько пользователей одновременно. Запросы о возможности создания таких систем были отправлены в IBM, General Electric и некоторым другим вендорам.

IBM в то время не была заинтересована в создании подобного компьютера - в руководстве корпорации считали, что на рынке отсутствует спрос на такие устройства. В MIT, в свою очередь, не захотели использовать для исследований модифицированную версию S/360.

Потеря контракта стала настоящим ударом для IBM - особенно после того, как в корпорации узнали об интересе к многозадачным компьютерам со стороны Bell Labs.

Для удовлетворения нужд MIT и Bell Labs был создан мейнфрейм CP-40. Частным клиентам этот компьютер никогда не продавался и использовался лишь учеными, однако данная разработка является крайне важной вехой в истории виртуализации, поскольку именно она позднее эволюционировала в систему CP-67, которая стала первым коммерческим мейнфреймом с поддержкой виртуализации.

Операционная система CP-67 называлась CP/CMS - первые две буквы были сокращением от Control Program, а CMS - сокращением фразы Console Monitor System.

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

В данном проекте была впервые реализована интерактивность - ранее системы IBM могли только «съедать» поданные на вход программы и печатать результаты вычислений, в CMS появилась возможность взаимодействия с программами во время их работы.

Публичный релиз CP/CMS состоялась в 1968 году. В дальнейшем IBM создала многопользовательскую операционную среду на компьютерах IBM System 370 (1972 году) и System 390 (операционная система VM/ESA).

Другие проекты того времени

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

  • Livermore Time-Sharing System (LTSS) - разработка лаборатории Лоуренса Ливермора. Исследователи создавали операционную систему для суперкомпьютеров Control Data CDC 7600, которые отобрали звание самых быстрых суперкомпьютеров у проекта Atlas.
  • Cray Time-Sharing System (CTSS - ранние разработки IBM также скрывались за аналогичной аббревиатурой, не стоит их путать) - система для первых суперкомпьютеров Cray, созданная научной лабораторией Лос-Аламоса в сотрудничестве с лабораторией Ливермора. Компьютеры Cray X-MP с операционной системой CTSS использовались министерством энергетики США для проведения ядерных исследований.
  • New Livermore Time-Sharing System (NLTSS) . Новейшая версия CTSS, поддерживавшая самые передовые технологии своего времени (например, TCP/IP и LINCS). Проект был свернут в конце 80-х годов.
Виртуализация в СССР
В СССР аналогом IBM System/370 являлся проект СВМ (Система Виртуальных Машин), запущенный в 1969 году. Одной из главных задач проекта была адаптация системы IBM VM/370 Release 5 (её более ранняя версия CP/CMS). В СВМ была реализована последовательная и полная виртуализация (на виртуальной машине можно было запустить другую копию СВМ и т.д.).



Экран текстового редактора XEDIT в ПДО СВМ. Изображение: Wikipedia

SoftPC, Virtual PC и VMware

В 1988 году компания Insignia Solutions представила эмулятор программного обеспечения SoftPC, с помощью которого можно было запускать приложения DOS на рабочих станциях Unix - функциональность, которая ранее была недоступна. В то время PC с возможностью запуска MS DOS стоил около $1500, а рабочая UNIX-станция с SoftPC обошелся бы всего в $500.

В 1989 году была выпущена Mac-версия SoftPC - пользователи этой ОС смогли не только запускать приложения DOS, но и Windows-программы.

Успех SoftPC сподвиг другие компании к выпуску аналогичных продуктов. В 1997 году Apple создала программу Virtual PC (продавалась через компанию Connectix). С помощью этого продукта пользователи Mac получили возможность запускать ОС Windows, что позволило сгладить недостаток софта под Mac.

В 1998 года была основана компания VMware, которая в 1999 году вывела на рынок аналогичный продукт под названием VMware Workstation. Первоначально программа работала только на Windows, однако позднее была добавлена поддержка других операционных систем. В этом же году компания выпустила первое средство виртуализации для платформы x86 под названием VMware Virtual Platform.

Развитие рынка в 2000-х

В 2001 году VMware выпуcтила два новых продукта, которые позволили компании выйти на корпоративный рынок - ESX Server и GSX Server. GSX позволил пользователям запускать виртуальные машины внутри операционных систем вроде MS Windows (данная технология является гипервизором второго типа - Type-2 Hypervisor). ESX Server относится к гипервизорам первого типа (Type-1 Hypervizor) и не требует наличия домашней операционной системы для запуска виртуальных машин.

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



Различия гипервизоров первого и второго типа. Изображение: IBM.com

После выпуска ESX Server компания VMware стремительными темпами захватила корпоративный рынок, опередив конкурентов.

Вслед за VMware на данный рынок вышли и другие игроки - в 2003 году Microsoft купила Connectix и перезапустила продукт Virtual PC, а затем, в 2005 году выпустила и энтерпрайз-решение Microsoft Virtual Server.

В 2007 году на рынок корпоративной виртуализации вышла корпорация Citrix, купившая open source платформу для виртуализации под названием Xensource. Этот продукт затем был переименован в Citrix XenServer.

Общая история развития технологий виртуализации представлена на инфографике ресурса CloudTweaks:


По клику изображение откроется в полном размере

Текущее положение дел на рынке

В настоящий момент существует несколько разновидностей виртуализации (серверная, сетевая, десктоп-виртуализация, виртуализация памяти, виртуализация приложений). Наиболее активно развивается сегмент серверной виртуализации.

По данным аналитической компании IT Candor, объём рынка серверов в 2013 году оценивался в $56 млрд ($31 млрд пришелся на физические сервера, а еще $25 на виртуальные). Лидерство VMware на рынке виртуальных серверов на тот момент времени не подвергалось сомнению:


Тем не менее, у флагманского продукта VMware vSphere Hypervisor, есть конкуренты - Microsoft Hyper-V, Citrix XenServer, Oracle VirtualBox, Red Hat Enterprise Virtualization Hypervisor (REVH). Продажи этих продуктов , а доля VMware на рынке снижается.

Аналитики американской биржи NASDAQ предсказывают снижение доли компании на общем рынке виртуализации до чуть более 40% к 2020 году.


Тренды

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

Кроме того называются следующие перспективные сферы и области, связанные с технологиями виртуализации:

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

Компания Bromium создала технологию защиты десктоп-компьютеров, построенную на технологиях виртуализации. Это средство умеет создавать микро-виртуальные машины, «внутри» которых запускаются обычные пользовательские процессы (например, открытие веб-страниц или документов). После закрытия документа или окна браузера микро-виртуальная машина уничтожается.

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

Технология виртуальных сетей хранения данных (Virtual SAN)
Сети хранения данных (Storage Area Network, VSAN) позволяют организациям более эффективно использовать свою, в том числе, виртуальную инфраструктуру. Однако подобные продукты для подключения внешних устройств хранения (оптические приводы, дисковые массивы и т.п.) часто стоят слишком дорого для небольших компаний.

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

P. S. Если вы заметили опечатку, ошибку или неточность изложения - напишите личным сообщением и мы оперативно все исправим. Спасибо за внимание!

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

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

На среднем по мощности ПК эмулируемые операционные системы могут функционировать относительно стабильно, а при грамотной настройке параметров ВМ, можно выжать максимум производительности. Комфортная работа важнее всего, не так ли?

Нижеследующие несколько советов помогут это сделать, не зависимо от того, какую систему виртуализации вы выбрали. Это могут быть наиболее популярные и достаточно функциональные , VMware или, например, менее распространенные в среде обычных пользователей — Virtual PC, Parallels и т.д.

Давайте посмотрим, что мы сможем сделать для повышения производительности. Приступим?!

ВИРТУАЛЬНАЯ МАШИНА

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


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


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

4. Побеспокойтесь о включении Intel VT-x/AMD-V . VT-x и AMD-V — специальные процессорные инструменты, которые улучшают виртуализацию. Могут активироваться автоматически, а могут и вручную. Возможно, вам придется зайти в БИОС вашего компьютера и включить параметр самостоятельно. Также стоит убедиться в том, что он включен и в настройках VirtualBox.


5. Выделите больший объем оперативной памяти . Виртуальные машины прожорливы, вследствие чего, рекомендуется выделять им не менее 2 Гигабайт ОЗУ. Можно и больше, но желательно не менее одной трети от доступной.


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


7. Добавьте видеопамяти . Настройка некоторых параметров видео также может повысить скорость. Например, включение функции 2D или 3D-ускорения позволит вам использовать некоторые приложения с более разумной скоростью.


8. Используйте по возможности твердотельный диск . SSD — является одним из лучших мест для размещения систем виртуализации.

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

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

На этом всё!

P.S. Просмотрите список всех компьютерных советов в !

P.P.S. Ждем вашего участия в наших группах ВК или ФБ!