poniedziałek, 6 sierpnia 2012

Konwersja maszyny wirtualnej HVM na PVM w Citrix XenServer

This post is available only in polish language.
Jeśli posiadamy uruchomione na serwerze wirtualne maszyny korzystające ze sprzętowej wirtualizacji, może zajść potrzeba ich konwersji na wersję parawirtualizowaną. Np. w celu przeniesienia ich na serwer nie posiadający wsparcia dla sprzętowej wirtualizacji. Poniżej opis jak to zrobić dla Citrixa XenServer w wersji 6 (przynajmniej na takiej testowałem)


1. znajdujemy uid maszyny do konwersji
          xe vm-list name-label=<nazwa>

2. edytujemy bootloader partycji z poziomu Dom0
          xe-edit-bootloader -u <uuid> -p <numer partycji np=1>
  lub z poziomu systemu
          vi /boot/grub/grub.conf

3. tworzymy wpis z jądrem linuxa przygotowanym pod xena (należy najpierw zainstalować odpowiedni pakiet) i ustawiamy parametr "default" na ten wpis
     title Xen Kernel
     root    (hd0,0)
     kernel  /boot/vmlinuz-2.6.24-19-xen ro root=LABEL=/ quiet splash
     initrd  /boot/initrd.img-2.6.24-19-xen
     quiet

4. wykonujemy następujące polecenia z poziomu Dom0
     xe vm-param-set uuid=<uuid> HVM-boot-policy=
     xe vm-param-set uuid=<uuid> PV-bootloader=pygrub
     xe vm-param-set uuid=<uuid> PV-args="console=hvc0"

5. ustawiamy dysk maszyny wirtualnej jako botowalny
     xe vm-disk-list uuid=<uuid>
     xe vbd-param-set uuid=<vbd uuid> bootable=true

6. odinstalowujemy "zwykły" kernel - w moim przypadku po aktualizacji był on ustawiany jako domyślny, system nie startował i trzeba było edytować parametry gruba (jak w pkt.2)

To właściwie wszytko co mi było potrzebne, żeby zmienić tryb wirtualizacji dla moich maszyn Linuxowych. W przypadku problemów więcej informacji można znaleźć pod poniższymi adresami: