Migrace z Xenu na KVM

Z Wiki UnArt Slavičín
Skočit na navigaciSkočit na vyhledávání
  • Pomocí příkazu scp si překopírujeme obraz odpojeného virtuálu ze serveru s Xenem do server s KVM (pokud vám neběží jako nám na stejné mašině).
scp root@kraken.slfree.czf:/store/xen/domains/vpn/disk.img /store/disk.img
  • Nyní si na vytvoříme na KVM nový virtuál, kterému přiřadíme nový prázdný VIRTIO disk o velikosti malinko větší než je velikost zkopírovaného obrazu (+ ještě něco pro swap). Dále mu pak přidáme IDE disk, což bude samotný zkopírovaný obraz. Nakonec je ještě potřeba tomuto virtuálu nastavit bootování z CD-ROM, kterému jako obraz dáme některou LiveCD distribuci (já použil Ubuntu 10.10). Je vhodné si nastavit síť pro přístup do Internetu.
  • Po nabootování virtuálu do LiveCD spustíme terminál a přihlasíme se jako root (v Ubuntu otevřít gnome-terminal a napsat sudo -s).
  • Pomocí programů gparted nebo fdisk na VIRTIO disku vytvoříme novou tabulku oddílu a poté vytvoříme 2 oddíly - jeden malý pro boot (já dal 236MB ext2, nezapomenout nastavit příznak pro bootování!) a druhý nezformátovaný pro LVM.
  • Doinstalujeme lvm, vytvoříme výchozí VG a LV pro systém a swap.
apt-get install lvm2
pvcreate /dev/vda2
vgcreate rootg /dev/vda2
lvcreate -L velikost pro root -n root rootvg
lvcreate -L velikost pro swap -n swap rootvg
  • Vytvoříme swap.
mkswap -f /dev/mapper/rootvg-swap
  • Překopírujeme obraz původní virtuálu:
dd if=/dev/sda of=/dev/mapper/rootvg-root
  • Zvětšíme souborový systém do konce oddílu:
resize2fs /dev/mapper/rootvg-root
  • Připojíme si oddíly a do systému se chrootnume:
mount /dev/mapper/rootvg-root /mnt
mount /dev/vda1 /mnt/boot
mount -t proc none /mnt/proc
mount -t sysfs none /mnt/sys
mount -o bind /dev /mnt/dev
chroot /mnt /bin/bash
  • Doinstalujeme lvm, jádro a grub2.
apt-get install lvm2 linux-image-2.6.26-2-amd64 grub2
  • Pouze pro Debian Lenny: Právě tady nastává u lennyho problém. Možná se vám stalo, že se vám jádro nepodařilo zkonfigurovat. Na vině je bug v dmsetupu. Opravíme ho následujícím způsobem:
rm /dev/mapper/rootvg-root
cp -R /dev/dm-0 /dev/mapper/rootvg-root