1

Привет всем!

Есть у меня несколько виртуальных машин. Исторически сложилось так, что они развились из под VirtualBox'а. Это предистория.
Теперь причина проведения работ: Среди этих виртуалок есть терминальный сервер на базе Fedora-14. Юзеры на нем испытывают жесткие тормоза при работе с сетевыми (а иных им и нет) дисками. Еле всё ползает. Когда машина пустая, то скорость доступа по самбе к ремутной шаре не превышает 8-9 мегабайт в секунду. Если там есть юзеров штук 7-8, то скорость падает вообще до 1.5-3 мегабайт. На гигабитной сетке. Никакие манипуляции с virtio не помогают. Только ухудшают ситуацию.
Решение простое: переводим виртуалки под KVM. Преобразуем vdi-файлы в img. И получаем, что та же самая (тормозная) машина, запущенная гостем на том же самом хосту, но в KVM, разгоняется на "холостом" ходу до 20 мегабайт по чтению и до 35-40 мегабайт по записи в самбе на virtio-сетевых драйверах. То есть - решение выбрано правильно, стоим на верном пути. Однако...

Теперь проблема: Среди нескольких виртуалок затесалась одна с офтопиком. Она нужна.  И вот её ну никак не перегнать в работоспособный под KVM img. Отрабатывает только загрузчик, далее синий экран смерти на полсекунды и перезагрузка.  Можно выбрать safe-mode, но и там то же самое.

Вопрос - возможно ли корректно перегнать образ VirtualBox c WindowsXP из VDI-формата в IMG и скормить его KVMу? Или это задача нерешаемая.
Устраивать пляски с бубном обеспечивая совместную работу VB и KVM мне как то не очень улыбается...

2 (14.01.2013 23:49:37 отредактировано yars)

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

Истинный hotplug - это обычная электрическая розетка: воткнул - работает, и никаких драйверов.
Slackware64-current/Xfce/Lenovo G580

3

yars пишет:

Хм, не знаю, возможно ли это вообще, но думаю, это будет не так-то просто.

Но акронис-то двигает образы винды???? К тому же - как я понимаю, при конвертировании VDI в IMG поменяется только формат, который понимает система виртуализации. А не гость. Гостю то долно всё остаться в прежнем виде. Или я заблуждаюсь...

4 (15.01.2013 10:34:34 отредактировано bormant)

Текст BSOD предлагается угадать телепатически? отключите атоперезагрузку при BSOD и покажите сообщения.

Перед переводом Windows ВМ вернуть стандартные драйверы ide (достаточно удалить контроллеры в диспетчере устройств, либо использовать sysprep), убрать гостевые дополнения VirtualBox-а, перевести, дать найти новое виртуальное железо. Скорее всего поможет, но не факт.
Проводить эксперименты на копии.


yars пишет:

UPD: Собственно, из-за того, что меняется адресация неперемещаемых участков фаловой системы, и получается синий экран...

Либо миф, либо я не понял, о чём именно идёт речь.

5

bormant пишет:

Либо миф, либо я не понял, о чём именно идёт речь.

Может, и миф, но некоторые файлы там сделаны неперемещаемыми - например, при дефрагментации это видно наглядно. Хотя, скорее всего, я тут неправ.

Истинный hotplug - это обычная электрическая розетка: воткнул - работает, и никаких драйверов.
Slackware64-current/Xfce/Lenovo G580

6

bormant пишет:

Текст BSOD предлагается угадать телепатически? отключите атоперезагрузку при BSOD и покажите сообщения.

я совершенно не силен в этом. И буду очень благодарен, если наведете меня на то, как именно это сделать.
Я бы понял, что там надо делать, если бы сам мог прочитать эти синие экраны. Но они слишком быстро промаргивают.
А вот на этапе загрузки оси, когда есть выбор между safe-mode и обычной загрузкой есть сообщение, что конфигурация железа поменялась... Можно выбрать safe-mode, но все равно, даже после загрузки стандартных минимальных драйверов - синяя вспышка и перезагрузка.

7

WinXP, отключение перезагрузки при BSOD: на живой машине Win+Break, вкладка Дополнительно, в разделе "Загрузка и восстановление" жмём кнопку Параметры, снимаем флажок "Выполнять автоматическую перезагрузку".

Другой вариант (но не помню точно, есть ли он в Win XP): после сбоя и перезагрузки отображается меню, в котором в том числе есть пункт "Отключить автоматическую перезагрузку при отказе системы" -- как раз то, что надо.

8

Смотрите что нашёл. http://slashsda.blogspot.ru/2012/03/mig … o-kvm.html
И там ссылка, на решение проблемы. Если я так понял. Бегло пробежался и Инглиш у меня не силён.
http://blogs.msdn.com/b/virtual_pc_guy/ … 84461.aspx

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

MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

9

XliN пишет:

Смотрите что нашёл.

Если внимательно посмотреть на содержимое
1) MergeIDE.reg, станет ясно, что производится непосредственная замена драйверов контроллеров на стандартные.
2) MergeIDE.bat, станет ясно, что ему нужен будет диск с дистрибутивом (или исправный %SystemRoot%\Driver Cache\i386\driver.cab), поскольку оттуда достаются стандартные драйвера контроллеров:
expand>NUL "%ctdir%\driver.cab" -f:Atapi.sys "%SystemRoot%\System32\Drivers"
expand>NUL "%ctdir%\driver.cab" -f:Intelide.sys "%SystemRoot%\System32\Drivers"
expand>NUL "%ctdir%\driver.cab" -f:Pciide.sys "%SystemRoot%\System32\Drivers"
expand>NUL "%ctdir%\driver.cab" -f:Pciidex.sys "%SystemRoot%\System32\Drivers"

То есть, по сути своей, автоматизация рецепта из сообщения 4 Перегон образа виртуалки из VirtualBox в KVM

10

Слышал есть такая штука как virt-p2v. Сам не пробовал, не испытал но думаю стоит посмотреть может поможет.

11

semperN пишет:

Слышал есть такая штука как virt-p2v. Сам не пробовал, не испытал но думаю стоит посмотреть может поможет.

Тут дело в самой винде. Она падает в синий экран, при смене оборудования. Конвертируется все нормально

MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

12

XliN пишет:

Тут дело в самой винде. Она падает в синий экран, при смене оборудования. Конвертируется все нормально

virt-v2v и virt-p2v подменяют драйверы во время конвертации. так как virt-v2v виртуалбокс не умеет, то брать надо virt-p2v

13 (16.01.2013 16:55:42 отредактировано Cruiser78)

Ну, перегнал с MergeIDE винду под KVM-img. Заработало. И VirtIO-NIC, чуток побыстрее чем  в VB.
Вот только есть пара малоприятных нюансов.
Оффтопик определил, что в системе появились некие PCI-девайсы (PCI-device и PCI-контноллер simple Communication), звуковая плата и VGA-совместимый монитор. Определил и захотел поставить под них драйвера. Обломайтис, не находит даже на фирменном диске... На последние девайсы мне положить с прибором, а вот на PCI - как то опасливо.
Далее, хочу сделать диск виндовый как Virtio (у меня винда виртуальная об двух дисках, так что особых проблем нет). Назначаю второй диск как Virtio, винда определяет его как RedHat VirtIO SCSI controller. Находит некие дрова на диске virtio-win-0.1.49, но обламываеться по ошибке 39. Говорит, что драйвер поврежден или отсутствует.
Хотелось бы завести VirtIO на диск, а то дюже медленно IDE-режим диска работает.

Можно ли вывернуться? Да, антивирусов никаких на этой машине нет. Все манипуляции по настройке делаю под локальным админом. Если что...

14

Cruiser78 пишет:

Оффтопик определил, что в системе появились некие PCI-девайсы (PCI-device и PCI-контноллер simple Communication), звуковая плата и VGA-совместимый монитор. Определил и захотел поставить под них драйвера. Обломайтис, не находит даже на фирменном диске... На последние девайсы мне положить с прибором, а вот на PCI - как то опасливо.

конкретный список, или скрин девайс манагера

Cruiser78 пишет:

Далее, хочу сделать диск виндовый как Virtio (у меня винда виртуальная об двух дисках, так что особых проблем нет). Назначаю второй диск как Virtio, винда определяет его как RedHat VirtIO SCSI controller. Находит некие дрова на диске virtio-win-0.1.49, но обламываеться по ошибке 39. Говорит, что драйвер поврежден или отсутствует.

а на новый диск срабатывает?

15 (16.01.2013 18:15:16 отредактировано Cruiser78)

dyasny пишет:

конкретный список, или скрин девайс манагера

В "Других устройствах" проблемные:
1. PCI Device;
2. PCI контроллер Simple Commutinations;
3. аудиоустройство на шине High Definition Audio (это я просто за ненадобностью отключу, сейчас там ich6 поставлено, а надо, как я понимаю включить ac97);
4. Видеоконтроллер (VGA-совместимый) - гостю дано видео VGA. Почему винда не находит стандартный видео-девайс непонятно...
Это все, за исключением п.1, появилось сразу после конвертации. п.1 появился, когда я попытался поставить вместо IDE  virtio.

При установке драйверов Virtio SCSI происходит ошибка с сообщением, что драйвер не могут быть загружен, так как или поврежден или отсутствует (код 39).
Соответственно контролллер Red Hat Virtio SCSI тоже в ауте. Попытка поставить второй диск не в IDE-режим, а в SATA тоже провалилась.

dyasny пишет:

а на новый диск срабатывает?

А какая разница? Как я понимаю, важно иметь некий свободный диск, который должен зацепиться через VirtIO SCSI. А новый он (неформатированный), или с данными - какая разница, если сам драйвер в систему грузиться не хочет...
==================
- Изменил аудио (мне не нужное) на ac97. Подхватилось. но мне оно не нужно. Отключу.
- Нашел в сети virtio драйвера от 2008го года, п.2 опознался как VirtIO-serial-Driver. Мне тоже оно не очень и нужно.
- Не подхватывется VGA, фиг с ним, и PCI-device. Что висит на нём - без понятия. Ну и VirtIO SCSCI тоже не оживает...
------------------------------------
Оживил шаманством VirtioSCSI. Ожидал большего. Скоростью работы на Virtio-диске хвасться не хочется. На IDE диске - чуть медленее 3 мегабайт в секунду большой файл пишется, на Virtio - гонять файло чуть быстрее, 3.2 мегабайта... Не айс. Но тормозит запись. Если читаю с диска и пишу в сеть - то тогда разгоняюсь до 15-18 мегабайт в секунду (на пустой, юзера ушли уже, гигабитной сети). Чтение из сети на диск - 4.5 мегабайта в секунду.

16

Было у меня такое. Дрова на отказ отказывались ставиться и заменять идэешный диск на виртио. Я вышел из этого путем скармливания их при устаеовке винды.
Попробуй так. Сделай пустой, новый диск как виртио. Грузани винду и установи драйвер. Можно попробовать самому поставить. Через добавлеиня оборудования.

MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

17

древний драйвер не корректно работает с новыми хостами (федора 12+ / RHEL6+)

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

18 (16.01.2013 21:02:22 отредактировано Kettler)

Если не трудно Cruiser78 жду от вас отзывов на сколько в KVM шустреет работает с  жёстким диском по сравнению с VB. Просто у вас как бы система и от красно шапочных вот и интересно.

В debian всё таки в пользу VB.

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

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

19 (16.01.2013 22:35:42 отредактировано Cruiser78)

dyasny пишет:

древний драйвер не корректно работает с новыми хостами (федора 12+ / RHEL6+)

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

Дык я разве против? Вот только есть у нас в эксплуатации одна прикладная база данных. Сами догадываетсь какая. И в той базе корректно можно работать только в том случае, если у всех юзерей XP, максимум. Кодовая станица, однако... Без определенного шаманства - работу на разных осях с этой базой не совместить. Ну и более верхние оси - их покупать надо. А комплект ихпей был когда-то куплен и всё под ним прекрасно работает. Не трожь технику, она и не подведет...
-------------
Подумал - я могу (лицензионно чисто) поставить в витуалку и Windows 2000 Small Business Server... Мне этого сервера (по функционалу) выше крыши...
=======
А вообще-то неправильное решение поддержку XP в виртуалках выбросить. XP очень популярна. И именно в реальном секторе.
У меня есть еще еще несколько компьютеров, где 2000-ная винда живет. Компы работают, свою функцию выполняют. Нафига менять? Оно, что, будет эффективнее под 7-кой работать? Вот сломается комп - буду думать чем заменить. А ставить на страрый комп ту же 7-ку - фукака, даже пробовать не стану.

20 (16.01.2013 22:25:15 отредактировано Cruiser78)

XliN пишет:

Было у меня такое. Дрова на отказ отказывались ставиться и заменять идэешный диск на виртио. Я вышел из этого путем скармливания их при устаеовке винды.
Попробуй так. Сделай пустой, новый диск как виртио. Грузани винду и установи драйвер. Можно попробовать самому поставить. Через добавлеиня оборудования.

Нет, всё проще. Ниже мои догадки, но они основаны на том, что я видел на экране.
Итак, покувыркавшись с автоматической установкой драйверов под Virtio-диск, решил ставить драйвера в максимально ручном режиме. Для чего скопировал содержимое "CD" virtio-win в отдельный каталог, раз, и выбросил из набора дров всё, что по моему мнению никак к XP не относится. Далее - анализ содержимого каталогов "а чтоже там лежит?". Был найден каталог, где лежало нечто (пишу по памяти) с названием virtioscsi. Натравил установщик драйверов на этот каталог. Немного подумав установщик сказал, что ему не хватает файла, внимание!!! D:\win7\virt_чегототам.sys. И с какой такой радости XP ищет семёрочные драйвера??? Нашел место, где лежат драйвера от XP, установщик их взял, сказал, что в системе установлено более новое ПО (видимо от семерки, которое и не работало)... После моего приказа ставить поверх более старую версию - поставил и результат налице. VirtioDisk поднялся.  То есть - тривиальная ошибка установщика. Ставит драйвер от иной оси.

Но, на обычном винте, Virtio у меня чудес производительности не проявил. Я не сильно знаю, как тестировать производительность, смотрю это дело копированием большого файла в фаре или в mc, хватает... Так если на хосту имею дисковую скорость порядка 45-50 мегабайт в секунду, то в виртуалке в KVM диски работают на порядок медленнее (при настройках по умолчанию), копирование внутри диска дает примерно 3-3.5 мегабайта. Можно посмотреть, как оно поведет себя на SSD.

21

Kettler пишет:

В debian всё таки в пользу VB.

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

1. Мне VB тоже очень нравиться. Но есть одно неудобство - при обновлении юзеру (тупому) надо идти на сайт виртуалбокса и качать оттуда ExtensionPack под новую версию. А потом устанавливать её в систему для чего вводиь пароль рута. Это допустимо в продакшене? Я не думаю. Отсюда - блокируем обновления VB на юзерских машинах. А это хорошо?
2. Я в первом топике указал про причину отхода от VB. Он хорош, опять же, под персональное использование, под разворачивание на нём функционального сервера (почтового или астериска), но вот если сделать сервер терминалов под 1С, то сетевые интерфейсы этой виртуалки просто не держат нагрузки от десятка клиентов. Всё начинает еле ползать. Не думаю, что в дебиане - иначе.

3. Для перевода виртуалки из VDI (VB) в IMG (KVM) конфигурационные файлы не используются. Единственное, что следует взять от оригинала - MAC сетевой  платы. Всё остальное - новое.

22

Я заметил что диск побывавший как IDE и пересаженный на Virtio SCSI работает фигово. Может мне показалось. Замерь скорость на вновь созданном диске SCSI. Который без конвертации. Чистинький, созданный qemu-img.

MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

23

Cruiser78 пишет:

Дык я разве против? Вот только есть у нас в эксплуатации одна прикладная база данных. Сами догадываетсь какая. И в той базе корректно можно работать только в том случае, если у всех юзерей XP, максимум. Кодовая станица, однако... Без определенного шаманства - работу на разных осях с этой базой не совместить. Ну и более верхние оси - их покупать надо. А комплект ихпей был когда-то куплен и всё под ним прекрасно работает. Не трожь технику, она и не подведет...

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

24

Cruiser78 пишет:

А вообще-то неправильное решение поддержку XP в виртуалках выбросить. XP очень популярна. И именно в реальном секторе.

вы это мелкософту скажите - ну не хотят они больше ХР поддерживать