Виртуальная машина под windows 2003

Создание виртуальной машины под управлением операционной системы Microsoft Windows Server 2003

Ход работы

Работу виртуальной машины упрощенно иллюстрирует рисунок 1.1. На компьютере устанавливается базовая операционная система, после чего устанавливается программное обеспечение виртуальной машины (ВМ). Оно позволяет установить одну или несколько гостевых операционных систем и запускать в них программы, разработанные для данных ОС. В качестве ПО виртуализации в наших лабораторных работах будет использоваться Microsoft Virtual PC 2007 SP1.

Рис.1.1. Схема работы виртуальных машин.

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

Из меню Пуск (Программы -> Microsoft Virtual PC) запустим консоль управления виртуальными машинами. Нажав кнопку Создать виртуальную машину приступим к созданию новой машины (рис 1.2).

Рис.1.2. Создание новой виртуальной машины

При создании новой машины надо указать имя машины и описать путь расположение ее файлов (файла «машины» с расширением .vmc и файла виртуального жесткого диска с расширением .vhd).

В следующих окнах мастера нужно выбрать объемом выделяемой машине оперативной памяти; укажем, что надо использовать сетевые подключения компьютера(рис.1.3); создать диск виртуальной машины (рекомендуется выбрать динамически расширяемый виртуальный жесткий диск) или использовать существующий и разрешить диски отката (рис.1.4).

Рис.1.3. Создание новой виртуальной машины

Рис.1.4. Создание новой виртуальной машины

После сделанных настроек в окне консоли (рис.1.5) появится новая виртуальная машина, которую можно запустить, выделив ее и нажав кнопку Открыть.

Рис.1.5. Консоль управления виртуальными машинами

Настройки виртуальной машины можно изменить выбрав пункт Параметры из контекстного меню (рис.1.6).

Рис. 1.6. Настройка виртуальной машины

Задание 1. Инсталляция виртуальных машин

Создание виртуальной машины под управлением операционной системы Microsoft Windows Server 2003

Запустите программу Microsoft Virtual PC. Откроется Virtual PC Console (Консоль виртуального компьютера). В этой консоли вам нужно создать виртуальную машину для операционной системы Microsoft Windows Server 2003 (имя виртуальной машины – группа-ФИО-MWS2003)и открыть её настройки. В настройках указать: в качестве DVD дисковода — файл c образом инсталляционного диска с ОС Widows Server 2003 и в качестве сетевого адаптера – Внутреннюю сеть (этот вариант представляет сетевое взаимодействие исключительно между виртуальными машинами, изолируя их от всех внешних сетей, как проводных, так и беспроводных, а также от основной операционной системы).

Запустить созданную виртуальную машину и выполните инсталляцию операционной системы Windows Server 2003:

запустите ВМ и начните установку ОС;

ознакомьтесь с информацией программы установки и нажмите Enter;

ознакомьтесь с лицензионным соглашением и согласитесь с ним (клавишa F8);

создайте раздел для ОС на всем жестком диске (10Гб);

выполните быстрое форматирование созданного раздела в файловой системе NTFS — нажмите ENTER. Дождитесь окончания форматирования раздела, и копирования файлов установки на него. В процессе копирования компьютер перезагрузится и продолжит установку автоматически;

самостоятельно укажите параметры языка и раскладки клавиатуры и перейдите к следующему шагу кнопкой Далее;

укажите регистрационные данные:

ведите в поле Имя – ФИО

ведите в поле Организация – группа

завершите ввод кнопкой Далее;

введите в поле Ключ продукта лицензионный ключ и щелкните Далее;

укажите вариант лицензирования при котором для каждого подключения требуется отдельная лицензия:

установите радиокнопку На сервере;

введите в текстовое поле количество одновременных подключений, например 10;

укажите имя компьютера и пароль администратора:

введите в поле Имя компьютера – группа-ФИО-MWS2003 (в английской транслитерации);

введите в поле Пароль администратора – 1;

введите в поле Подтверждение – 1;

укажите текущее время, дату и Ваш часовой пояс;

укажите сетевые параметры – Обычные параметры;

укажите сетевую группу, например Workgroup и щелкните Далее;

дождитесь окончания выполнения установки ОС;

по окончании установки компьютер перезагрузится. После этого загрузится операционная система Windows 2003 Server;

