Случилось так что не было под рукой виндовой машины с установленым на борту XenCenter, который как известно запускается только на поделии ребят из Редмонда.
А у меня на одном таком сервере виртуализируется один хост, который по сети ни как не должен быть доступен, кроме как через консоль – для пущей секьюрности. Надо было срочно данных с него выгрузить, а никак не достучаться.
Погоревал я немного, затем зашел на XenServer по ssh, посмотрел список юзаемых портов и узрел:
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:5900 0.0.0.0:* LISTEN 5394/vncterm
tcp 0 0 127.0.0.1:5901 0.0.0.0:* LISTEN 21607/qemu.4
tcp 0 0 127.0.0.1:5902 0.0.0.0:* LISTEN 30538/qemu.14
Осталось только подключиться к этому серверу VNC который на localhost живет, и видимо он же и занимается подачей картинки в XenCenter.
Подключался используя ssh-туннель:
ssh -f -L 127.0.0.1:9999:127.0.0.1:5902 user@192.168.0.1
(не работает в последних версиях ssh, тогда можно без -f и пока вы залогинены туннель будет)
Где:
127.0.0.1:9999 – биндю локальный порт
127.0.0.1:5902 – говорю куда пробрасываем локальный порт 9999
user@192.168.0.1 – XenServer
А затем подключаюсь стандартным линуксовым vncviewer:
vncviewer 127.0.0.1:9999
XenServer по умолчанию не имеет возможности подключить внешний HDD (например IDE) к виртуальной машине с сохранением данных. Авторами XenServer предполагается что подключая дополнительный жесткий диск вы будете инициализировать его посредством LVM, а в виртуальных машинах использовать виртуальные диски находящиеся в хранилище.
Мне же потребовалось добавить жесткий диск что бы использовать данные с него в виртуальной машине:
1. Добавляем в /etc/udev/rules.d/50-udev.rules:
ACTION=="add", KERNEL=="hda", SYMLINK+="xapi/block/%k", RUN+="/bin/sh -c '/opt/xensource/libexec/local-device-change %k 2>&1 >/dev/null&'"
ACTION=="remove", KERNEL=="hda", RUN+="/bin/sh -c '/opt/xensource/libexec/local-device-change %k 2>&1 >/dev/null&'"
Немного поясню:
KERNEL==”hda” – hda это мой жесткий диск на интерфейсе IDE который я подключаю (узнать как видится ваш можно просмотрев вывод dmesg)
ACTION – действие, при подключении и отключении устройства.
xapi/block – структура каталогов в /dev в которых XenServer ищет сменные устройства.
2. Перезагружаем и входим в XenCenter, там добавляем как Removable Storage к необходимой виртуальной машине.
Столкнулся после установки VMWare на дистрибутиве Fedora 10 с проблемой – в гостевых машинах клавиатура работала совсем не так как надо. Нажимал кнопку Up – срабатывало как Alt+F2 и тому подобные неприятные вещи.
Проблема решилась добавлением в /etc/vmware/config строчки:
xkeymap.nokeycodeMap = true
или эту же строчку можно добавить в ~/.vmware/config
Успехов!
После установки свежего ядра Linux 2.6.29 перестала заводиться VMWare – все падало на этапе сборки модулей. Немного погуглив проблема была решена:
Качаем неофициальный патч: http://rootfox.com/downloads/vmware-modules-2.6.29.patch
Кладем его в /usr/lib/vmware/modules/source/
Там же распаковываем все присутствующие tar-архивы.
Применяем патч: “patch -p1 -i vmware-modules-2.6.29.patch”
Запаковываем все, что бы выглядело как было:
“tar -cf vmblock.tar vmblock-only/
tar -cf vmci.tar vmci-only/
tar -cf vmmon.tar vmmon-only/
tar -cf vmnet.tar vmnet-only/
tar -cf vsock.tar vsock-only/
tar -cf vmppuser.tar vmppuser-only/“
Задался тут вопросом как мне диск вирутальной машины VMware Desctop перенести на другой сервер, который выполняет роль сервера виртуализации под управлением XenServer 5.
Шаг 1, конвертирую в raw-формат:
qemu-img convert -f vmdk FreeBSD.vmdk -O raw fbsdxen.img
Копирую на NFS-шару подмонтированую XenServer-ом
Захожу на XenServer по ssh и перехожу в директорию, в которую подмонтирована шара.
Шаг 2, импортирую в хранилище (виртуальная машина была предварительно создана, вместе с диском такого же размера как и импортируемый).
xe vdi-import uuid=096516f3-1763-4638-aa92-a362b76a46ad filename=fbsdxen.img
uuid ищется командой:
xe vdi-list
Выйдет мног буков, среди которых ищем знакомые нам (смотрим в XenCenter)
С FreeBSD это прокатило, только fsck пришлось в single-моде запустить. Думаю как перегнать туда и Windows 08.
Если нужно мигрировать физическую машину в виртуальную в VMWare, то на помощь прийдет утилита VMWare Converter, которая попросту снимет физическую машину в образ, примерно как это делает ghost.
Но возможна и обратная ситуация, когда виртуальный сервер необходимо сделать физическим.
Способ который я изложу ниже универсальный и подходит для любых виртуальных и любых физических машин.
Read the rest of this entry »
Возникла необходимость сконвертировать виртуальный жесткий диск из формата VirtualBox в формат VMware для переноса виртуальной машины в другую систему виртуализации.
1. Удалить дополнения Vbox в гостевой виртуальной машине
2. Сконвертировать.
Я использовал qemu-img из поставки Open-Source системы виртуализации QEMU и утилиту входящуюю в поставку VirtualBox – vboxmanage.
Пример конвертирования из формата VirtualBox в VMware:
vboxmanage internalcommands converttoraw xpsp2.vdi xpsp2.raw
qemu-img convert -f raw xpsp2.raw -O vmdk xpsp2.vmdk
VMware Workstation 6.5 успешно подхватила данный образ.