Oracle vm virtualbox установка видеокарты
В Панели управления NVIDIA я явно выбрал высокопроизводительный процессор NVIDIA для:
Когда VirtualBox работает, программное обеспечение NVidia не отображает его как приложение, использующее графический процессор NVidia. Поэтому я предполагаю, что VirtualBox действительно не использует графический процессор Nvidia.
Windows 7 x64 (то же самое, что и хост)
Гостевые дополнения установлены
3D-ускорение включено в настройках VirtualBox: Дисплей / Видео / Включить 3D-ускорение
Что Rhinoceros , приложение с поддержкой OpenGL, сообщает как видеоадаптер:
Мне кажется, что виртуальная машина использует аппаратное ускорение 3D хоста, но, к сожалению, Intel.
@ernie VirtualBox может предоставить гостям прямой доступ к API OpenGL графического процессора хоста. Насколько я могу сказать, что работает на моей машине. Только VirtualBox использует графический процессор Intel вместо графического процессора NVidia. Цитата из руководства VirtualBox : «С этой функцией, если приложение внутри вашей виртуальной машины использует 3D-функции через программные интерфейсы OpenGL или Direct3D 8/9, вместо того, чтобы эмулировать их в программном обеспечении (что будет медленным), VirtualBox попытается использовать 3D-оборудование вашего хоста. "
@feklee Название вопроса вводит в заблуждение: вы хотите использовать графический процессор nVidia для VBox. «От» также возможно, но означает что-то другое: аппаратное обеспечение, т.е. Доступ к графическому процессору хоста напрямую из VBox.
Я понимаю, что прошло несколько лет, но я хотел ответить, так как этот пост показывается довольно высоко, когда вы используете Google для «virtualbox 3d множественный GPU». За прошедшее время все стало намного проще и лучше.
Люди, которые натыкаются на этот поток, скорее всего, окажутся здесь, потому что у них есть ноутбук или ПК с двумя графическими процессорами, что довольно распространено в наши дни, особенно на игровых ноутбуках. Встроенный графический процессор Intel используется для рендеринга окон и обычных приложений, но приложения, использующие 3D-функциональность графического процессора, должны делать это с помощью высокопроизводительного графического процессора Nvidia.
Сегодня я собирал виртуальную машину Ubuntu на своем ноутбуке для кроссплатформенной разработки, и все было хорошо, за исключением того, что гостевая виртуальная машина была очень медленной, и этому не было никакого объяснения, потому что процессор, память и диск демонстрировали низкую загрузку.
Не потребовалось много времени, чтобы понять, что именно видео было причиной проблемы. Запуск приложений, максимизация / минимизация окон - все, что мы считаем само собой разумеющимся в 2019 году, но нуждающееся в 3D-ускорении для работы на любой разумной скорости - использовало графический процессор 0.
Это было легко определить, потому что Windows 10 теперь может видеть использование графического процессора с помощью «диспетчера задач», а затем вкладки «производительность». И я мог видеть, как я двигал окна, развернул, свернул, что это было сделано через GPU на хосте. Этот графический процессор на хосте является встроенным Intel HD GPU, и я хотел использовать NVidia GTX-1050ti, который был GPU1.
После поисков я не нашел нигде, где можно было бы указать, какой графический процессор использовать. Но эта ветка и некоторые другие напомнили мне, что при таких настройках нужно перейти в панель управления NVidia, затем «управлять настройками 3d», а затем вкладка «Настройки программы».
Вы вряд ли найдете «Virtualbox» в списке. Но вы можете нажать кнопку «Добавить» и добавить virtualbox.exe. Возможно, вам придется детализировать диск / путь, где находится ваша установка Virtualbox. После того, как вы добавили его, в настройках ниже убедитесь, что пункт 2. «Выберите предпочтительный графический процессор для этой программы» установлен на графический процессор, который вы хотите использовать, который в моем случае был «Высокопроизводительный процессор NVIDIA» ,
Не устанавливайте его в автоматический режим и, конечно, не устанавливайте его в интегрированный режим. Конечно, вам нужно, чтобы настройки виртуальной машины были установлены с установленным флажком 3D-ускорения, и вам необходимо установить гостевые дополнения на хосте. Но после того, как вы установили параметры 3d видео для хоста, как описано выше, выключите гостевую виртуальную машину, выйдите из виртуальной коробки, а затем перезапустите virtualbox и виртуальную машину.
Если вы используете диспетчер задач | performancemacne и посмотрите на процесс «менеджер виртуальных ящиков» и посмотрите, какой графический процессор используется при навигации по интерфейсу гостевой виртуальной машины, вы должны увидеть его, используя лучший графический процессор сейчас. Смотрите изображение, вставленное ниже.
Все это говорит, не ожидайте, что сможете запускать игры в гостевой виртуальной машине. Проход 3D ускорения до сих пор не так уж далеко впереди. Но вы можете ожидать, что у вас в гостях будет современная ОС и пользовательский интерфейс, и у вас будет приемлемый опыт. Можно было бы играть в более старые игры на гостевой виртуальной машине, как и все, что основано на DirectX9. К сожалению, по мере развития возможности виртуализации графических процессоров технология 3D-игр развивается быстрее.
Сегодня я провел небольшое исследование возможностей 3D-ускорения VirtualBox и VMWare, и по состоянию на январь 2019 года, если ускорение графического процессора в гостевой виртуальной машине важно для вас, тогда выбор VMWare - ваш лучший выбор, особенно если ваша гостевая ОС - Windows. Поддержка VirtualBox Возможности ускорения графического процессора немного менее развиты, поскольку вы можете предоставить гостевой виртуальной машине максимум 128 МБ видеопамяти, а в VMWare можно выделить до 2 ГБ для видеопамяти. VMWare поддерживает DirectX 10, а Virtualbox поддерживает DirectX9. Как я сказал в посте, directx 9 довольно устарел.
«« Выберите предпочтительный графический процессор для этой программы »установлен на графический процессор, который вы хотите использовать» Я не вижу вышеупомянутой опции. Я вижу Ambinetn, Ansiotropic Filtering . и т. Д., Но ничего о "выберите предпочтительный процессор графики"
Вам нужно прохождение PCI, хотя я еще не работал с Optimus, но я думаю, что с некоторыми взломами это возможно
Мне удалось сделать подобный трюк, чтобы принудительно включить карту nvidea для virtualbox, но ни один из 3 доступных графических контроллеров, предоставляемых Virtualbox, не работал нормально с моей гостевой ОС Neon KDE. У меня были большие глюки пользовательского интерфейса, поэтому использование nvidea в моем случае не является опцией. Благодаря предложению @ThomasCarlisle я постараюсь поиграть с VMware.
Предоставление гостю полного доступа к графическому процессору, вероятно, невозможно. Если виртуальная машина имела прямой доступ к вашему графическому процессору, когда ваш хост использовал его, Bad Things TM произошел бы, потому что совместное использование памяти между двумя фактически разными компьютерами - это не вещь; указатели и адреса и тому подобное будут сильно отличаться между ними. (Ни одна доступная для потребителя карта не поддерживает обслуживание двух компьютеров одновременно.)
Однако есть некоторые вещи, которые вы можете попробовать. Сначала установите предпочтительный графический процессор на панели управления NVidia ( Настройки 3D → Управление настройками 3D → Предпочитаемый графический процессор ). Это может заставить VirtualBox пойти с картой NVidia для OpenGL.
Наконец, на хостах Linux вы можете попытаться передать графический процессор на виртуальную машину, но это будет работать только для PCI-карт, и я не смог определить, ваш ли это PCI, и даже если у вас есть хорошие шансы отрыв графического процессора от хоста или возникновение других проблем. Сначала найдите адрес PCI (шина, устройство и функция) для правильной карты. Установите чипсет вашей виртуальной машины на ICH9; это ничего не сломало, когда я попробовал. Затем используйте утилиту VBoxManage, чтобы прикрепить карту:
Заменить Your VM Name при необходимости. BB номер шины вашего GPU на хосте; DD это устройство; F это функция. После этого @ введите слот PCI, который будет на гостевой. Например:
Предположение о том, что присоединение графического процессора к ВМ - это «плохая вещь», неверно; Существует большое сообщество людей, которые хотят сделать это, чтобы создавать игровые виртуальные машины на гипервизорах с «голым металлом». Если бы кто-то хотел сделать это в Linux, это потребовало бы внесения в черный список графического процессора PCIe, чтобы ядро обращалось только к графике чипсета; это предотвращает проблемы «разделяемой памяти». Предотвращение захвата карты Windows, вероятно, является самой сложной проблемой для решения этого вопроса, и, вероятно, для этого потребуется отключить устройство или удалить optimus и драйвер nvidia.
@BarisDemiray Если я правильно помню, команда не сообщала о каких-либо ошибках, когда я пытался это сделать, но я не думаю, что проверял, что виртуальная машина могла использовать устройство. Это было очень давно, извините.
Привет @BenN, спасибо, что нашли время ответить. Это именно то, что случилось, когда я пытался, никаких ошибок в командной строке, но нет видеокарты в виртуальной машине.
Oracle® VM VirtualBox
User Manual for Release 6.0
3. Настройки ОС
В качестве хост-системы выбрана ОС AlmaLinux 8 (вариант установки«Server with GUI»). Долгое время пользовался CentOS 7/8, поэтому, думаю, выбор тут очевиден.
Первое, что необходимо сделать, - это ограничить использование видеокарты, предназначенной для использования в ВМ, хост-системой. Для этого применяем ряд команд и настроек:
1) с помощью команды « lspci -nn | grep RX » получаем уникальные идентификаторы видеокарты. Т. к. видеокарта RX-серии, то, соответственно, ищем в выводе lspci (утилита устанавливается посредством команды « dnf install pciutils ») по этим двум символам. Вывод получим примерно такой (выделенные подстроки — это и есть искомые идентификаторы устройств) -
«02:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Lexa PRO [Radeon 540/540X/550/550X / RX 540X/550/550X] [1002:699f] (rev c7)
02:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Baffin HDMI/DP Audio [Radeon RX 550 640SP / RX 560/560X] [1002:aae0] », где 1002:699f — идентификатор VGA-контроллера, а 1002:aae0 — встроенной аудиокарты. Также запоминаем идентификаторы «02:00.0» и «02:00.1»;
2) добавив к команде « lspci -nn » ключ « k » (« lspci -nnk ») находим в выводе устройство «1002:699f» и запоминаем значение «Kernel driver in use» . В моём случае — это « amdgpu »;
3) в файле « /etc/default/grub » находим строку, начинающуюся с « GRUB_CMDLINE_LINUX », и добавляем после « quiet » значения «intel_iommu=on iommu=on rd.driver.pre=pci-stub pci-stub.ids=1002:67ff,1002:aae0», где « intel_iommu / iommu » – параметры, отвечающие за поддержку технологии IOMMU (технология взаимодействия виртуальных машин с реальным оборудованием), «rd.driver.pre=pci-stub» - указание на принудительную первоочередную загрузку фиктивного драйвера pci-sub, «pci-stub.ids» - перечисление устройств, для которых при загрузке ядра необходимо использовать фиктивный драйвер (т.е. происходит изоляция устройств для дальнейшего использования в виртуальных машинах). Если на хост-машине используется CPU от AMD, то «intel_iommu» меняем на «amd_iommu»;
4) в файл « /etc/modprobe.d/local.conf » добавляем строки « blacklist amdgpu » и « options pci-stub ids=1002:67ff,1002:aae0 », где « blacklist amdgpu » - явное указание на запрет использования драйвера AMD для графических устройств, а « options pci-stub ids=1002:67ff,1002:aae0 » - явное указание на использование фиктивного драйвера для соответствующих идентификаторов устройств;
5) выполняем команду « grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg » (т.е. пересоздаём конфигурационный файл загрузчика GRUB). Если речь не про EFI-загрузку, то команда выглядит так - « grub2-mkconfig -o /boot/grub2/grub.cfg »;
6) выполняем команду « dracut --regenerate-all --force » для пересоздания образа initramfs (initial RAM disk image, загружаемый в оперативную память файл с образом файловой системы), используемого при загрузке Linux в качестве первоначальной корневой файловой системы;
7) перезагружаем хост виртуализации.
Смысл этих настроек в том, чтобы ограничить использование определённых устройств при загрузке. Например, до прописания параметров в выводе команды «lspci -v» для VGA-контроллера будет присутствовать подстрока « Kernel driver in use: amdgpu », а после перезагрузки – « Kernel driver in use: pci-stub ». При старте же ВМ с Windows (и после проброса устройств) – “ Kernel driver in use: vfio-pci ” (в чём можно убедиться после запуска созданной ВМ). Важный момент — используемая для хост-системы видеокарта должна использовать драйвера, отличные от используемых для пробрасываемой видеокарты, например, в моём случае используется «Radeon HD 5430», драйвер для которой — это «radeon» (в выводе « lspci -v » – « Kernel driver in use: radeon »).
3.6. Display Settings
The following tabs are available for configuring the display for a virtual machine.
3.6.2. Remote Display Tab
On the Remote Display tab, if the VirtualBox Remote Display Extension (VRDE) is installed, you can enable the VRDP server that is built into Oracle VM VirtualBox. This enables you to connect to the console of the virtual machine remotely with any standard RDP viewer, such as mstsc.exe that comes with Microsoft Windows. On Linux and Oracle Solaris systems you can use the standard open source rdesktop program. These features are described in Remote Display (VRDP Support).
Enable Server: Select this check box and configure settings for the remote display connection.
5. Настройки ВМ QEMU-KVM via virt-manager
Предварительно скачиваем iso-образ Windows 10 и драйвера Virtio от RedHat (тоже в виде iso-образа).
При первоначальной установке всегда ставим галочку « Customize configuration before install ».
1) Указываем iso-образ устанавливаемой операционной системы (например, Windows 10). Также добавляем дополнительное устройство вида «CD-ROM» и монтируем в доп. устройство iso-образ с драйверами Virtio.
2) Для виртуального HDD (куда планируется установка ОС) выставляем: « Bus type = Virtio ». Тип виртуального диска — qcow2 или raw.
3) Для более эффективной работы размещаем основной виртуальный диск для ВМ на SSD.
4) Модель сетевой карты - virtio.
5) Overview: chipset = “Q35”, firmware = “UEFI x86_64: /usr/share/OVMF/OVMF_CODE.secboot.fd”.
6) OS Information: Operation System = “Microsoft Windows 10”.
7) CPU (соответствующие блоки в XML должны выглядеть именно так, если речь про аналогичную аппаратную конфигурацию):
4.5.1. Hardware 3D Acceleration (OpenGL and Direct3D 8/9)
The Oracle VM VirtualBox Guest Additions contain experimental hardware 3D support for Windows, Linux, and Oracle Solaris guests.
With this feature, if an application inside your virtual machine uses 3D features through the OpenGL or Direct3D 8/9 programming interfaces, instead of emulating them in software, which would be slow, Oracle VM VirtualBox will attempt to use your host's 3D hardware. This works for all supported host platforms, provided that your host operating system can make use of your accelerated 3D hardware in the first place.
The 3D acceleration feature currently has the following preconditions:
It is only available for certain Windows, Linux, and Oracle Solaris guests. In particular:
3D acceleration with Windows guests requires Windows 2000 or later. Apart from on Windows 2000 guests, both OpenGL and Direct3D 8/9 are supported on an experimental basis.
The Guest Additions must be installed.
For the basic Direct3D acceleration to work in a Windows Guest, Oracle VM VirtualBox needs to replace Windows system files in the virtual machine. As a result, the Guest Additions installation program offers Direct3D acceleration as an option that must be explicitly enabled. Also, you must install the Guest Additions in Safe Mode. This does not apply to the WDDM Direct3D video driver available for Windows Vista and later. See Known Limitations for details.
Because 3D support is still experimental at this time, it is disabled by default and must be manually enabled in the VM settings. See Section 3.6, “Display Settings”.
Untrusted guest systems should not be allowed to use the 3D acceleration features of Oracle VM VirtualBox, just as untrusted host software should not be allowed to use 3D acceleration. Drivers for 3D hardware are generally too complex to be made properly secure and any software which is allowed to access them may be able to compromise the operating system running them. In addition, enabling 3D acceleration gives the guest direct access to a large body of additional program code in the Oracle VM VirtualBox host process which it might conceivably be able to use to crash the virtual machine.
To enable Aero theme support, the Oracle VM VirtualBox WDDM video driver must be installed, which is available with the Guest Additions installation. The WDDM driver is not installed by default for Vista and Windows 7 guests and must be manually selected in the Guest Additions installer by clicking No in the Would You Like to Install Basic Direct3D Support dialog displayed when the Direct3D feature is selected.
The Aero theme is not enabled by default on Windows. See your Windows platform documentation for details of how to enable the Aero theme.
Technically, Oracle VM VirtualBox implements 3D acceleration by installing an additional hardware 3D driver inside the guest when the Guest Additions are installed. This driver acts as a hardware 3D driver and reports to the guest operating system that the virtual hardware is capable of 3D hardware acceleration. When an application in the guest then requests hardware acceleration through the OpenGL or Direct3D programming interfaces, these are sent to the host through a special communication tunnel implemented by Oracle VM VirtualBox. The host then performs the requested 3D operation using the host's programming interfaces.
4. Установка софта для виртуализации
1) « dnf install epel-release ».
2) « dnf install qemu-kvm qemu-img libvirt virt-install libvirt-client virt-viewer virt-manager seabios numactl perf cockpit cockpit-machines xauth virt-top libguestfs-tools ».
3) « dnf install @virt ».
4) Optional. « dnf install perl » (Perl – one love).
4.5. Hardware-Accelerated Graphics
3.6.1. Screen Tab
Video Memory: Sets the size of the memory provided by the virtual graphics card available to the guest, in MB. As with the main memory, the specified amount will be allocated from the host's resident memory. Based on the amount of video memory, higher resolutions and color depths may be available.
The GUI will show a warning if the amount of video memory is too small to be able to switch the VM into full screen mode. The minimum value depends on the number of virtual monitors, the screen resolution and the color depth of the host display as well as on the use of 3D acceleration and 2D video acceleration . A rough estimate is ( color depth / 8) x vertical pixels x horizontal pixels x number of screens = number of bytes . Extra memory may be required if display acceleration is used.
Monitor Count: With this setting, Oracle VM VirtualBox can provide more than one virtual monitor to a virtual machine. If a guest OS supports multiple attached monitors, Oracle VM VirtualBox can pretend that multiple virtual monitors are present. Up to eight such virtual monitors are supported.
The output of the multiple monitors are displayed on the host in multiple VM windows which are running side by side. However, in full screen and seamless mode, they use the available physical monitors attached to the host. As a result, for full screen and seamless modes to work with multiple monitors, you will need at least as many physical monitors as you have virtual monitors configured, or Oracle VM VirtualBox will report an error.
You can configure the relationship between guest and host monitors using the View menu by pressing Host key + Home when you are in full screen or seamless mode.
Scale Factor: Enables scaling of the display size. For multiple monitor displays, you can set the scale factor for individual monitors, or globally for all of the monitors. Use the slider to select a scaling factor up to 200%.
You can set a default scale factor for all VMs. Use the Display tab in the Global Settings dialogs.
Enable 3D Acceleration: If a virtual machine has Guest Additions installed, you can select here whether the guest should support accelerated 3D graphics. See Section 4.5.1, “Hardware 3D Acceleration (OpenGL and Direct3D 8/9)”.
Enable 2D Video Acceleration: If a virtual machine with Microsoft Windows has Guest Additions installed, you can select here whether the guest should support accelerated 2D video graphics. See Section 4.5.2, “Hardware 2D Video Acceleration for Windows Guests”.
Graphics Controller: Specifies the graphics adapter type used by the guest VM. Note that you must install the Guest Additions on the guest VM to specify the VBoxSVGA or VMSVGA graphics controller. The following options are available:
VBoxSVGA: The default graphics controller for new VMs that use Windows 7 or later.
This graphics controller improves performance and 3D support when compared to the legacy VBoxVGA option.
VBoxVGA: Use this graphics controller for legacy guest OSes. This is the default graphics controller for Windows versions before Windows 7 and for Oracle Solaris.
VMSVGA: Use this graphics controller to emulate a VMware SVGA graphics device. This is the default graphics controller for Linux guests.
None: Does not emulate a graphics adapter type.
2. Аппаратная часть
Процессор: Intel(R) Core(TM) i5-9400F CPU @ 2.90GHz
Материнская плата: ASRock Z390 Phantom Gaming 4S
Видеокарта 0 (для проброса в ВМ): Lexa PRO [Radeon 540/540X/550/550X / RX 540X/550/550X]
Видеокарта 1 (для хост-системы): Park [Mobility Radeon HD 5430]
USB-контроллер (для проброса в ВМ и последующего подключения периферийных устройств, например, клавиатуры): VIA Technologies, Inc. VL805 USB 3.0 Host Controller
4.5.2. Hardware 2D Video Acceleration for Windows Guests
The Oracle VM VirtualBox Guest Additions contain experimental hardware 2D video acceleration support for Windows guests.
With this feature, if an application such as a video player inside your Windows VM uses 2D video overlays to play a movie clip, then Oracle VM VirtualBox will attempt to use your host's video acceleration hardware instead of performing overlay stretching and color conversion in software, which would be slow. This currently works for Windows, Linux and Mac OS X host platforms, provided that your host operating system can make use of 2D video acceleration in the first place.
Hardware 2D video acceleration currently has the following preconditions:
Only available for Windows guests, running Windows XP or later.
Guest Additions must be installed.
Because 2D support is still experimental at this time, it is disabled by default and must be manually enabled in the VM settings. See Section 3.6, “Display Settings”.
Technically, Oracle VM VirtualBox implements this by exposing video overlay DirectDraw capabilities in the Guest Additions video driver. The driver sends all overlay commands to the host through a special communication tunnel implemented by Oracle VM VirtualBox. On the host side, OpenGL is then used to implement color space transformation and scaling.
Copyright © 2004, 2020 Oracle and/or its affiliates. All rights reserved. Legal Notices
Oracle® VM VirtualBox
User Manual for Release 6.0
3.6.3. Recording Tab
On the Recording tab you can enable video and audio recording for a virtual machine and change related settings. Note that these features can be enabled and disabled while a VM is running.
Enable Recording: Select this check box and select a Recording Mode option.
Recording Mode: You can choose to record video, audio, or both video and audio.
Some settings on the Recording tab may be grayed out, depending on the Recording Mode setting.
File Path: The file where the recording is saved.
Frame Size: The video resolution of the recorded video, in pixels. The drop-down list enables you to select from common frame sizes.
Frame Rate: Use the slider to set the maximum number of video frames per second (FPS) to record. Frames that have a higher frequency are skipped. Increasing this value reduces the number of skipped frames and increases the file size.
Quality: Use the slider to set the the bit rate of the video in kilobits per second. Increasing this value improves the appearance of the video at the cost of an increased file size.
Audio Quality: Use the slider to set the quality of the audio recording. Increasing this value improves the audio quality at the cost of an increased file size.
Screens: For a multiple monitor display, you can select which screens to record video from.
As you adjust the video and audio recording settings, the approximate output file size for a five minute video is shown.
Copyright © 2004, 2020 Oracle and/or its affiliates. All rights reserved. Legal Notices
Можно было попробовать много чего еще: Windows XP и Linux в качестве гостевых систем (ставил Windows 7 в 32 и 64-разрядном исполнении), добыть очередную видеокарту… В конце концов плюнул и решил зайти с другого конца, попробовав другой гипервизор. Не мудрствуя, взял то, что на виду: Xen в составе Xen Cloud Platform(XCP).
XCP поставился без сучка без задоринки.
На некоторое время поставил в тупик вопрос: как этой системой рулить? В смысле, должна же быть какая-нибудь консоль управления, желательно под винды? Поковырявшись полдня с условно-штатным OpenXenManager я пришел к мысли, что то ли лыжи не едут, то ли эта кроссплатформенная тулза на винде не живет. Один или два раза она сконнектилась с сервером, но померла где-то в процессе работы, остальные разы глухо висла при коннекте, сливая неудежимый поток исключений в консоль Питона.
К счастью, более широкий взгляд в окружающий интернет открыл мне, что Citrix XenCenter прекрасно может рулить opensource-ным Xen-ом, а сам вполне бесплатен. Правда, при коннекте кричит, что через N дней у вашего сервера истечет Evaluation period, но знающие люди пишут, что это он просто не в курсе насчет opensource редакции сервера, а на самом деле все будет работать.
XenCenter позволяет создавать-включать-гасить виртуалки, а проброс устройств надо настраивать из sysadmin-friendly интерфейса командной строки.
Против ожиданий, проблем тут не случилось. Сделал все по мануалу, и хватило его одного. Вот народ жалуется, что по Xen-у документации мало. Так другой раз и хорошо, что мало, если этого хватает. Сколько я по vSphere прочел, и все без толку… Впрочем, не хочу говорить дурных слов про vSphere. Под ней зато так железо настроилось, что Xen пролетел прямо со свистом.
Итак, с помощью XenCenter я организовал виртуалку о двух ядрах и 4 ГБ памяти, накатил туда седьмую 64-битную винду и пошел пробрасывать.
pciback 0000:01:00.1: secondary bus reset failed for device — all functions need to be co-assigned — err: 6
pciback 0000:01:00.1: FLR functionality not supported; attempts to use secondary bus reset unsuccessful;
pciback 0000:01:00.1: FLR not performed for device
Похоже, что передача карты на горячую нам не светит. Ладно. Дадим гипервизору свой VGA адаптер, благо видеокарт мне теперь хватает. Переставляем Radeon 3450 во второй слот, в первый ставим валяющийся рядом 3470. К каждой карте прицепляем по монитору. Включаем хост, запускаем виртуалку. Винда просит перезагрузки после изменения конфигурации. Ребут. Логинимся…
В консоли XenCenter заставка зависает, и я не сразу соображаю, что правый монитор светится синим
Оно все-таки произошло.
Итого, на Xen срослось за 3 дня (после того, как 3 месяца упражнялся на VMware).
Я залогинился. Картинка на мониторе самая обыкновенная, без особенностей. Разрешение 1920х1200 держит. Не тупит (хотя тестов не гонял). Видео с YouTube проигрывается нормально.
На этой радостной ноте завершу свой правдивый отчет, а сам займусь пробросом клавиатуры, мыши и прочей периферии.
Update:
Пробросил клавиатуру и мышь, пишу из виртуалки под Win7. Здесь ничего, жить можно.
Индекс производительности 3.5
Я даже еще не отключил Aero и прочие визуальные эффекты, вредные нашему делу, но работает шустро.
Что еще? Поставил XenCenter, Xen нормально администрится (кто бы сомневался). Внешний USB-диск, естественно, тоже нормально прицепляется. Теперь надо понять, как пробрасывать CD-ROM.
К сожалению, ничего не вышло у меня с USB Passthrough, равно как и со справедливо упомянутым в комментариях Xen VGA Passthrough (Scraelos), потому как нет под XCP файла "/etc/xen/ cfgfile". Как прописать необходимые настройки с помощью xe — я не разобрался. Если знатоки Xen помогут, буду очень признателен.
- Пробросить CD-ROM (-)
- Сконфигурировать статический IP (+)
- Протестировать производительность (частично сделано)
- Попробовать пересадить dom0 на IGD, освободится один слот PCIe (-)
- Попробовать пересадить dom0 на onboard NIC, освободится слот PCI (+)
- Попробовать впарить dom0 клавиатуру на PS/2
- Организовать файловую систему для обмена даными между гостевыми ОС
- Организовать переключение между гостевыми ОС (скриптами, наверное)
Update 06.02.2012:
dom0 на IGD пересаживаться отказался в категорической форме. Кроме того, повторил попытку пробросить primary VGA adapter — без толку. Вернулся к прежней конфигурации адаптеров.
Уперся в проблему с пробросом CD(DVD)-Writer. CD-ROM пробрасывается штатно, но только RO, а мне надо RW. По этому поводу нашел 2 рекомендации: воткнуть и пробросить отдельный SATA контроллер и использовать USB CD/DVD-Writer (благо USB пробрасывается). К сожалению, даже эти (имхо, костыльные) решения у меня на данный момент не заработали. Контроллер пробрасываться отказался. Попытка подключить штатный SATA CD/DVD привод через переходник USB-SATA ни к чему хорошему не привела. Продолжаю опыты.
Две разные системы (win + linux) на одной аппаратной базе - реальность. В этом нет ничего нового или инновационного (на данный момент времени), но если требуется максимальная производительность гостевой системы, то не обойтись без проброса реальных устройств в виртуальную машину. Проброс сетевых карт, usb-контроллеров (etc) экстраординарных особенностей не несёт, а вот попытка "шаринга" ресурсов видеокарты и процессора вполне может принести некоторое количество проблем.
Итак, а для чего, собственного говоря, городить системы с полнофункциональным использованием ресурсов GPU и CPU? Самый простой и очевидный ответ - игры (широко известный факт - если не большинство, то очень многие, написаны под ОС Windows). Другой вариант - полноценное рабочее место с возможностью запуска требовательных приложений (например, CAD-софта), быстрым бэкапом (скопировать файл ВМ куда проще, чем создавать полную копию HDD/SSD) и опцией полного контроля сетевого трафика гостевой системы.
Читайте также: