Edit /etc/xen/xend-config.sxp :
      uncomment this line if you want to bridge your DomUs on the host :
      # (network-script network-bridge)
      uncomment/add this line if you want to use vnc without password by
      default :
      (vncpasswd '')
      ignore the line wich say the bridge will be named xenbr0, it's not
      true anymore, it now rename the interface eth0 in peth0 and create
      a bridge named eth0
      Reboot... tada!
      :)
      
      here's a sample from grub.cfg ( grub2 ) :
      
      menuentry 'Debian GNU/Linux, with Linux 2.6.38-rc8-konradxen+ and XEN 4.0.2-rc3-pre' --class debian --class gnu-linux --class gnu --class os --class xen {
              insmod part_msdos
              insmod ext2
              set root='(hd0,msdos5)'
              search --no-floppy --fs-uuid --set 6149b0be-4294-49c5-871f-7195a3333cc8
              echo    'Chargement de Linux 2.6.38-rc8-konradxen+ ...'
              multiboot       /xen-4.0.2-rc3-pre.gz placeholder dom0_max_vcpus=1 dom0_vcpus_pin
              module  /vmlinuz-2.6.38-rc8-konradxen+ placeholder root=/dev/mapper/vg0-root ro  quiet
              echo    'Chargement du disque mémoire initial ...'
              module  /initrd.img-2.6.38-rc8-konradxen+
      }
      
      verify it works by typing :
      xentop
      
      if it don't :
      
      ls /proc/xen/
      you should see :
      capabilities  privcmd  xenbus
      if not : add this line in /etc/fstab :
      xenfs           /proc/xen       xenfs   defaults        0       1
      and execute
      mount -a
      
      if /dev/xen/evtchn doesn't exists add this line in /etc/modules
      xen-evtchn
      and execute
      modprobe xen-evtchn
      
      if there's no process xend
      udate-rc.d xend defaults
      /etc/init.d/xend/start
      
      For DomUs : well it depends on  what kind of DomU you want.
      
      I didn't use a manager to create DomUs, but directly made the
      config files ( you have to put them in /etc/xen ).
      Here's two example :
      
      pvops : /etc/xen/p2p.cfg
      
      name = "p2p"
      kernel =  "vmlinuz-2.6.38-rc6-lio"
      ramdisk = "initrd.img-2.6.38-rc6-lio"
      root = "/dev/mapper/pvops-root"
      memory = "512"
      #disk = [ 'phy:vg0/p2p,sda,w' , 'phy:/dev/loop0,ioemu:hdc:cdrom,r' ]
      disk = [ 'phy:vg0/p2p,xvda,w' , 'phy:vg0/mmd,xvdb1,w' ]
      #boot = 'c'
      vif = [ 'bridge=eth0' ]
      vfb = [ 'type=vnc,vnclisten=0.0.0.0' ]
      keymap = 'fr'
      serial = 'pty'
      vcpus = 2
      
      
      
      full virtualized host ( the same DomU ) :
      
      name = "p2p"
      kernel = '/usr/lib/xen/boot/hvmloader'
      builder = 'hvm'
      device_model = '/usr/lib/xen-4.0/bin/qemu-dm'
      memory = "512"
      #disk = [ 'phy:vg0/p2p,xvda,w' , 'phy:/dev/loop0,ioemu:hdc:cdrom,r' ] 
      disk = [ 'phy:vg0/p2p,xvda,w' , 'phy:vg0/mmd,xvdb1,w' ]
      boot = 'c'
      vif = [ 'bridge=eth0' ]
      vfb = [ 'type=vnc,vnclisten=0.0.0.0' ]
      keymap = 'fr'
      serial = 'pty'
      vcpus = 2
      
      
      
      If you want to install from an iso :
      
      mount the iso on a loop device :
      losetup /dev/loop0 /root/debian-sq-di-rc1-amd64-netinst.iso
      add it to your config file (the commented line )
      change boot='c' to by boot='d'
      after the install remove it from the config and unmount it :
      losetup -d /dev/loop0
      
      to launch a vm :
      xm create p2p.cfg
      to hard stop it ( better to halt in the guest ) :
      xm destroy p2p.cfg
      
      Note for pvops :
      
      You have to use a xen kernel and initrd that you put in /boot of
      Dom0 ( you can use the one from Dom0 too )
      You just have to copy /lib/modules/<kernel-version> into the
      guest
      As you can see i used lvm for disk devices the full path is
      /dev/vg0/p2p, you can remove /dev for devices ( i m not sure it's
      mandatory )
      if you want to connect to the console change this line in inittab
      :
          1:2345:respawn:/sbin/getty 38400 tty1
      by
         1:2345:respawn:/sbin/getty 38400 hvc0
      you will be able to see wat's hapenning by using '-c' option on
      boot or 'xm console p2p' after
      
      
      if you want to make lvm or partitions in the guest :
      
      create a dos table and the partitions :
      fdisk -l /dev/vg0/p2p
             Device Boot          Start          End       Blocks      Id   System
      /dev/vg0/p2p1               1            61        487424     82  Linux swap / Solaris
      /dev/vg0/p2p2   *          61          1045     7899136   8e  Linux LVM
      
      if you want to use debootstrap to install on those partitions :
      
      
      here we use losetup again :
      rmmod loop
      modprobe loop max_part=63
      losetup /dev/loop0 /dev/vg0/p2p
      
      you will now have :
      /dev/loop0p1
      /dev/loop0p2
      
      pvcreate /dev/loop0p2
      vgcreate pvops /dev/loop0p2
      vgscan
      vgchange -ay ( maybe unecessary the first time because there no lv yet )
      
      create your logical volumes and mount your logical volumes for use
      with debootstrap
      exemple :
      mount /dev/pvops/root /mnt/chroot
      cd /mnt/chroot
      mkdir usr var dev proc home tmp sys
      mount /dev/pvops/var /mnt/chroot/var
      mount /dev/pvops/usr /mnt/chroot/usr
      mount /dev/pvops/home /mnt/chroot/home
      mount /dev/pvops/tmp /mnt/chroot/tmp
      mount -o bind /proc /mnt/chroot/proc
      mount -o bind /dev /mount/chroot/dev
      mount -o bind /dev/pts /mount/chroot/dev/pts
      mount -o bind /dev/shm /mount/chroot/dev/pts
      mount -o bind /sys /mount/chroot/sys 
      
      install with debootstrap ( see manual/howto )
      cp -rp /lib/modules/<kernel-version> /mnt/chroot/lib/modules/<kernel-version>
      chroot /mnt/chroot
      configure :
      /etc/network/interfaces
      /etc/fstab
      /etc/hosts
      /etc/resolv.conf
      /etc/hostname
      /etc/inittab ( for hvc0 )
      
      exit
      umount all your partitions
      vgchange -an pvops
      losetup -d /dev/loop0
      
      and boot the vm :
      cd /etc/xen
      xm create p2p.cfg -c
      
      
      Note for full virtualized host : 
      
      You must have a complete working system on the guest filesystem (
      kernel, grub, etc, ... )
      
      Note for both : 
      
      the disk devices created appears as xvda ,xvdb, etc
      you can add a filesystem as a partition if you want : ( see xvdb1
      in the config )
      
      if you use vnc it will increment the port from 9001 as you add
      VMs, you connect to it by using Dom0 IP
      you call also use the extra options vncdisplay=10 ( for port 9010
      )
      
      you can set a vnc password for a specific vm : vncpasswd=idontknow
      full exemple :
      vfb = [ 'type=vnc,vnclisten=0.0.0.0,vncdisplay=10,vncpasswd=idontknow' ]
      if you want to mount the same fs in different DomUs ( for
      clustered filesystems ) add '!' in the config :
      'phy:vg0/mmd,xvdb1,w!'
      
      The end.
      
      I thought it was short...
      
      
      
_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users