28.05.2009

SLES 11 uzerinde Xen Sanallastirmasi I


Daha once de anlattigim gibi, bu aralar tamamen XEN ile sanallastirmaya takmis durumdayim.Simdi sanallastirma icin sectigim donanimdan baslayarak her adimi teker teker yazarak, XEN ile sanallastirma ornegimin ilkine baslamak istiyorum.

Donanim:

Dell PowerEdge R300 / Uzerinde RAID I yapilmis 2 SATA disk ve 2 GB Ram mevcut

Isletim sistemi:

Suse Linux Enterprise Server 11 x86_64

Guest Isletim sistemi:

Red Hat Linux Enterprise Server 5.3 x86_64

Oncelikle SLES 11 isletim sistemini donanim uzerine kurarkan "Virtualization Host" olarak seciyoruz. Cunku bu makinayi sanallastirmaya tam olarak adayacagimizi dusunuyorum. Kurulum sonuclandiktan sonra, ilk yapilacak is,
Sistemi XEN destegi ile acmak olacak:
Bunun icin ya grub menusunden XEN'i sececegiz ya da /boot/grub/menu.lst dosyasindan default boot loader olarak XEN destekli isletim sistemini gosterecegiz. Ikinci yolu secersek, makinayi ayarlarin etkin olmasi icin yeniden baslatmamiz gerekiyor.

Simdi geldigimiz adim su:
Elimizde Virtualization Host olarak DELL R300 uzerine kurulmus bir SLES 11x86_64 isletim sistemimiz ve XEN detsegi verilmis aktif calisan bir kernel'imiz var.

Bundan sonra yapacagimiz isleri su sekilde listeyelebilirim:
# cd /var/lib/xen/images // Burasi XEN sisteminin disk olarak kullanacagi dosyalarin durdugu -yani Guest sistemlerin harddisklerinin- klasoru. Bu klasoru isletim sisteminden ayirip LVM yapmak faydali olabilir gibi geliyor

# dd if=/dev/zero of=rhel5.3-x86_64.img bs=1k seek=8192k count=1 // ile 8 gblik bir dosya, ya da baska bir degisle: 8 GB'lik bir disk olusturuyoruz.

Opsiyonel olmakla birlikte:

# dd if=/dev/zero of=rhel5.3-x86_64.img bs=1k count=1 conv=notrunc

Ardindan "
/etc/xen/examples" klasoru altinda ornek xen konfigurasyonlari var, burdan bir dosya alip, bu dosyayi /etc/xen/vm altina rhel53.hvm adiyla kopyaliyoruz.XEN konfigurasyonlari direkt burdan okuyormus. (Yedeklenecek yerlerden biri daha :))

Simdi bu dosyayi edit etmeye basliyoruz.

# vi
/etc/xen/vm/rhel53.hvm

Ilk olarak disk = [ satirina gidiyoruz ve bu satiri:

disk = [ 'file:/var/lib/xen/images/
rhel5.3-x86_64.img,ioemu:hda,w', 'file:/iso/rhel5.3.x86_64.iso,hdc:cdrom,r' ]
sekline getiriyoruz. Burada XEN'e Redhat 5.3 u acarken ve kullandirirken hangi diski kullanacagini soylemis olduk.
Ardindan
memory = 512 (Megabyte cinsinden yaziyoruz)

Son olarak
sdl=1
ve
vnc=0 yapiyoruz.
Dosyayi kaydedip ciktiktan sonra

# xm mem-set 0 512

Son adimiza geldik :
# cd /etc/xen/vm
# xm create
rhel53 komutu ile makinayi calistiriyoruz.

Bu kadar... Karsimiza kurulum ekrani cikiyor.

Simdi gelelim sorun yasadigim ve sizlerin de sorun yasayabileceginizi dusundugum ince noktalara:

1.
# xm mem-set 0 512
komutu ile bellegi ayirirken bir hata alabilirsiniz -ki ben aldim-. Bu hata size
sisteminizin Fully Virtualization icin uygun olmadigini Para-virtualization'u kullanmaniz gerektigini soyleyebilir. Bu durumda yapilacak sey basit. Makinaya reboot verip. BIOS'tan CPU'da sanallastirma destegini acmamiz gerekiyor.
2. Kurulumun son asamasinda cikan sanal makina ekreni acilmayabilir. Ben ssh ile baska bir makinadan gelerek sorunu cozdum:
$ ssh -X -l {root} {sanallastirma_hostu} // /etc/sshd/sshd_config icinde PermitRootLogin yes yapilmali
bu durumda karsi makinadaki X session'u benim onumdeki makinada acildi ve kurulumua boyle devam ettim.
3. Kurulum ekrani oncesi VMBios sayip kaybolabilir. Bu da Guest sistemin bootable device bulamadigi anlamina gelir. Bunun icin tusuna basip boot device olarak cdrom sectiginizde sorun cozuluyor.
4. Eger elimizdeki CD ve DVD'nin isosunu cikamayi bilmiyorsak hatirlatalim:
# dd if=/dev/cdrom of=
/iso/rhel5.3.x86_64.iso && eject
ya da
# dd if=/dev/sr0 of=
/iso/rhel5.3.x86_64.iso && eject

Konfigurasyon dosyalariyla oynayip, network senaryolari ve disk kucultup buyutme islemlerini de yazacagim.
Simdilik bu kadar