Перенос виртуальных машин с XenServer на Hyper-V. Перенос виртуальных машин с XenServer на Hyper-V Перенос виртуальной машины с xenserver на kvm

Привет друзья! Сегодня для любителей виртуальных машин Владимир приготовил просто потрясный материал!

Привет админ, скажи пожалуйста, как перенести виртуальную машину VirtualBox на обычный компьютер?

Несколько месяцев назад вышла Windows 10 и я побоялся устанавливать её непосредственно на свой компьютер, а установил на виртуальную машину, затем установил в операционную систему все нужные мне программы: браузеры, бесплатный OpenOffice, Skype и так далее, через некоторое время стал замечать, что десятая винда мне понравилась и у меня даже появилась мысль перенести её на обычный компьютер! Это возможно? В интернете такой информации не нашёл.

Как перенести виртуальную машину VirtualBox на обычный компьютер. Или как с помощью программы Vhd2disk перенести Windows 10 с виртуальной машины на стационарный ПК

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

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

Для переноса можно использовать пока ещё мало известную программу Vhd2disk - разработанную специально для переноса виртуальных операционных систем на физическое железо, или другими словами - для создания точной копии виртуального диска VHD на обычном жёстком диске .

Итак, имеем виртуальную машину VirtualBox с установленной на неё Windows 10.

Управление дисками

Диск 0 , это и есть виртуальный диск с установленной Windows 10 .

При создании виртуального диска я указал размер 250 Гб. На диске (C:) установлена операционная система, а на (E:) находятся различные файлы.

В первую очередь конвертируем виртуальный диск формата VDI , принадлежащей виртуальной машине, в формат VHD.

Файл -->Менеджер виртуальных носителей .

Выделяем левой мышью виртуальный диск VDI, принадлежащий операционной системе, которую хотим переносить на обычный компьютер и жмём на кнопку Копировать .

Отмечаем пункт VHD (Virtual Hard Disk) .

Next .

Отмечаем пункт Динамический виртуальный жёсткий диск .

Next .

Щёлкаем левой мышью на кнопке проводника.

Выбираем место сохранения будущей копии виртуального жёсткого диска, я выберу диск (G: ), так как нём много свободного места.

Копировать .

Происходит недолгий процесс преобразования виртуального жёсткого диска VDI в формат VHD.

По окончании процесса жмём на кнопку Закрыть .

На диске (G:) рядом с виртуальным жёстким диском VDI появилась его копия, только в формате VHD.

Управление дисками

Разворачивать копию виртуального диска нужно на полностью чистый физический жёсткий диск без разделов.

Открываем оснастку Управления дисками.

Я выберу Диск 1 .

Удаляю на нём все разделы.

Vhd2disk

Настало время программки Vhd2disk. Скачиваем её на официальном сайте:

https://docs.microsoft.com/en-us/sysinternals/downloads/disk2vhd


Запускаем программу. В главном окне щёлкаем левой мышью на кнопке проводника.

В открывшемся проводнике находим копию нашего виртуального диска VHD, выделяем его левой кнопкой мыши и жмём Open VHD .

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

В выпадающем списке выбираем PhysicalDrive1 , так как разворачивать содержимое виртуального диска VHD мы будем на Диск 1 .

Жмём на кнопку Vhd to disk .

Начинается процесс копирования содержимого виртуального жёсткого диска VHD на обычный жёсткий диск.

Процесс успешно завершён.

Status: VHD dumped on drive successfully! (VHD успешно скопирован на жёсткий диск!).

Заходим в Управление дисками, жмём Действие -->Обновить.

Как видим, жёсткий диск (Диск 1) представляет из себя точную копию виртуального жёсткого диска VHD с виртуальной машины и установленной Windows 10.

Пробуем загрузиться в Windows 10.

Перезагружаем компьютер и входим в меню загрузки, выбираем наш жёсткий диск (копию виртуального диска VHD с Windows 10).

Подготовка устройств

Windows 10 загружена!

Управление дисками.

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

Мне всегда нравился бесплатный гипервизор Xenserver, часто его использовал. Но недавно принял решение постепенно переходить на другой гипервизор. Какой именно — еще не решил окончательно. О причинах отказа от Xenserver и общих мыслях по поводу современных гипервизоров расскажу подробнее далее. В статье рассмотрю подробно вопрос переноса виртуальных машин с Xenserver на Hyper-v.

