Стоит задача - мигрировать виртуалку из VB в Proxmox, в его KVMную часть. Proxmox достаточно удобен в работе, но есть ряд подводных камней, зная которые работать станет легче. Итак по порядку:
Первым делом необходимо зайти на VB и посмотреть какой диск использовался для хранения. Если динамический, то надо сделать его копию в статический vdi (я использую этот формат). Это можно сделать либо в графической морде VB, либо в командной строке:
VBoxManage clonehd dynamic.vdi static.vdi --format VDI --variant Fixed
Пункт 2. Подцепить новый диск, назовем его static.vdi, вместо динамического и удалить в Windows все VB Addonsы.
Пункт 3. Отцепить образ и скопировать по ssh на машину с proxmox, к примеру в домашнюю папку . На этом работа со старым сервером завершена.
Пункт 4. Для успешной работы Windows необходимо иметь в наличии дрова для KVM. Поэтому цепляемся по ssh к серверу proxmox. Переходим в хранилище local и заливаем туда iso образ с virtio драйверами:
cd /var/lib/vz/template/iso
wget http://alt.fedoraproject.org/pub/alt/virtio-win/latest/images/bin/virtio-win-0.1-74.iso
Пункт 5. Создадим хранилище для нашей машины. На каждую машину лучше создавать свое хранилище. Иначе при резервировании Proxmox будет бекапить образы всех машин. Хранилище по умолчанию у proxmox - local и находится в /var/lib/vz/ . Создадим хранилище monstr_storage для нашей машины. В веб-морде выбираем корень Datacenter (в русском интерфейсе Датацентр) → закладка Хранилище → Добавить → далее заполняем :
ID: monstr_storage
Директория: /var/lib/vz/monstr_storage/
Содержимое: выбрать все (просто кликайте мышкой по выпавшему списку).
У нас должно появиться в дереве хранилище monstr_storage.
Пункт 6. Создать машину (в правом углу кнопка Создать VM) с параметрами:
Имя: monstr
OS: нужная нам винда (в моем случае 2008)
CD/DVD: Хранилище local, образ virtio-win-0.1-74.iso
Жесткий диск: IDE (именно IDE !!!!) , Хранилище monstr_storage, размер больше static.vdi.
CPU: определитесь сами по загрузке и свободным ресурсам :), тип qcow2.
Память: рекомендую использовать Automatically allocate memory within this range и указать там от 1024 (или что вам надо) до 4096 (предположительный максимум). Это сэкономит ресурсы системы.
Пункт 7. Перейти в терминале в хранилище :
cd /var/lib/vz/monstr_storage/images/<ID Nomer(к примеру 101) >/
и там выполнить
ls
Покажется файл с образом для машины - vm-101-disk-1.qcow2 . 101 — это номер вашей машины, а 1 это номер диска. Его и надо подменить на наш файл. Для этого ВНИМАТЕЛЬНО ЗАПОМИНАЕМ (ЗАПИСЫВАЕМ, ВЫСЕКАЕМ НА СКАЛЕ и т. д.) имя файла. Далее удаляем его и на его место конвертим наш vdi файлик.
-
rm vm-101-disk-1.qcow2
qemu-img convert -f vdi static.vdi -O qcow2 vm-101-disk-1.qcow2
-
Далее перекур, кофе-брейк или что вы любите. Это не быстро.
Пункт 8. После конвертации машина готова к запуску. Есть варианты сразу имплантировать драйвера VirtIO, путем запуска с образа Hiren's boot cd. Коллега Никита Менькович, aka librarian очень хорошо это описал в своей статье «Перенос виртуальной машины из Virtualbox в KVM». Я обхожусь без этого.
Открываем консоль и запускаем. Во время первого запуска машинка возмутившись адаптируется к новым девайсам. Именно по этому для первого старта нужен IDE !!!
Пункт 9. Адаптируем машину к KVM. Завершаем работу винды. Создаем 2й диск размера 2гига типа VIRTIO. Для этого достаточно выбрать в дереве нашу машину — monstr, перейти на вкладку Оборудование и нажать Добавить.
Пунт 10. Запускаем машну. На вопросы где взять драйвера указываем на CD с папкой версии винды. У меня Win7 для 2008. Если диск виден в управлении носителями — все ОК. Добиваем дрова сетевухи и прочее. Помните, что ИП-адрес если у вас был статический — уплывет. Верните его на новой сетевухе. А старую найдите в списке устройств (скрытые устройства) и удалите.
Пункт 11. Гасим машину и проделываем виртуозную операцию по переходу с IDE на VIRTIO. Удаляем 2й диск. Для этого встав на маленький диск в Оборудовании нажимаем кнопку удалить. Диск просто так не удалится — он обретет статус «Неиспользуемый диск». Встаем на него и еще раз жмем Удалить. Все, диска нет.
-- Теперь надо перевести основной диск в «Неиспользуемый диск». Встать на основной диск и нажать удалить. НЕ УДАЛЯЙТЕ ЕГО ЕЩЕ РАЗ !!!!!!
-- Дважды кликаем по «Неиспользуемый диск» и выбираем тип VIRTIO номер 0. Он получил обратно статус «Жесткий диск».
-- Переходим на закладку Опции. Щелкаем по «приоритет загрузки». Ставим первым virtio0
Пункт 12. Запускаем машину.
Вроде все. Если чего забыл простите... :)
Комментарии
Спасибо, что заметили!
Должно же быть просто "vdi"
Странно но яндекс возвращает письмо.
Виртуалка зависает на черном экране
Алексей, буду рад вам помочь. Пишите на мыло, стучитесь в скайп, звоните на телефон.
Все контакты на сайте есть.
RSS лента комментариев этой записи