Windows 2003 под KVM на Ubuntu Server

32-разрядная редакция Windows Server 2003 R2 — хороший вариант Windows сервера для запуска в виртуальной машине под KVM

Система сама по себе занимает мало памяти и стабильно работает.

Приступим к установке!

Подготовка к установке Windows 2003 Server под KVM

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

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

Создание диска LVM

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

Первый запуск и virtio драйвера

Параметр «-vnc …» имеет смысл только на сервере без GUI. По умолчанию KVM откроет окно через SDL. В обоих случаях Ctrl+Alt+Shift+1 и Ctrl+Alt+Shift+2 служат для переключения внутри окна между гостевой и управляющей консолью.

Параметр « -net nic,model=virtio. » создаст внутри ВМ сетевую карту неизвестного Windows типа, для которого мастер настройки оборудования предложит выбрать драйвер. Парный ему параметр « -net tap. » создаст в хост-ОС сетевой интерфейс для связи с ВМ. Назначение IP-адресов, настройка DHCP и выхода во внешний мир через ProxyARP, NAT или Bridge не имеют прямого отношения к Windows, поэтому здесь не рассматриваются.

Читайте также:  Linux установка с ядрами

Теперь про самое важное на данном этапе, т.е. про диски.

HDC — это ISO-образ с дистрибутивом Windows. Имя файла взято из торрента в предыдущем разделе. С него внутри ВМ произойдет первая загрузка системы (« -boot order=d «).

HDA — это пустой образ диска, на который будет устанавливаться система. Создан командой « kvm-img create -f qcow2 vm_10.img 50G «.

HDB — это пустой образ диска, созданный через « kvm-img create -f qcow2 temp.img 1G » с единственной целью — показать Windows устройство незнакомого типа, чтобы она затребовала драйвер для него. Установка в систему драйвера virtio для временного диска позволит переключить затем с IDE на virtio системный диск.

После того, как установка системы и драйверов будет полностью завершена, в команде запуска следует убрать «-boot» и все строки «-drive», кроме первой, т.к. временный диск и ISO-образы станут не нужны (обратите внимание на добавленный « if=virtio «!):

Рекомендуемые настройки Windows

Во-первых, по умолчанию Windows создаёт при BSOD’ах полный дамп памяти. В лучшем случае, это существенно замедлит перезагрузку. В худшем, приведёт к полному зависанию.

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

Поэтому после завершения инсталляции в самую первую очередь (до установки драйверов!) рекомендуется зайти в Панель управления => Система:

  • Автоматическое обновление: Отключить
  • Дополнительно => Отчет об ошибках => Отключить
  • Дополнительно => Загрузка и восстановление => Параметры => Отказ системы => Запись отладочной информации => Малый дамп памяти (64КБ)

Настройки TCP/IP не являются обязательными, но немного повысят производительность, т.к. в виртуальной среде отсутствуют некоторые проблемы, которые нужно учитывать при передаче по физической сети.

После этого можете приступать к установке драйверов для диска (virt-stor) и сетевой карты (virt-net). После их установки в Диспетчере оборудования появятся «Red Hat VirtIO SCSI Controller», «Red Hat VirtIO SCSI Disk Device» и «Red Hat VirtIO Ethernet Adapter».

Memory Ballooning

Традиционный подход — сразу при запуске виртуальной машины (ВМ) выделять ей блок ОЗУ заданного размера, например, 512 мегабайт. Его недостаток — в те моменты, когда в памяти ВМ есть неиспользуемое пространство, в других ВМ и хост-системе её может не хватать.

Memory ballooning — это механизм динамического (а) выделения хост-ОЗУ для ВМ по мере необходимости и (б) возвращения неиспользуемых блоков по мере освобождения. Благодаря ему становится возможным одновременно запускать множество ВМ, суммарный объём виртуального ОЗУ в которых больше объёма физического ОЗУ в хост-системе, при условии, что они не станут использовать максимально разрешённый объём все сразу. Благодаря этому память хост-системы распределяется между ВМ так же гибко, как между обычными процессами.

Создание виртуальных ресурсов, превышающих физические по объёму, обозначается любимыми для многих хостеров терминами «overcommit» и «overselling».

