Импорт виртуальных машин Linux » История » Версия 4
  Dmitry Chernyak, 07.07.2016 01:10 
  
| 1 | 1 | Dmitry Chernyak | h1. Импорт виртуальных машин Linux | 
|---|---|---|---|
| 2 | 1 | Dmitry Chernyak | |
| 3 | 4 | Dmitry Chernyak | [[OVERVIEW]] | [[INSTALL]] | [[SETUP]] | [[OPERATIONS]] | [[LICENSE]] | 
| 4 | 4 | Dmitry Chernyak | [[ОБЗОР]] | [[УСТАНОВКА]] | [[НАСТРОЙКА]] | [[ОПЕРАЦИИ]] | [[ЛИЦЕНЗИЯ]] | 
| 5 | 4 | Dmitry Chernyak | |
| 6 | 1 | Dmitry Chernyak | <pre> | 
| 7 | 1 | Dmitry Chernyak | gnt-instance activate-disks megaplan | 
| 8 | 1 | Dmitry Chernyak | </pre> | 
| 9 | 2 | Dmitry Chernyak | |
| 10 | 1 | Dmitry Chernyak | Команда выведет имя диска | 
| 11 | 1 | Dmitry Chernyak | |
| 12 | 1 | Dmitry Chernyak | Залить raw-образ командой | 
| 13 | 1 | Dmitry Chernyak | |
| 14 | 1 | Dmitry Chernyak | <pre> | 
| 15 | 1 | Dmitry Chernyak | dd if=ОБРАЗ of=ДИСК bs=64k | 
| 16 | 1 | Dmitry Chernyak | </pre> | 
| 17 | 1 | Dmitry Chernyak | |
| 18 | 1 | Dmitry Chernyak | <pre> | 
| 19 | 1 | Dmitry Chernyak | gnt-instance deactivate-disks megaplan | 
| 20 | 1 | Dmitry Chernyak | </pre> | 
| 21 | 1 | Dmitry Chernyak | |
| 22 | 1 | Dmitry Chernyak | h2. Настроить виртуальную машину | 
| 23 | 1 | Dmitry Chernyak | |
| 24 | 1 | Dmitry Chernyak | При создании обычных виртуальных машин используется внутреннее ядро и загрузчик pygrub, | 
| 25 | 3 | Владимир Ипатов | настройки которого находятся в /boot/grub/menu.lst виртуальной машины. | 
| 26 | 1 | Dmitry Chernyak | |
| 27 | 1 | Dmitry Chernyak | <pre> | 
| 28 | 3 | Владимир Ипатов | Можно его создать: | 
| 29 | 3 | Владимир Ипатов | default 0 | 
| 30 | 3 | Владимир Ипатов | timeout 5 | 
| 31 | 3 | Владимир Ипатов | color cyan/blue white/blue | 
| 32 | 3 | Владимир Ипатов | |
| 33 | 3 | Владимир Ипатов | title Debian GNU/Linux, default kernel | 
| 34 | 3 | Владимир Ипатов | root (hd0,0) | 
| 35 | 3 | Владимир Ипатов | kernel /vmlinuz root=/dev/xvda1 ro | 
| 36 | 3 | Владимир Ипатов | initrd /initrd.img | 
| 37 | 3 | Владимир Ипатов | |
| 38 | 3 | Владимир Ипатов | title Debian GNU/Linux, default kernel (single-user mode) | 
| 39 | 3 | Владимир Ипатов | root (hd0,0) | 
| 40 | 3 | Владимир Ипатов | kernel /vmlinuz root=/dev/xvda1 ro single | 
| 41 | 3 | Владимир Ипатов | initrd /initrd.img | 
| 42 | 3 | Владимир Ипатов | </pre> | 
| 43 | 3 | Владимир Ипатов | |
| 44 | 3 | Владимир Ипатов | В данном случае в root= указан первый раздел первого диска. | 
| 45 | 3 | Владимир Ипатов | Однако, в поставляемых образах возможно рутовым разделом будет другой раздел, в этом случае надо подсчитать их и записать нужный. | 
| 46 | 3 | Владимир Ипатов | А в случае, если внутри образа есть LVM, нужно узнать имя vg и имя тома с рутовым разделом: | 
| 47 | 3 | Владимир Ипатов | <pre> | 
| 48 | 3 | Владимир Ипатов | gnt-instance activate-disks | 
| 49 | 3 | Владимир Ипатов | kpartx -av /dev/mapper/то-что-вывел-activate-disks | 
| 50 | 3 | Владимир Ипатов | vgscan | 
| 51 | 3 | Владимир Ипатов | vgchange -ay | 
| 52 | 3 | Владимир Ипатов | </pre> | 
| 53 | 3 | Владимир Ипатов | |
| 54 | 3 | Владимир Ипатов | После этого нужный нам vg будет доступен и мы сможем смонтировать его волюмы. | 
| 55 | 3 | Владимир Ипатов | После того, как нашли имя рутового раздела, вписываем его в root: | 
| 56 | 3 | Владимир Ипатов | kernel /vmlinuz root=/dev/mapper/имя--группы-имя--тома ro | 
| 57 | 3 | Владимир Ипатов | |
| 58 | 3 | Владимир Ипатов | |
| 59 | 3 | Владимир Ипатов | Если не хочется вмешиваться в полученный образ, то можно загрузить систему используя внешнее ядро. | 
| 60 | 3 | Владимир Ипатов | Для этого нужно узнать путь к рутовому разделу способом, описанным выше, затем, если требуется, скопировать ядро и инитрд из виртуальной машины и положить в /boot (например, если виртуальная машина заметно новее гипервизора) (также нужно затем скопировать ядро и инитрд на все ноды кластера командой gnt-cluster copyfile). | 
| 61 | 3 | Владимир Ипатов | |
| 62 | 3 | Владимир Ипатов | добавление аргумента ядра console=hvc0 может потребоваться, если ход загрузки не виден на xen консоли. | 
| 63 | 3 | Владимир Ипатов | |
| 64 | 3 | Владимир Ипатов | Дальше нужно задать настройки для инстанса: | 
| 65 | 3 | Владимир Ипатов | |
| 66 | 3 | Владимир Ипатов | <pre> | 
| 67 | 1 | Dmitry Chernyak | gnt-instance modify -H use_bootloader=false megaplan | 
| 68 | 1 | Dmitry Chernyak | gnt-instance modify -H initrd_path=/boot/initrd.img-3.2.0-33-generic megaplan | 
| 69 | 1 | Dmitry Chernyak | gnt-instance modify -H kernel_path=/boot/vmlinuz-3.2.0-33-generic megaplan | 
| 70 | 1 | Dmitry Chernyak | gnt-instance modify -H kernel_args='ro console=hvc0' megaplan | 
| 71 | 3 | Владимир Ипатов | gnt-instance modify -H root_path=/dev/mapper/megaplan--box-root megaplan | 
| 72 | 1 | Dmitry Chernyak | </pre> | 
| 73 | 1 | Dmitry Chernyak | |
| 74 | 1 | Dmitry Chernyak | h2. Запустить виртуальную машину | 
| 75 | 1 | Dmitry Chernyak | |
| 76 | 1 | Dmitry Chernyak | <pre> | 
| 77 | 1 | Dmitry Chernyak | gnt-instance startup megaplan | 
| 78 | 1 | Dmitry Chernyak | </pre> |