Xend crashes when trying to bring up domU on a diskless device

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Xend crashes when trying to bring up domU on a diskless device

JeanYiYi
Hi, every one:

I had problem creating domU on diskless device by
using xen-unstable. Following, please find out
details. BTW, the same configuration works fine on
device with hard disk

(1) Xen, dom0 kernel and dom0 root file system are
loaded/mounted over via eth0
 
(2) DomU root file system is created in a file-backed
virtual block device(VBD). The file-backed VBD locates
at some directory on NFS root of dom0.

(3) Since Xen network bridge script called when
starting xend corrupts eth0 connection, network bridge
is disabled by commenting it out from
/etc/xen/xend-config.sxp in order to maintain NFS
link. Uncomment network route.

(4) Error message 'Error creating domain: argument 1
must be string, not None' is observed when trying to
create domU.

(5) xend.log:

[2005-11-09 16:05:02 xend] INFO (SrvDaemon:268) Xend
Daemon started
[2005-11-09 16:05:02 xend] INFO (SrvDaemon:272) Xend
changeset: Mon Oct 31 16:14:59 2005 +0100
7583:6be0d21bb863.
[2005-11-09 16:05:02 xend] DEBUG (xswatch:27) Jean:
path = @releaseDomain
[2005-11-09 16:05:02 xend.XendDomainInfo] DEBUG
(XendDomainInfo:168)
XendDomainInfo.recreate({'paused': 0, 'cpu_time':
14565014309814L, 'ssidref': 0, 'handle': [0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
'shutdown_reason': 0, 'dying': 0, 'dom': 0, 'mem_kb':
1043456, 'maxmem_kb': 17179869180, 'max_vcpu_id': 3,
'crashed': 0, 'running': 1, 'shutdown': 0,
'online_vcpus': 4, 'blocked': 0})
[2005-11-09 16:05:02 xend.XendDomainInfo] INFO
(XendDomainInfo:180) Recreating domain 0, UUID
00000000-0000-0000-0000-000000000000.
[2005-11-09 16:05:05 xend] DEBUG (XendDomain:140)
number of vcpus to use is 0
[2005-11-09 16:05:05 xend] INFO (SrvServer:112) unix
path=/var/lib/xend/xend-socket
[2005-11-09 16:06:15 xend.XendDomainInfo] DEBUG
(XendDomainInfo:147) XendDomainInfo.create(['vm',
['name', 'goodluck'], ['memory', '512'], ['cpu',
'-1'], ['image', ['linux', ['kernel',
'/boot/vmlinuz-2.6.12-xenU'], ['ip',
'10.4.128.200:1.2.3.4::255.255.128.0:goodluck:eth0:off'],
['root', '/dev/sda1 ro'], ['args', '3'], ['vcpus',
'1'], ['vcpus', '1'], ['boot', 'c'], ['display',
'localhost:0']]], ['device', ['vbd', ['uname',
'file:/xen/goodluck/vm1disk'], ['dev', 'sda1'],
['mode', 'w']]], ['device', ['vif', ['mac',
'aa:bb:cc:dd:ee:12']]]])
[2005-11-09 16:06:15 xend.XendDomainInfo] DEBUG
(XendDomainInfo:250) parseConfig: config is ['vm',
['name', 'goodluck'], ['memory', '512'], ['cpu',
'-1'], ['image', ['linux', ['kernel',
'/boot/vmlinuz-2.6.12-xenU'], ['ip',
'10.4.128.200:1.2.3.4::255.255.128.0:goodluck:eth0:off'],
['root', '/dev/sda1 ro'], ['args', '3'], ['vcpus',
'1'], ['vcpus', '1'], ['boot', 'c'], ['display',
'localhost:0']]], ['device', ['vbd', ['uname',
'file:/xen/goodluck/vm1disk'], ['dev', 'sda1'],
['mode', 'w']]], ['device', ['vif', ['mac',
'aa:bb:cc:dd:ee:12']]]]
[2005-11-09 16:06:15 xend.XendDomainInfo] DEBUG
(XendDomainInfo:308) parseConfig: result is
{'ssidref': None, 'name': 'goodluck', 'on_reboot':
None, 'maxmem': None, 'on_poweroff': None, 'mem_kb':
None, 'maxmem_kb': None, 'on_crash': None, 'backend':
[], 'vcpus': 1, 'cpu_weight': None, 'vcpu_avail':
None, 'memory': 512, 'device': [('vbd', ['vbd',
['uname', 'file:/xen/goodluck/vm1disk'], ['dev',
'sda1'], ['mode', 'w']]), ('vif', ['vif', ['mac',
'aa:bb:cc:dd:ee:12']])], 'bootloader': None, 'image':
['linux', ['kernel', '/boot/vmlinuz-2.6.12-xenU'],
['ip',
'10.4.128.200:1.2.3.4::255.255.128.0:goodluck:eth0:off'],
['root', '/dev/sda1 ro'], ['args', '3'], ['vcpus',
'1'], ['vcpus', '1'], ['boot', 'c'], ['display',
'localhost:0']], 'cpu': -1, 'uuid': None}
[2005-11-09 16:06:15 xend.XendDomainInfo] DEBUG
(XendDomainInfo:1047) XendDomainInfo.construct: None 0
[2005-11-09 16:06:16 xend.XendDomainInfo] DEBUG
(XendDomainInfo:1077) XendDomainInfo.initDomain: 17
524288 1.0
[2005-11-09 16:06:16 xend] INFO (image:131)
buildDomain os=linux dom=17 vcpus=1
[2005-11-09 16:06:16 xend] DEBUG (image:169) dom      
     = 17
[2005-11-09 16:06:16 xend] DEBUG (image:170) image    
     = /boot/vmlinuz-2.6.12-xenU
[2005-11-09 16:06:16 xend] DEBUG (image:171)
store_evtchn   = 1
[2005-11-09 16:06:16 xend] DEBUG (image:172)
console_evtchn = 2
[2005-11-09 16:06:16 xend] DEBUG (image:173) cmdline  
     =
ip=10.4.128.200:1.2.3.4::255.255.128.0:goodluck:eth0:off
root=/dev/sda1 ro 3
[2005-11-09 16:06:16 xend] DEBUG (image:174) ramdisk  
     =
[2005-11-09 16:06:16 xend] DEBUG (image:175) vcpus    
     = 1
[2005-11-09 16:06:16 xend] DEBUG (DevController:256)
DevController: writing {'virtual-device': '2049',
'backend-id': '0', 'backend':
'/local/domain/0/backend/vbd/17/2049'} to
/local/domain/17/device/vbd/2049.
[2005-11-09 16:06:16 xend] DEBUG (DevController:258)
DevController: writing {'domain': 'goodluck',
'params': '/xen/goodluck/vm1disk', 'frontend-id':
'17', 'type': 'file', 'dev': 'sda1', 'frontend':
'/local/domain/17/device/vbd/2049'} to
/local/domain/0/backend/vbd/17/2049.
[2005-11-09 16:06:17 xend] DEBUG (xswatch:27) Jean:
path = None
[2005-11-09 16:06:17 xend.XendDomainInfo] ERROR
(XendDomainInfo:158) Domain construction failed
Traceback (most recent call last):
  File "/usr/lib/python/xen/xend/XendDomainInfo.py",
line 152, in create
    vm.initDomain()
  File "/usr/lib/python/xen/xend/XendDomainInfo.py",
line 1109, in initDomain
    self.createDevices()
  File "/usr/lib/python/xen/xend/XendDomainInfo.py",
line 1222, in createDevices
    self.createDevice(n, c)
  File "/usr/lib/python/xen/xend/XendDomainInfo.py",
line 893, in createDevice
    return
self.getDeviceController(deviceClass).createDevice(devconfig)
  File
"/usr/lib/python/xen/xend/server/DevController.py",
line 63, in createDevice
    status, fn_ret = self.waitForBackend(devid)
  File
"/usr/lib/python/xen/xend/server/DevController.py",
line 277, in waitForBackend
    watch = xswatch(backpath, hotplugStatus)
  File "/usr/lib/python/xen/xend/xenstore/xswatch.py",
line 28, in __init__
    xswatch.xs.watch(path, self)
TypeError: argument 1 must be string, not None
[2005-11-09 16:06:17 xend.XendDomainInfo] DEBUG
(XendDomainInfo:1156) XendDomainInfo.destroy: domid=17
[2005-11-09 16:06:17 xend.XendDomainInfo] DEBUG
(XendDomainInfo:1164) XendDomainInfo.destroyDomain(17)
[2005-11-09 16:06:18 xend] ERROR (SrvBase:87) Request
create failed.
Traceback (most recent call last):
  File "/usr/lib/python/xen/web/SrvBase.py", line 85,
in perform
    return op_method(op, req)
  File
"/usr/lib/python/xen/xend/server/SrvDomainDir.py",
line 82, in op_create
    raise XendError("Error creating domain: " +
str(ex))
XendError: Error creating domain: argument 1 must be
string, not None

(6) xend-debug.log

Traceback (most recent call last):
  File
"/usr/lib/python/xen/xend/server/SrvDomainDir.py",
line 77, in op_create
    dominfo = self.xd.domain_create(config)
  File "/usr/lib/python/xen/xend/XendDomain.py", line
215, in domain_create
    dominfo = XendDomainInfo.create(config)
  File "/usr/lib/python/xen/xend/XendDomainInfo.py",
line 152, in create
    vm.initDomain()
  File "/usr/lib/python/xen/xend/XendDomainInfo.py",
line 1109, in initDomain
    self.createDevices()
  File "/usr/lib/python/xen/xend/XendDomainInfo.py",
line 1222, in createDevices
    self.createDevice(n, c)
  File "/usr/lib/python/xen/xend/XendDomainInfo.py",
line 893, in createDevice
    return
self.getDeviceController(deviceClass).createDevice(devconfig)
  File
"/usr/lib/python/xen/xend/server/DevController.py",
line 63, in createDevice
    status, fn_ret = self.waitForBackend(devid)
  File
"/usr/lib/python/xen/xend/server/DevController.py",
line 277, in waitForBackend
    watch = xswatch(backpath, hotplugStatus)
  File "/usr/lib/python/xen/xend/xenstore/xswatch.py",
line 28, in __init__
    xswatch.xs.watch(path, self)
TypeError: argument 1 must be string, not None

(7) domU configurations:

#----------------------------------------------------------------------------
# Kernel image file.
kernel = "/boot/vmlinuz-2.6.12-xenU"

# Optional ramdisk.
#ramdisk = "/boot/initrd.gz"

# The domain build function. Default is 'linux'.
#builder='linux'

# Initial memory allocation (in megabytes) for the new
domain.
memory = 512

# A name for your domain. All domains must have
different names.
name = "goodluck"

# Which CPU to start domain on?
cpu = -1   # leave to Xen to pick

#----------------------------------------------------------------------------
# Define network interfaces.

# Number of network interfaces. Default is 1.
nics=1

# Optionally define mac and/or bridge for the network
interfaces.
# Random MACs are assigned if not given.
vif = [ 'mac=aa:bb:cc:dd:ee:12' ]

#----------------------------------------------------------------------------
# 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 = [ 'file:/xen/goodluck/vm1disk,sda1,w' ]

#----------------------------------------------------------------------------
# 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.
ip="10.4.128.200"
netmask="255.255.128.0"
# Set default gateway.
#gateway=
# Set the hostname.
hostname= "goodluck"

# Set root device.
root = "/dev/sda1 ro"

# Root device for nfs.
#root = "/dev/nfs"
# The nfs server.
#nfs_server = '10.4.128.1'  
# Root directory on the nfs server.
#nfs_root   = '/mnt/xengoodluck'

# Sets runlevel 4.
extra = "3"

#----------------------------------------------------------------------------
# Set according to whether you want the domain
restarted when it exits.
# The default is 'onreboot', which restarts the domain
when it shuts down
# with exit code reboot.
# Other values are 'always', and 'never'.

#restart = 'onreboot'


Many many thanks for any kind help.

Best Regards
Jean




       
               
__________________________________
Yahoo! Mail - PC Magazine Editors' Choice 2005
http://mail.yahoo.com

_______________________________________________
Xen-devel mailing list
[hidden email]
http://lists.xensource.com/xen-devel