Для работы баллонинга требуется согласованная работа двух программных компонентов:

  • MOM (memory overcommitment manager) в хост-системе, меняющего объём ОЗУ для ВМ на основании запросов из неё,
  • VMM (менеджера виртуальной памяти) в гостевой ОС, взаимодействующего с MOM через виртуальный PCI-контроллер.

MOM в последних версиях KVM включается автоматически, старые требовали включать его с помощью «kvm… -balloon virtio» в командной строке.

Гостевое устройство для связи с MOM диспетчер оборудования (devmgmt.msc) Windows увидит как «PCI standard RAM controller» неизвестного типа. В отличие от virt-stor и virt-net, драйвер к нему не будет предложено установить автоматически. Вместо этого, следует зайти в свойства устройства, на вкладке «Драйвер» выбрать обновление и вручную указать путь к balloon.inf на VirtIO CD (пруф). После этого устройство переименуется в «VirtIO Balloon Driver».

ACPI выключение виртуальной машины Windows

По умолчанию Windows 2003 разрешает выключать себя единственным способом — ввести логин-пароль, выбрать Пуск => «Завершение работы», ввести примечание, нажать «OK». Разумеется, на VDS-ферме такой подход неприемлем. KVM (и QEMU) умеет эмулировать ACPI. Команда «system_powerdown» аналогична нажатию кнопки питания на физическом компьютере, но Windows её проигнорирует. Лечится следующим REG-файлом:

Кэширование

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

Всего возможны 3 основных режима:

  • none — хост-система не кэширует файл-образ ни на чтение, ни на запись
  • writeback — запись выполняется немедленно, чтение кэшируется
  • writethrough — чтение и запись кэшируются

В разных версиях qemu/kvm и в разных ОС по умолчанию могут использоваться разные режимы. Например, Qemu до версии 1.2 использует writethrough, 1.2 перешёл на writeback, в Proxmox выбран cache=none.

Все без исключения источники в Сети советуют не использовать writethrough как наиболее медленный. По субъективной оценке, для ВМ с Windows оптимален writeback, для ВМ с Linux и FreeBSD — none.

Зависания сети

Единственной серьёзной проблемой, которую однозначно вызывает ошибка в KVM, являются подвисания гостевой сети при интенсивном трафике.

Рекомендации, предлагаемые участниками обсуждений (обновление qemu-kvm и ядра, изменение параметров командной строки, использование vhost-net), к сожалению, пока не сумели её решить.

Читайте также:  Uefi не видит linux после установки

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

«Одомашнивание» Windows Server 2003


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

Начнем с лирики. На дворе стоял октябрь 2010 года. В кошельке завалялись лишние 1300 российских рублей, на которые я решил купить планочку памяти DDR3 на 2 гб. Придя домой и поставив ее к уже имеющимся 2Гб, я был немного разочарован красовавшейся цифрой 3.25 в свойствах системы Windows XP SP3. «Погуглив» на эту тему я узнал что такое расширение физических адресов (PAE) и почему оно криво реализовано в установленной на моей машине ОС (для тех кто не знаком можно прочитать тут). Я задался вопросом смены ОС. Не то чтобы мне уж так сильно нужны были 4 гигабайта оперативной памяти, это скорее было дело принципа. Vista x64 и Windows XP x64 были отсеяны по ряду причин. Оставалось выбрать между Windows Server 2003 32-bit и Windows 7 x64 (*nix религия не позволяла поставить). 64-битную ОС ставить если честно не хотелось, да и семерка в то время была немного сыровата, и кое какое ПО к которому я сильно привык там не работало даже в режиме совместимости. И так, выбар пал на Windows Server 2003 32-bit. Майкрософт выпускает ее в 4 модификациях: Enterprise Edition, Standart Edition, Web Server, Datacenter Edition. Все они отличаются количеством поддерживаемой оперативной памяти и процессоров. Windows 2003 Web Server вроде бы не распространяется отдельно. Самой распространенной в интернете (точнее на трекерах) оказалась версия Enterprise, которая поддерживает до 32 гигабайт ОЗУ и до 8 процессоров. Что ж, вполне подходило к моим требованиям. Дистрибутив Windows Server 2003 R2 SP2 Enterprise Edition был успешно скачан и записан на болванку CD-R (что было сделано зря, но обо всем по порядку).
На этом лирика закончилась, переходим к трудностям, возникшим при экслуатации.

    Первая проблема возникла еще до установки ОС. Дело в том что у меня на машине установлен RAID из двух жестких дисков SATA-2. Все современные сборки Windows XP уже давно имеют в своем составе вшитые драйвера для большинства устройств, в том числе и для RAID-контроллеров, поэтому с данной проблемой я ранее не встречался. В пустую потреченную болванку CD-R конечно жалко, но куда деваться. Floppy привода в моей машине отродясь не было, поэтому пришлось вшивать драйвера прямо в дистрибутив. На помощь пришла программа nLite. Вместе с драйверами был вшит лицензионный номер (или как он там называется). Новый дистрибутив был записан на CD-RW (а вдруг еще чего). На этот раз программа установки обнаружила диски и ОС была успешно установлена. После запуска в свойствах системе красовалась надпись «3.99 Гб ОЗУ». Что ж, самолюбие удовлетварено, двигаемся дальше.

