| 
         
xen-users
RE: [Xen-users] Problems installing guest domains
 
>I don't think installation from ISO is supported or generally done.  >Typically, you'd use xen-tools or 'rinse' directly to do the install > for a Centos guest, just like debootstrap is used for debian based guests.
  Debootstrap has nothing to do with issues described bellow. Standard virt-install procedure on Xen RHEL 5.X Servers requires  local ( or remote) NFS share or HTTP mirror created via "mount loop"  corresponding ISO image to nfs shared directory or folder kind of /var/www/rhel with local httpd daemon up and running (Apache HTTP Server on RHEL)
  Boris.
  
  --- On Sun, 3/29/09, Nathan Eisenberg <nathan@xxxxxxxxxxxxxxxx> wrote:
 From: Nathan Eisenberg
 <nathan@xxxxxxxxxxxxxxxx> Subject: RE: [Xen-users] Problems installing guest domains To: "xen-users@xxxxxxxxxxxxxxxxxxx" <xen-users@xxxxxxxxxxxxxxxxxxx> Date: Sunday, March 29, 2009, 3:16 PM
 
 I don't think installation from ISO is supported or generally done.  Typically, you'd use xen-tools or 'rinse' directly to do the install for a Centos guest, just like debootstrap is used for debian based guests.
  Best Regards Nathan Eisenberg Sr. Systems Administrator Atlas Networks, LLC support@xxxxxxxxxxxxxxxx http://support.atlasnetworks.us/portal
  -----Original Message----- From: xen-users-bounces@xxxxxxxxxxxxxxxxxxx [mailto:xen-users-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Andrew Kilham Sent: Saturday, March 28, 2009 8:17 PM To: xen-users@xxxxxxxxxxxxxxxxxxx Subject: [Xen-users] Problems installing guest domains
  Hi,
  I am trying out Xen for the first time and I am
 having a few problems  with getting it working. The computer is a quad core Intel Xeon with VT  enabled, 8gb of RAM and 2 x 15,000rpm SAS drives in RAID1.
  I have installed CentOS 5 64bit and installed Xen 3.3.0 via yum. I have  successfully booted in to dom0. Here is my grub.conf on dom0:
  > # grub.conf generated by anaconda > # > # Note that you do not have to rerun grub after making changes to this  > file > # NOTICE: You have a /boot partition. This means that > # all kernel and initrd paths are relative to /boot/, eg. > # root (hd0,0) > # kernel /vmlinuz-version ro root=/dev/sda2 > # initrd /initrd-version.img > #boot=/dev/sda > default=0 > timeout=5 > splashimage=(hd0,0)/grub/splash.xpm.gz > hiddenmenu > title CentOS (2.6.18-92.1.22.el5xen) > root (hd0,0) > kernel /xen.gz-3.3.0 > module /vmlinuz-2.6.18-92.1.22.el5xen ro
 root=LABEL=/ > module /initrd-2.6.18-92.1.22.el5xen.img > title CentOS (2.6.18-92.el5) > root (hd0,0) > kernel /vmlinuz-2.6.18-92.el5 ro root=LABEL=/ > initrd /initrd-2.6.18-92.el5.img
  However, I can't for the life of me install a guest domain. I have been  Googling for the last 3 days and I am extremely confused - it seems like  there are multiple ways to do it but none are working for me.
  I am wanting to use file-based HDD's for the guests, and I want to  install off an iso of CentOS5 on my HDD for now.
 
  First I tried using the "virt-install" script. Firstly, should I be able  to install a fully virtualized guest or will only para-virtualized work?  I will show what happens when I try both.
  Firstly, if I try to install it as a paravirtualized guest I am running  this command:
  > virt-install -n test1 -r 512 -f /vm/test1.img -s 5  >
 --location=/vm/CentOS-5.2-x86_64-bin-DVD.iso ************************************************************ View for virt-install :- http://lxer.com/module/newswire/view/95262/index.html In general, --location should point to NFS share or local simulated HTTP mirror via Apache Server. ************************************************************ This creates the domain fine and starts what I assume is the CentOS  installation - it asks me to first select a language, once I have done  that it says "What type of media contains the packages to be installed?"  and gives me a list of Local CDROM, Hard drive, NFS, FTP and HTTP. What  is this asking me for?  ******************************************************** Create local NFS share via "mount loop" and point installer to it. You gonna be done Create local HTTP mirror:- # mkdir -p /var/www/rhel # mount loop /etc/xen/isos/rhel.iso /var/www/rhel and point
 installer to :- http://locahost/var/www/rhel All written above is standard technique described in Red Hat's online manuals ******************************************************* If it has already started the installation then  surely it knows where to get the packages from? Anyway, if I select  Local CDROM it says "Unable to find any devices of the type needed for  this installation type. Would you like to manually select your driver or  use a driver disk?" I have got no idea what to do from here.
 
 
  If I try to install a fully virtualized guest using virt-install, here  is the command I am running:
  > virt-install -n test1 -r 512 -f /vm/test1.img -s 5  > --location=/vm/CentOS-5.2-x86_64-bin-DVD.iso --hvm **************************************** -c  /vm/CentOS-5.2-x86_64-bin-DVD.iso Error in virt-install command line ***************************************** This comes up and it
 just hangs here:
  > Starting install... > Creating storage file... 100% |=========================| 5.0 GB 00:00 > Creating domain... 0 B 00:00 > ▒ My xend-debug.log file says this:
  XendInvalidDomain: <Fault 3: 'b5e19b10-7540-902c-b585-f8783447521f'> Traceback (most recent call last): File "/usr/lib64/python2.4/site-packages/xen/web/httpserver.py", line
  140, in process resource = self.getResource() File "/usr/lib64/python2.4/site-packages/xen/web/httpserver.py", line
  172, in getResource return self.getServer().getResource(self) File "/usr/lib64/python2.4/site-packages/xen/web/httpserver.py", line
  351, in getResource return self.root.getRequestResource(req) File "/usr/lib64/python2.4/site-packages/xen/web/resource.py", line 39,  in getRequestResource return findResource(self, req) File "/usr/lib64/python2.4/site-packages/xen/web/resource.py",
 line 26,  in findResource next = resource.getPathResource(pathElement, request) File "/usr/lib64/python2.4/site-packages/xen/web/resource.py", line 49,  in getPathResource val = self.getChild(path, request) File "/usr/lib64/python2.4/site-packages/xen/web/SrvDir.py", line 71, in  getChild val = self.get(x) File  "/usr/lib64/python2.4/site-packages/xen/xend/server/SrvDomainDir.py",
  line 52, in get return self.domain(x) File  "/usr/lib64/python2.4/site-packages/xen/xend/server/SrvDomainDir.py",
  line 44, in domain dom = self.xd.domain_lookup(x) File "/usr/lib64/python2.4/site-packages/xen/xend/XendDomain.py", line  529, in domain_lookup raise XendInvalidDomain(str(domid)) XendInvalidDomain: <Fault 3: 'test1'>
 
 
 
 
 
 
  So, now I try doing what looks like the manual way - creating a config  file in /etc/xen and using xm create.
  First I create
 a file for the HDD:
  > dd if=/dev/zero of=test1.img bs=1M count=1 seek=1023
  Then I created this config file and placed it at /etc/xen/test:
  > # -*- mode: python; -*- > #============================================================================ > # Python configuration setup for 'xm create'. > # This script sets the parameters used when a domain is created using  > 'xm create'. > # You use a separate script for each domain you want to create, or > # you can set the parameters for the domain on the xm command line. > #============================================================================ > > #---------------------------------------------------------------------------- > # Kernel image file. > kernel = "/boot/vmlinuz-2.6.18-92.1.22.el5xen" > > # Optional ramdisk. > #ramdisk = "/boot/initrd.gz" > ramdisk =
 "/boot/initrd-2.6.18-92.1.22.el5xen.img" > #ramdisk = "/boot/initrd-centos5-xen.img" > > # The domain build function. Default is 'linux'. > #builder='linux' > > # Initial memory allocation (in megabytes) for the new domain. > # > # WARNING: Creating a domain with insufficient memory may cause out of > # memory errors. The domain needs enough memory to boot kernel > # and modules. Allocating less than 32MBs is not recommended. > memory = 512 > > # A name for your domain. All domains must have different names. > name = "Test1" > > # 128-bit UUID for the domain. The default behavior is to generate a  > new UUID > # on each call to 'xm create'. > #uuid = "06ed00fe-1162-4fc4-b5d8-11993ee4a8b9" > > # List of which CPUS this domain is allowed to use, default Xen picks > #cpus = "" # leave to Xen to pick > #cpus = "0" # all
 vcpus run on CPU0 > #cpus = "0-3,5,^1" # all vcpus run on cpus 0,2,3,5 > #cpus = ["2", "3"] # VCPU0 runs on CPU2, VCPU1 runs on CPU3 > > # Number of Virtual CPUS to use, default is 1 > #vcpus = 1 > > #---------------------------------------------------------------------------- > # Define network interfaces. > > # By default, no network interfaces are configured. You may have one  > created > # with sensible defaults using an empty vif clause: > # > # vif = [ '' ] > # > # or optionally override backend, bridge, ip, mac, script, type, or  > vifname: > # > # vif = [ 'mac=00:16:3e:00:00:11, bridge=xenbr0' ] > # > # or more than one interface may be configured: > # > # vif = [ '', 'bridge=xenbr1' ] > > vif = [ ''
 ] > > #---------------------------------------------------------------------------- > # Define the disk devices you want the domain to have access to, and > # what you want them accessible as. > # Each disk entry is of the form phy:UNAME,DEV,MODE > # where UNAME is the device, DEV is the device name the domain will see, > # and MODE is r for read-only, w for read-write. > > #disk = [ 'phy:hda1,hda1,w' ] > #disk = [ 'file:/vm/test1.img,ioemu:sda1,w',  > 'phy:/dev/cdrom,hdc:cdrom,r' ] > disk = [ 'file:/vm/test1.img,ioemu:sda1,w' ] > > #---------------------------------------------------------------------------- > # Define frame buffer device. > # > # By default, no frame buffer device is configured. > # > # To create one using the SDL backend and sensible defaults: > # > # vfb = [ 'type=sdl' ] > # > # This uses
 environment variables XAUTHORITY and DISPLAY. You > # can override that: > # > # vfb = [ 'type=sdl,xauthority=/home/bozo/.Xauthority,display=:1' ] > # > # To create one using the VNC backend and sensible defaults: > # > # vfb = [ 'type=vnc' ] > # > # The backend listens on 127.0.0.1 port 5900+N by default, where N is > # the domain ID. You can override both address and N: > # > # vfb = [ 'type=vnc,vnclisten=127.0.0.1,vncdisplay=1' ] > # > # Or you can bind the first unused port above 5900: > # > # vfb = [ 'type=vnc,vnclisten=0.0.0.0,vncunused=1' ] > # > # You can override the password: > # > # vfb = [ 'type=vnc,vncpasswd=MYPASSWD' ] > # > # Empty password disables authentication. Defaults to the vncpasswd > # configured in
 xend-config.sxp. > > #---------------------------------------------------------------------------- > # Define to which TPM instance the user domain should communicate. > # The vtpm entry is of the form 'instance=INSTANCE,backend=DOM' > # where INSTANCE indicates the instance number of the TPM the VM > # should be talking to and DOM provides the domain where the backend > # is located. > # Note that no two virtual machines should try to connect to the same > # TPM instance. The handling of all TPM instances does require > # some management effort in so far that VM configration files (and thus > # a VM) should be associated with a TPM instance throughout the lifetime > # of the VM / VM configuration file. The instance number must be > # greater or equal to 1. > #vtpm = [ 'instance=1,backend=0'
 ] > > #---------------------------------------------------------------------------- > # Set the kernel command line for the new domain. > # You only need to define the IP parameters and hostname if the domain's > # IP config doesn't, e.g. in ifcfg-eth0 or via DHCP. > # You can use 'extra' to set the runlevel and custom environment > # variables used by custom rc scripts (e.g. VMID=, usr= ). > > # Set if you want dhcp to allocate the IP address. > #dhcp="dhcp" > # Set netmask. > #netmask= > # Set default gateway. > #gateway= > # Set the hostname. > #hostname= "vm%d" % vmid > > # Set root device. > root = "/dev/sda1 ro" > > # Root device for nfs. > #root = "/dev/nfs" > # The nfs server. > #nfs_server = '192.0.2.1' > # Root directory on the nfs server. > #nfs_root =
 '/full/path/to/root/directory' > > # Sets runlevel 4. > extra = "4" > > #---------------------------------------------------------------------------- > # Configure the behaviour when a domain exits. There are three 'reasons' > # for a domain to stop: poweroff, reboot, and crash. For each of these you > # may specify: > # > # "destroy", meaning that the domain is cleaned up as normal; > # "restart", meaning that a new domain is started in place of the old > # one; > # "preserve", meaning that no clean-up is done until the domain is > # manually destroyed (using xm destroy, for example); or > # "rename-restart", meaning that the old domain is not cleaned up, but is > # renamed and a new domain started in its place. > # > # In the event a domain stops due to a crash, you have the additional  > options: > # > #
 "coredump-destroy", meaning dump the crashed domain's core and then  > destroy; > # "coredump-restart', meaning dump the crashed domain's core and the  > restart. > # > # The default is > # > #  > #  > #  > # > # For backwards compatibility we also support the deprecated option  > restart > # > # restart = 'onreboot' means  > #  > #  > # > # restart = 'always' means  > #  > #  > # > # restart = 'never' means  > #  > #  > > # > # > # > > #----------------------------------------------------------------------------- > # Configure PVSCSI devices: > # > #vscsi=[ 'PDEV, VDEV' ] > # > # PDEV gives physical SCSI device to be attached to specified guest > # domain by one of the following identifier format. > # - XX:XX:XX:XX (4-tuples with decimal notation which shows > # "host:channel:target:lun") > # - /dev/sdxx or sdx > # - /dev/stxx or stx > # - /dev/sgxx or sgx > # - result of 'scsi_id -gu -s'. > # ex. # scsi_id -gu -s /block/sdb > # 36000b5d0006a0000006a0257004c0000 > # > # VDEV gives virtual SCSI device by 4-tuples (XX:XX:XX:XX) as > # which the specified guest domain recognize. > # > > #vscsi = [ '/dev/sdx, 0:0:0:0' ] > > #============================================================================ I then ran this
 command:
  > xm create -c test1
  And this is the last few lines of the output before it stops:
  > Scanning and configuring dmraid supported devices > Creating root device. > Mounting root filesystem. > mount: could not find filesystem '/dev/root' > Setting up other filesystems. > Setting up new root fs > setuproot: moving /dev failed: No such file or directory > no fstab.sys, mounting internal defaults > setuproot: error mounting /proc: No such file or directory > setuproot: error mounting /sys: No such file or directory > Switching to new root and running init. > unmounting old /dev > unmounting old /proc > unmounting old /sys > switchroot: mount failed: No such file or directory > Kernel panic - not syncing: Attempted to kill init!
 
  So I am utterly stumped and extremely frustrated by now that I cannot  get something that is
 seemingly simple to work!
  Any advise and help would be very greatly appreciated!
  Thanks in advance :)
  Andrew
 
 
 
 
 
  _______________________________________________ Xen-users mailing list Xen-users@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-users
 
 
 
  _______________________________________________ Xen-users mailing list Xen-users@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-users   |  
  
      _______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users 
 |   
 
 | 
    |