Если у вас есть желание научиться искать и эксплуатировать уязвимости в информационных сетях, рекомендую познакомиться с онлайн-курсом «Практикум по Kali Linux» в OTUS. Курс рассчитан на тех, у кого нет опыта в информационной безопасности, для поступления нужно пройти.

Статью изначально хотел написать на тему установки Xenserver 7 на mdadm raid1. Мне всегда нравился xen именно за возможность установить его на mdadm. Это позволяло использовать гипервизор на любом железе с двумя хардами, обеспечивая простую отказоустойчивость на уровне дисков. Это удобно и бюджетно. То же самое можно сделать на kvm, но лично мне у xen больше нравится оснастка управления в виде приложения для windows. В нее можно удобно подключать множество серверов и управлять всем из одного места. Как плюс, в сравнении с kvm, проще и быстрее установить и настроить в работу, передать кому-нибудь на управление.

Собственно, черновик статьи по установке Xenserver на софтовый рейд я подготовил и протестировал. На первый взгляд все работает. Проблемы начались, когда я стал проверять отказоустойчивость и отключать один хард. Как оказалось, xenserver не может нормально загрузиться, если рейд mdadm уходит в состояние degreaded. Я был очень расстроен этим фактом и потратил непрерывно почти сутки на то, чтобы разобраться с ситуацией и попробовать решить проблему. Но у меня это не получилось. И в интернете рецепта по решению проблемы тоже не нашел, но нашел подтверждение этой проблемы.

Похоже, XenServer с версии 7 больше не поддерживает работу на mdadm. Об этом даже упомянуто в официальном FAQ:

— Does XenServer support a software-based RAID implementation?
— No, XenServer does not support software RAID.

Я проверил на версии 7.0 и 7.1. Результат один и тот же — система не загружается, если рейд развалился. Причем в интернете есть статьи, где рассказано, как перенести чистую установку xen 7 на mdadm. Похоже эти люди просто не тестировали отказ одного из дисков. Пока это не проверишь, кажется, что все в порядке. Проблема тут в том, что Xenserver 7 перешел на CentOS 7. А там много нововведений, в частности systemd. Я точно не смог определить в чем же конкретно проблема. Есть какая-то не совместимость в модулях загрузки, ядре xenserver и версии mdadm. На CentOS 7 был похожий баг в момент выхода, но он был оперативно исправлен. А на XenServer разработчики на это забили, так как поддержку mdadm и не обещали. В итоге гипервизор остался без возможности установки на mdadm. Для меня это неприемлемо, так как mdadm активно использую. Если выходит из строя любой диск, система в момент загрузки бесконечно висит с сообщением:

A Start Job is running for dev-md0.device

У меня до сих пор есть много виртуальных машин под управлением CentOS 5. Особенность этой версии в том, что для нормальной работы на XenServer на систему устанавливалось специальное ядро kernel-xen. В итоге, при переносе системы на другой гипервизор, она отказывалась работать. Необходимо серьезно поработать напильником, чтобы завести ее. Мне важно было отработать этот момент, так как в работе придется постепенно уходить от Xenserver в сторону либо Hyper-V, либо KVM. Пока еще не решил окончательно, так как на KVM у меня так и не получилось завести виртуальные машины с xen, а вот на Hyper-V удалось. Об этом и расскажу.

Перенос виртуальной машины с xenserver на kvm

Сам перенос виртуальной машины представляет из себя простое копирование диска с одного гипервизора на другой. Для бэкапа Xenserver я использую бесплатную версию программы Alike Free . К сожалению, ее больше нет в бесплатной редакции. Разработчики закрыли бесплатный проект, есть только триальная версия от платной. Но у меня остался и дистрибутив, и ключи для бесплатной версии. Я продолжаю ее использовать. Простая и удобная программа, которая позволяет делать инкрементные бэкапы виртуальных машин. Она же умеет выгружать бэкапы в vhd формате. Все что надо сделать для переноса виртуалки — создать такую же машину на hyper-v и в качестве диска указать перенесенный vhd образ с xenserver. Но если после этого просто запустить виртуалку, вы получите ошибку.

Error 13: invalid or unsupported executable format