Для того чтобы ОС была пригодна к работе на домашней машине была найдена программа Win Server 2003 Optimize Tool. С помощью нее были включены службы звука (Windows Audio), включены темы, включен автоматических вход в систему и еще некоторые приятные «плюшечки». Работа с ОС стала все больше напоминать работу с Windows XP.

Я хорошо знал что драйвера на 2k3 должны были подойти от XP, однако переживал за драйвера под звук (у меня полупрофессиональная внешняя звуковая карта ESI UMG 96) и под видео (Geforce GT 9400). Вообщем-то все обошлось, все имеющиеся на тот момент устройства завелись с полоборота. Для активизации DirectDraw и Direct3D пришлось включить аппаратное ускорение и включить совмещение записи (не обращайте внимание на скрин, на момент написания статьи в машине стоит видеокарта на чипсете от AMD).

При установке DirectX 9 у меня возникли проблемы (если честно не помню какие, извиняйте, все таки 2 года прошло). Решить проблему «родными» способами не получилось.На помощь пришла вот эта раздача с рутрекера. Дистрибутив скопировал файлы и вауляля, CS 1.6, первая Mafia, Готика 3, видео (в том числе HD) запускались и работали без проблем и тормозов.

Еще одна неприятность была связана с антивирусом. Дело в том, что мне очень нравиться антивирус касперского, и другие антивирусы я на дух не переношу. Однако запустив Kaspersky Internet Security 2011, я получил сообщение о том, что данная версия антивируса не может быть установлена на серверную ОС. Не шипко мне хотелось ставить серверную версию антивируса, учитывая то что у меня лицензия на KIS 2011. Решение было найдено на одном из трекеров. Там я скачал «прохаченный» дистрибутив KIS 2011, в котором очевидно была взломана программа установки. Дистрибутив легко встал и заработал на моей машине.

Еще одна неприятная проблема поджидала меня после установки QIP 2005. Компьютер подвисал секунд на 15-20 после получения всплывающего сообщения (ну знаете такая штуковина желтенькая в правом нижнем углу). Путем экспериментов было выяснено что подвисала языковая панель. С чем это было связано я так и не выяснил. Неприятность решил просто: «Нет панели – нет проблем». Однако как определить какая раскладка клавиатуры используется? Немного поискав в интернете замену языковой панели я выяснил, что в Windows 98 для отображения текущей раскладки использовалась утилита internat.exe. Покапавшись в куче старых болванок, я нашел дистрибутив 98 винды (что-то из серии «Золотой СОФТ»). Утилита была успешно найдена на диске и помещена в автозагрузку. Получилось вполне юзабельно, как будто там и была всю жизнь.

Читайте также:  Windows 10 тесты сравнения

Windows 2003 Server по-умолчанию не поддерживает файловую систему exFat, которая актуальна, например, для флеш-носителей. Исправляется обновлением WindowsServer2003-KB955704-x86-RUS.exe.

Подключив к машине внешний жесткий диск я не обнаружил его в «Моем комьютере», хотя устройство успешно обнаружилось. Флешки до этого вполне хорошо читались. Утилита «Управление дисками» показала, что область диска не размечена. Оказалось что в системе отключено автоматическое монтирование дисков. Включить его можно с помощью реестра, поменяв значение параметра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MountMgr\NoAutoMount c 1 на 0.

