LINUX.ORG.RU

Старая система внутри домена Xen на новой


0

0

Есть два компа. Один старый и медленный, а второй новый и быстрый.
На старом и медленном стоит какая-то операционка.
На новом и быстром -- Xen + Linux.

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

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

Решение:
http://xgu.ru/wiki/xen/export

На изображении:
Десктоп нового компа, на котором:
* окно системы со старого компа, запущенного в домене Xen
* конфигурационный файл этого домена
* список файлов-устройств, соответствующих экспортированному с помощью AoE диску старой машины

>>> Просмотр (1024x768, 106 Kb)

Не впечетлило. Вывод top не показывай.

FiXer ★★☆☆☆
()
Ответ на: комментарий от anonymous

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

rgaliull
()
Ответ на: комментарий от rgaliull

ВСе бы круто, но пипец же у тебя шрифты - че уж так впадлу тот же terminus прикрутить?

anonymous
()

Зачтено. Только поправь шрифты на пенели задач, хотя может на ЖК оно и так хорошо выглядит.. =\

anonymous
()

>На изображении: >* окно системы со старого компа, запущенного в домене Xen

офигеть amd64 с полугигом РАМ - это уже "старый и медленный"?

vyv ★★★
()
Ответ на: комментарий от vyv

> офигеть amd64 с полугигом РАМ - это уже "старый и медленный"?

Так это не "старый и медленный", это то, что видно изнутри виртуальной машины XEN-а.

slav ★★
()

Весь моск сломал пока понял че ты там замутил. Зачот :)

Virun
()

Отлично проделанно!

Жаль у самого проц не держит эмуляцию...

Harliff ★★★★★
()
Ответ на: комментарий от OlegSL

Не в шрифтах счастье!!! Чувак отличную тему замутил! При случае попробую обязательно! Респект и уважуха!

anonymous
()

А как Win2000 пережила смену "железа"? Или XEN'ном ей обеспечили эмуляцию?

anonymous
()
Ответ на: комментарий от anonymous

> А как Win2000 пережила смену "железа"? Или XEN'ном ей обеспечили эмуляцию?

Просто! в compmgmt.msc в Device manager раскрываем IDE ATA/ATAPI Controllers и перед загрузкой в домене Xen установить Standart Dual Channel PCI IDE Controllers. При первом запуске не было мышки - после инициализации новых устройств винда попросила reboot. После второго запуска все красиво заработало. Какие устройства эмулировать - опеределил конфиг домена Xen. Как вариант - можно создать в винде Hardware Profile для загрузки в качестве DomU выбирать его при старте windows.

По поводу шрифтов - не в шрифтах счастье :) - как кто-то правильно заметил

Можно запускать Windows на компах, которые не поддерживают аппаратную виртуализацию - см. QEMU (clint:debian/tmp$ apt-cache search kqemu в Debian).

anonymous
()
Ответ на: комментарий от neiromancer

если Вы имеете ввиду трей на скриншоте - то нет, там не запущен StrongDisk.

anonymous
()
Ответ на: комментарий от anonymous

Добавлю несколько слов к выступлению предыдущего оратора, который собственно и является истинным автором скриншота ("скриншот не мой, я просто разместил объяву").

Запуск старой системы выполняется в HVM-домене Xen.
Конечно, что для этого необходима поддержка аппаратной виртуализации центральным процессором хост-системы.

Первый запуск в соответствии с описанным способом всегда должен выполняться в HVM-домене. Если система поддерживает возможность работы в паравиртульном домене Xen (Linux, NetBSD, OpenSolaris),
впоследствии её можно запустить и в паравиртуальном режиме.
Для этого необходимо каким-то образом (например, в ходе первого запуска в HVM-домене или подмонтировав её раздел в домене 0) закинуть модули паравиртуального ядра.

В паравиртуальном режиме исполнение будет значительно быстрее, в первую очередь из-за ускорения ввода/вывода, который даже в HVM-доменах выполняется через эмулятор (сейчас в Xen используется qemu-dm).
Поэтому, конечно, если система поддерживает возможность паравиртуальной работы, её как можно скорее нужно переводить в паравиртуальный режим.

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

Конечно, скорость в этом случае пострадает. Чтобы сделать замедление не таким сильным, можно использовать модуль ускорения эмулятора kqemu. Этот модуль инсталлируется и используется достаточно просто.
Ускорение в сравнении с обычным qemu значительно (до Xen HVM не говорял уже про паравиртуальный, конечно, kqemu не дотягивает, но тем не менее поэкспериментировать можно).


devigor
() автор топика
Ответ на: комментарий от firsttimeuser

Ещё.
По поводу top.

В данном случае top смотреть бесполезно,
потому что домен в котором выполняется Windows не является
процессом внутри домена 0 (где предполагается запускать top, насколько я понял).

Чтобы посмотреть нагрузку на проц вместо этого нужно запускать
xm top

Там всё красиво. Винда проц жрёт не больше чем обычно.

devigor
() автор топика

Я такую хрень делал с вирталбоксом . По rdp транслировал. щас на vnc перешол. на старую машину из сети тащю thinstation... проще и удобне ИМХО. Да еще Xvnc это вам не Xen))

(c) SilentLexx

anonymous
()

