Kebanyakan orang berpikir tentang Virtual Machine adalah virtualisasi hardware atau Hardware Virtualized Machine (HVM), di mana VM guest terisolasi dalam sebuah container. Pada mode HVM Xen Hypervisor ini yang juga dikenal sebagai Dom0 – tidak memiliki akses pada VM guest didalamnya yang juga dikenal sebagai Domu.
Paravirtualization (PV) berbeda dari HVM dalam menyediakan hubungan khusus untuk berbagi informasi antara VM Guest dan Host hypervisor. Dengan PV, Dom0 (XenServer) berbagi sumber daya dengan Domu (VM) dengan cara yang lebih baik.
XenServer tidak mendukung mode Ubuntu 12.04 untuk dijalankan dengan mode Paravirtualization (PV) secara default. Walaupun Ubuntu 12.04 tetap bisa dijalankan dengan mode HVM di Xenserver, namun Xentools tidak akan mampu berjalan maksimal pada mode ini.
Untuk itu kita perlu mengubah Ubuntu12.04 dapat dijalankan dengan mode PV pada XenServer.
Step 1 . Install Ubuntu 12.04 dengan mode HVM
Pertama sekali kita install Ubuntu 12.04 dengan mode HVM, pada saat instalasi anda dapat memisahkan partisi /boot dengan /root. Untuk partisi /boot buatkan tipe partisinya Linux ext3 dan untuk /root buat tipenya Linux ext4. Jika anda hanya menggunakan satu partisi / saja, maka tipe partisinya harus di set ke ext3. Alasannya karena pygrub, boot loadernya xenserver untuk mode PV belum support ext4.
Setelah selesai install pastikan ip address ubuntu telah diset dengan baik, dan juga openssh server terinstall, karena setelah mode PV console untuk Ubuntu12.04 yang ada di Xenserver ada kemungkinan tidak dapat diakses, sehingga koneksi ke VM dapat dilakukan dengan ssh client (putty jika pake windows).
Step 2 Buat console baru dengan nama hvc0
Kita buatkan console baru yang akan digunakan oleh XenServer, yaitu console hvc0 dengan meng-copy file tty1.conf
sudo cp /etc/init/tty1.conf /etc/init/hvc0.conf
Kemudian edit file /etc/init/hvc0.conf, pada baris terakhir gantikan tty1 dengan hvc0
exec /sbin/getty -8 38400 tty1 diubah menjadi exec /sbin/getty -8 38400 hvc0
Step 3 Kumpulkan informasi dari grub.cfg
Sekarang kita lihat informasi yang ada di grub.cfg-nya Ubuntu 12.04 dengan perintah
vi /boot/grub/grub.cfg
menuentry 'Ubuntu, with Linux 3.2.0-23-generic-pae' --class ubuntu --class gnu-linux --class gnu --class os { recordfail
gfxmode
$linux_gfx_mode
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set=root f7489e9f-90b8-4e6b-a4d6-31076cd79fe0
linux /boot/vmlinuz-3.2.0-23-generic-pae root=UUID=f7489e9f-90b8-4e6b-a4d6-31076cd79fe0 ro nosplash debug --verbose
initrd /boot/initrd.img-3.2.0-23-generic-pae
}
Dari tampilan konfigurasi boot.cfg yang perlu dicatat adalah parameter kernel yang di-boot oleh bootloader dan UUID partisi rootnya. Pada konfigurasi diatas ditampilkan seperti ini,
linux /boot/vmlinuz-3.2.0-23-generic-pae root=UUID=f7489e9f-90b8-4e6b-a4d6-31076cd79fe0
Step 4 Konfigurasi XenServer
Setelah tahapan persiapan sudah kita lakukan, sekarang kita akan masuk ke konsole Citrix Xenserver untuk mengubah mode HVM Ubuntu 12.04 menjadi mode PV.
xe vm-list
Untu menampilkan daftar virtual machine yang ada di xenserver berikut UUID -nya.
uuid ( RO) : ac2330ce-4418-b29d-2c49-b1fca124dcd9
name-label ( RW): Ubuntu12.04
power-state ( RO): halted
Kita akan mengubah VM menjadi mode PV, gantikan <UUID> dengan UUID VM yang dihasilkan pada perintah xe vm-list
xe vm-param-set uuid=<UUID> HVM-boot-policy=
xe vm-param-set uuid=<UUID> PV-bootloader=pygrub
Sekarang kita lihat hard disk milik VM,
xe vm-disk-list uuid=<UUID>
Tampilannya kira-kira seperti dibawah ini.
Disk 0 VBD:
uuid ( RO) : 0d1aeff1-3f23-0760-36b2-4b9480400a5a
vm-name-label ( RO): Ubuntu12.04
userdevice ( RW): 0
Berikan flag bootable pada pada disk VBD
xe vbd-param-set uuid=<VBD-UUID> bootable=true
Masukkan parameter kernel dan ramdisk pada boot loader, parameter kernel dan ramdisk ini diambil dari konfigurasi boot.cfg diatas.
xe vm-param-set uuid=<UUID> PV-bootloader-args="--kernel=/boot/vmlinuz-3.2.0-23-generic-pae --ramdisk=/boot/initrd.img-3.2.0-23-generic-pae"
Parameter –kernel=/boot/vmlinuz-3.2.0-23-generic-pae diambil dari parameter kernel dari grub.cfg dan parameter –ramdisk=/boot/initrd.img-3.2.0-23-generic-pae diambil dari parameter initrd dari grub.cfg
xe vm-param-set uuid=<UUID> PV-args=" root=UUID=f7489e9f-90b8-4e6b-a4d6-31076cd79fe0 ro nosplash debug console=hvc0 xencons=hvc0"
Parameter root=UUID=f7489e9f-90b8-4e6b-a4d6-31076cd79fe0 juga diambil dari parameter root=UUID yang ada di konfigurasi grub.cfg
Semuanya telah diset, sekarang start VM.
xe vm-start uuid=<UUID>
Install xen-tools di VM yang sudah kita start, kemudian kita kan melihat bahwa xenserver sekarang sudah memiliki akses yang lebih baik terhadap VM.
Informasi yang ditampilkan XenCenter lebih lengkap jika xentools diinstall dengan baik. Xentools hanya jalan dengan baik pada VM dengan PV mode.
Troubleshooting
Jika step-step diatas tidak berhasil, kita hanya perlu mengembalikan VM ke HVM mode dengan perintah :
xe vm-param-set uuid=<UUID> HVM-boot-policy="BIOS order"
Untuk kembali ke HVM mode ketikkan perintah berikut ini.
xe vm-param-set uuid=<UUID> HVM-boot-policy="BIOS order"
Tidak ada komentar:
Posting Komentar