Ничего удивительного в этом нет, модифицированное ядро для xen работает только на самом гипервизоре. Для работы в другой среде необходимо установить стандартное ядро linux. Вот этим я и займусь далее. Задача оказалась очень непростой, пришлось много ковыряться в различных нюансах. В первую очередь, чтобы не забыть приобретенный опыт, я и пишу эту статью. Хотя понимаю, что мало кому пригодится подобный опыт. Вряд ли найдется много людей, кто будет переносить уже снятую с поддержки систему CentOS 5 с гипервизора Xen куда-то в другое место. По-хорошему, системы надо переставлять, и я этим постепенно займусь. Но все равно необходимо иметь под рукой готовую инструкцию на случай всяких неожиданностей.

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

Восстановление загрузки linux сервера

Для того, чтобы виртуальная машина заработала на hyper-v, как я уже сказал, необходимо установить стандартное ядро. Для этого загружаемся в виртуальной машине с загрузочного диска CentOS 7 и выбираем режим .

Чтобы выбрать этот раздел, необходимо в главном меню выбрать Troubleshooting . Дожидаемся загрузки и выбираем первый предложенный вариант.

Сразу чрутимся в нашу восстанавливаемую систему. Первым делом надо обновить систему и установить стандартное ядро. Скорее всего через yum у вас ничего не получится, так как ссылки на репозитории centos 5 стали неактивны, после того, как 31-го марта закончилась поддержка системы. Необходимо изменить файл /etc/yum.repos.d/CentOS-Base.repo , отредактировав пути соответствующих разделов на следующие:

Baseurl=http://vault.centos.org/5.11/os updates /$basearch/ baseurl=http://vault.centos.org/5.11/addons /$basearch/ baseurl=http://vault.centos.org/5.11/extras /$basearch/ baseurl=http://vault.centos.org/5.11/centosplus /$basearch/ baseurl=http://vault.centos.org/5.11/contrib /$basearch/

Все строки с mirrorlist надо закомментировать, а baseurl изменить на указанные. После этого надо и запустить обновление системы.

# yum clean all # yum update

Теперь установим стандартное ядро linux, а от xen удалим.

# yum remove kernel-xen # yum install kernel

Теперь проверяем версию имеющихся библиотек ядра в системе.

# ls -l /lib/modules/

Берем самую свежу версию и собираем образ initrd.

# mkinitrd -v -f /boot/initrd-2.6.18-419.el5.img 2.6.18-419.el5

Редактируем конфиг загрузчика /boot/grub/grub.conf , чтобы он выбрал при загрузке именно эту версию ядра.

Параметр default=1 соответствует второй строке меню, так как отсчет идет от 0. То есть как раз будет выбрано нужное обновленное ядро. Обновляем загрузчик на диске.

# grub-install /dev/sda

Если получите ошибку:

/dev/sda does not have any corresponding BIOS drive.

Используйте такую команду:

# grub-install --recheck /dev/sda

По идее, на этом можно было бы и завершить. Мы фактически выполнили полное восстановление поломанной загрузки linux сервера. Но так как речь идет о xenserver, есть еще один нюанс. Если сейчас попробовать загрузить виртуальную машину, то все пройдет гладко почти до самого конца загрузки, а потом вылезет ошибка.

Init: Id ‘co’ respawning too fast: disabled for 5 minutes

Она будет висеть бесконечно. Связана с доступом к консоли виртуальной машины на xenserver. В другом окружении, параметр должен быть изменен. Чтобы исправить ошибку, надо отредактировать файл /etc/inittab . Найти в нем строку

Co:123457:respawn:/sbin/agetty xvc0 9600 vt100-nav

Закомментировать ее, а вместо нее снять комментарий со строки

1:123457:respawn:/sbin/mingetty tty1

Теперь можно перезагружать виртуалку. Она должна благополучно загрузиться. По крайней мере у меня было так.

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

И дальше ничего не происходит. Никаких ошибок при этом нет. У меня даже нет идей из-за чего это может быть и в каком направлении двигаться, чтобы запустить виртуалку. Если у кого-то есть идеи как это сделать, прошу совета. Мне бы очень хотелось перенести виртуальные машины с centos 5 на kvm. Я пробовал переносить уже восстановленные виртуалки с hyper-v на kvm, конвертировал диск с vhd в qсow2, но все без результата. Они все равно зависают точно так же, как если бы я их переносил напрямую с xenserver.

Заключение

Перенос виртуальных машин хорошо работает в рамках одного гипервизора. В случае, если переносите с одного на другой, с большой долей вероятности получите некоторые проблемы. Я с этим частенько сталкиваюсь, особенно с linux и freebsd. Чаще всего начинаются проблемы с дисками и загрузчиком. То буквы дисков поменяются, приходится править fstab, то загрузчик не стартует. Иногда сеть может не работать. Везде приходится по месту разбираться и решать возникающие проблемы.

Практикум по Kali Linux

Курс для тех, кто интересуется проведением тестов на проникновение и хочет практически попробовать себя в ситуациях, близких к реальным. Курс рассчитан на тех, у кого еще нет опыта в информационной безопасности. Обучение длится 3 месяца по 4 часа в неделю. Что даст вам этот курс:
  • Искать и эксплуатировать уязвимости или изъяны конфигурации в корпоративных сетях, web сайтах, серверах. Упор на пентест ОС Windows и на безопасность корпоративного сегмента.
  • Изучение таких инструментов, как metasploit, sqlmap, wireshark, burp suite и многие другие.
  • Освоение инструментария Kali Linux на практике - с ним должен быть знаком любой специалист по ИБ.
Проверьте себя на вступительном тесте и смотрите подробнее программу по.

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

Большинство программ виртуализации поддерживают функцию преобразования установленной ОС Windows в образы виртуальной машины. Некоторые решения уже поставляются со встроенными функциями, но в ряде случаев для этой же цели может понадобится использование сторонних продуктов.

В этом руководстве собраны инструкции по преобразованию установок Windows в виртуальные образы Microsoft Hyper-V, VirtualBox и VMware.

Перенос ОС Windows в виртуальную машину Microsoft Hyper-V выполняется очень просто благодаря программе Disk2vhd от Sysinternals.

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

Примечание : программу можно запустить в режиме командной строки, используя формат:

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

Пользователь должен выбрать целевой путь и имя файла (с расширением vhdx), а также тома, которые следует включить в виртуальный образ.

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

Disk2VHD поставляется с двумя дополнительными параметрами, которые указываются при запуске. Первый устанавливает выходной формат VHDX. Вы можете отключить данный параметр, чтобы использовать VHD.

VHDX имеет несколько преимуществ, такие как поддержка более крупных виртуальных дисков (64 ТБ против 2 ТБ), лучшая защита от повреждений, дистанционное онлайн изменение размера и др. VHD необходим в основном для целей совместимости, например, когда продукт не поддерживает VHDX, а также когда вы хотите преобразовать образ в Virtualbox.

Второй параметр позволяет использовать теневую копию тома.

Disk2VHD обрабатывает выбранные тома и превращает их в образы виртуальных дисков, которые сохраняются в выбранном месте.

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

  1. Нажмите на клавишу Windows , введите cmd.exe , зажмите Ctrl + Shift и нажмите клавишу Enter , чтобы запустить командную строку с правами администратора.
  2. Перейдите в папку VirtualBox в системе, например, C:\Program Files\Oracle\VirtualBox с помощью команды cd .
  3. Используйте команду vboxmanage clonemedium disk , чтобы преобразовать образ диска VHD в формат VDI. Например: vboxmanage clonemedium disk o:\source.vhd o:\output.vdi

Преобразование может занять некоторое время в зависимости от размера изображения и доступных ресурсов вашего компьютера.

Вы можете создавать виртуальные образы машин Windows для VMware с помощью VMware vCenter Converter. Вы можете загрузить программу с официального сайта VMware , но для этого требуется учетная запись. На нашем сайте утилита доступна для загрузки без регистрации.

Примечание : Программа создает виртуальный образ полной машины. В графическом интерфейсе нет возможности исключить жесткие диски или разделы.

Размер установщика равен примерно 170 мегабайт. Во время установки вам будет предложено присоединиться к программе улучшения качества обслуживания клиентов.

Чтобы преобразовать запущенную систему Windows в виртуальный образ для VMware, выберите опцию “Конвертировать машину” в главном интерфейсе программы, чтобы начать работу.

После загрузки мастера, убедитесь, что для типа источника установлено значение “включено” и выбран “этот локальный компьютер”. Вы также можете создавать виртуальные образы удаленных компьютеров, но для этого необходимо указать имя или IP-адрес устройства, а также учетные данные.

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

Создание образа может занять некоторое время, в зависимости от количества томов, их размеров и ресурсов устройства.