Обрадовавшись что драйвера от XP c легкостью ставяться на 2k3, я без задней мысли купил веб-камеру Logitech C510. Однако программа установки драйверов охладила мой пыл, явно дав понять что на эту ОС она устанавливаться не будет. Гугл не помог, и на офф. сайте Logitech тоже никакой информации по этому поводу я не нашел.

Что ж, на гугл надейся, а сам не плошай. В ход пошла тяжелая артиллерия под названием IDA Pro, благо опыт дизассемблирования был. В ходе исследования дизассемблированного кода, я выяснил что проверка ОС выполняется с помощью API функции GetVersionEx. MSDN нам говорит о том что функция принимает один параметр – указатель на структура типа LPOSVERSIONINFOW. Каким-то образом нужно было «подсунуть» в структуру значения, соответствующие Windows XP. С отладчиком заморачиваться не хотелось, хотя оно было бы проще. Вместо этого я решил изменить таблицу импорта и подсунуть вместо оригинальной функции GetVersionEx мою собсвенную. Для этого я создал Win32-проект типа DLL в VisualStudio, добавил свою функцию myGetVersionEx, и заменил в программе установки адрес функции GetVersionEx на адрес функции myGetVersionEx (точнее на ее указатель).

С помощью setdll.exe «пришпилил» мою dll-ку к exe-шнику программы установки и вауляля, драйвера поставились. Skype нашел камеру, звук и изображение прекрасно передавались. Все бы ничего, но вот в других программах при попытке выставить камере разрешение свыше 800х600 (камера держит 720p) все наглухо зависало. На сайте майкрософта я вычитал что в 2003 сервере нет поддержки HD-камер. Правда или неправда я разбираться не стал, все равно Skype больше чем 800х600 не поддерживает, а в других целях я камеру не использую.

После поступления в аспирантуру я решил купить себе принтер, мало ли там статьи печатать, или того лучше диссертацию. Выбор пал на MФУ Brother DCP-7032R (аналог 7030R, только другого цвета). На сайте в списке поддерживаемых операционных систем значились Windows XP / Windows 2003 (Printer Only) / … Надпись «Printer Only» меня насторожила, но после веб-камеры мне было уже не страшно :-). Вообщем производитель не обманул. Действительно, драйвера отказались ставиться, в том числе и на принтер.

На принтер драйвера удалось завести только вручную из диспетчера устройств. Сканер заводиться отказался. Фокус проведенный с драйверами под веб-камеру не прошел. Видимо программа установки использует более сложные алгоритмы определиня ОС, разбираться с которыми мне, если честно, было лень. Я решил пойти немного другим путем. Я установил на виртуальную машину Oracle VirtualBox Windows XP и перекинул в гостевую систему по USB устройство. Поставил там драйвера для МФУ. И принтер, и сканер успешно заработали. Не очень удобно, но сканером я пользуюсь крайне редко, поэтому такое решение меня вполне устроило.

Как я уже упоминал ранее, в момент написания статьи видеокарта от NVIDIA была поменяна на видеокарту от AMD (Gigabyte HD 6770). С установкой драйверов пришлось немного помучаться. Программа установки запускалась, процесс установки прекрасно шел, и после него даже выводилось сообщение что все прекрасно установлено, однако никаких драйверов в системе не появлялось. Полазив по форумам я нашел решение. Оно оказалось достаточно тривиальным. Нужно было запустить драйвера в режиме совместимости с XP. После этого все нормально установилось. После установки пришлось включить аппаратное ускорение и включить совмещение записи (см. пункт 3), чтобы активизировать функции Direct3D и DirectDraw.

Эпилог. Вот уже больше года на моей машине установлена Windows 7 x64. Мне просто надоели постоянные «сюрпризы» Win 2k3. Но я вполне доказал что ее можно использовать в домашних условиях. По субъективному мнению она работает стабильнее Windows XP и дает ряд преимуществ: полноценная поддержка PAE, всякие полезные серверные фичи типа встроенного маршрутизатора, отсутствие орграничения на количество полуоткрытых соединений (в отличии от тех же XP и Seven), что полезно для любителей торрент-клиентов и избавляет от использования программы Half-open limit Fix.

Спасибо всем кто дочитал пост до конца.

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

Оцените статью