с радостью бы использовал xen, если бы хоть 1 узел xen смог нормально использовать nvidia драйвер=(

Ugluk
()

Старая винда. Ничего нового.

qsloqs ★★
()

А как скорость работы винды?

Harliff ★★★★★
()
Ответ на: комментарий от anonymous

>>не вопрос это тоже можно На скриншоте, кстати, Xorg запущен с Driver "nvidia" !!

и xgl и xv будут нормально работать? glxgears покажет более 1000fps? а у гостевой ос (домен 1) что за видеодрайвер будет?

Ugluk
()
Ответ на: комментарий от Ugluk

В пользовательском HVM-домене (domain U) будет та видеокарта,
которую будет эмулировать соответствующий device model.
Если мы говорим о том, что в качестве device model используется qemu-dm,
то эмулироваться будет скорее всего Cirrus Logic.

Аппаратная виртуализации ввода/вывода на сегодняшний день,
к сожалению, не доступна. Нет возможности монопольного выделения устройства HVM-домену.
Поэтому из HVM-домена вы никак не сможете увидеть свою видеокарту NVidia; операционная система будет работать именно с эмулируемым видеоадаптером.

Это касается не только видеоустройств,
но и всех устройств ввода/вывода: сетевого адаптера, контроллера жёсткого диска, звукового адаптера и так далее.

С паравиртуальными доменами всё проще.
Вы можете выделять такому домену устройство (в том числе и видеокарту) целиком. И оно будет работать с ним напрямую.


devigor
() автор топика

А для Xen все еще ядро 2.6.18 нужно? Я в пока это уперся, железка под 2.6.20 пахает.

anonymous
()
Ответ на: комментарий от Ugluk

>и xgl и xv будут нормально работать? glxgears покажет более 1000fps? а у гостевой ос (домен 1) что за видеодрайвер будет?


Драйвер NVidia и ядро Xen вполне совместимые вещи. Тот "некрасивый" fluxbox, что на скриншоте, запущен с конфигом xorg.conf, часть которого ниже:

Section "Device"
    Identifier     "Videocard0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 6100"
EndSection


Вот сама карточка:

 lspci | grep VGA
00:05.0 VGA compatible controller: nVidia Corporation C51G [GeForce 6100] (rev a2)


Сам модуль nvidia.ko:

lsmod | grep nvidia
nvidia               7251828  24 
agpgart                32264  1 nvidia
i2c_core               20480  8 nvidia,tuner,bttv,i2c_algo_bit,tveeprom,w83627ehf,i2c_isa,i2c_nforce2

и

 sudo modinfo nvidia | head

filename:       /lib/modules/2.6.18-5-xen-686/kernel/drivers/video/nvidia.ko
license:        NVIDIA
alias:          char-major-195-*
alias:          pci:v000010DEd*sv*sd*bc03sc02i00*
alias:          pci:v000010DEd*sv*sd*bc03sc00i00*
depends:        agpgart,i2c-core
vermagic:       2.6.18-5-xen-686 SMP mod_unload 686 REGPARM gcc-4.1
parm:           NVreg_VideoMemoryTypeOverride:int
parm:           NVreg_EnableVia4x:int
parm:           NVreg_EnableALiAGP:int

И вот что показывает glxgears:

 glxgears 
8951 frames in 5.0 seconds = 1790.173 FPS
13023 frames in 5.0 seconds = 2604.588 FPS
13468 frames in 5.0 seconds = 2693.452 FPS
13293 frames in 5.0 seconds = 2658.505 FPS
13521 frames in 5.0 seconds = 2704.146 FPS
13527 frames in 5.0 seconds = 2705.321 FPS
13567 frames in 5.0 seconds = 2713.348 FPS
13712 frames in 5.0 seconds = 2742.384 FPS
13455 frames in 5.0 seconds = 2690.875 FPS
13742 frames in 5.0 seconds = 2748.371 FPS
13717 frames in 5.0 seconds = 2743.381 FPS
13715 frames in 5.0 seconds = 2742.869 FPS
13737 frames in 5.0 seconds = 2747.236 FPS
13475 frames in 5.0 seconds = 2694.906 FPS
13427 frames in 5.0 seconds = 2685.322 FPS

Про драйвер гостевой ОС - выше уже ответили.

clint
()
Ответ на: комментарий от anonymous

Если брать из репозитория Xen или из репозитория Debian,
то да, там до сих пор 2.6.18.

А ежели прибегнуть к репозиторию Fedora и стащить ядро оттуда,
то уже тогда ядро 2.6.20, насколько я знаю.

devigor
() автор топика
Ответ на: комментарий от clint

На всякий случай добавлю.
Всё вышеизложенное конечно же касается домена 0.

Для тех кто с Xen'ом не знаком, и думает:
-- А зачем это рассказывать про хост-систему и какие в ней дрова аботают? -- скажу, что Xen это такая байда, которая требует
модификации не только гостевых систем, но и ядра самой хост-системы.

Хост-система тоже становится паравиртуальной.

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

Это касается и модуля nvidia, работающего в домене 0 в том числе.

devigor
() автор топика
Ответ на: комментарий от anonymous

> А как Win2000 пережила смену "железа"? Или XEN'ном ей обеспечили эмуляцию?
Есть утилита sysprep.exe, которая позволяет вычистить информацию об аппаратной конфигурации компьютера для последующего переноса на другую платформу.

Marvin
()

пользователь клиника это жесть =)

nerfur ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.