[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-users] BLKTAP limit in Dom0, can't boot with pygrub



I'm trying to start a large number of domains (hopefully around 70) each backed by a separate qcow disk. They are booting via pygrub. I've included an example config file below. I can start the first 16 DomUs just fine, but any after that fail to start. It looks like I'm hitting a limit to the number of blktap devices the Dom0 can have, so pygrub is failing to load the new disks. I've posted relevant sections of /var/log/xen/xend.log for both a successful and failed domain creation.
I'm nearly certain that the problem is with mounting the image in Dom0 
so that pygrub can find a kernel on it; if I modify the config file for 
a failed domain to boot directly from Dom0's kernel, and then retry the 
domain creation, it works.  Furthermore, if I do an "xm shutdown" on one 
of the successfully created pygrub domains, I can start one of the 
failed ones.
Could it be that there is a limit of 16 blktap devices in Dom0 and 
they're not being cleaned up properly after pygrub uses them?  It looks 
like they are.  In the log file, after pygrub returns it says 
"Unmounting /dev/xvdp from /dev/xvdp".
Thanks,
Jim Cipar





LOG FOR FAILED DOMAIN CREATION
---------------------------------------------------------------
[2008-08-30 10:06:11 5237] INFO (XendDomainInfo:2066) Mounting /home/jcipar/Disks/VM-17-0.qcow on /dev/xvdp. [2008-08-30 10:06:11 5237] DEBUG (DevController:117) DevController: writing {'backend-id': '0', 'virtual-device': '51952', 'device-type': 'disk', 'state': '1', 'backend': '/loca
l/domain/0/backend/tap/0/51952'} to /local/domain/0/device/vbd/51952.
[2008-08-30 10:06:11 5237] DEBUG (DevController:119) DevController: writing {'domain': 'Domain-0', 'frontend': '/local/domain/0/device/vbd/51952', 'uuid': '714fe8ee-0376-7cad-ab 0a-a3a8085166b6', 'dev': '/dev/xvdp', 'state': '1', 'params': 'qcow:/home/jcipar/Disks/VM-17-0.qcow', 'mode': 'w', 'online': '1', 'frontend-id': '0', 'type': 'tap'} to /local/domain/0/backend/tap/0/51952.
[2008-08-30 10:06:11 5237] DEBUG (DevController:155) Waiting for 51952.
[2008-08-30 10:06:11 5237] DEBUG (DevController:594) hotplugStatusCallback /local/domain/0/backend/tap/0/51952/hotplug-status. [2008-08-30 10:06:12 5237] DEBUG (DevController:594) hotplugStatusCallback /local/domain/0/backend/tap/0/51952/hotplug-status. [2008-08-30 10:06:12 5237] DEBUG (DevController:608) hotplugStatusCallback 1.
[2008-08-30 10:06:12 5237] DEBUG (DevController:155) Waiting for 51952.
[2008-08-30 10:06:12 5237] DEBUG (DevController:594) hotplugStatusCallback /local/domain/0/backend/tap/0/51952/hotplug-status. [2008-08-30 10:06:12 5237] DEBUG (DevController:608) hotplugStatusCallback 1.
[2008-08-30 10:06:12 5237] ERROR (XendBootloader:43) Disk isn't accessible
[2008-08-30 10:06:12 5237] INFO (XendDomainInfo:2084) Unmounting /dev/xvdp from /dev/xvdp. [2008-08-30 10:06:12 5237] DEBUG (XendDomainInfo:590) XendDomainInfo.destroyDevice: deviceClass = tap, device = /dev/xvdp
[2008-08-30 10:06:12 5237] ERROR (XendDomainInfo:440) VM start failed



LOG FOR SUCCESSFUL DOMAIN CREATION
-------------------------------------------------------------------------
[2008-08-30 10:06:06 5237] DEBUG (DevController:119) DevController: writing {'domain': 'Domain-0', 'frontend': '/local/domain/0/device/vbd/51952', 'uuid': '3fbc58db-daa3-b555-21 4e-14745062eb03', 'dev': '/dev/xvdp', 'state': '1', 'params': 'qcow:/home/jcipar/Disks/VM-16-0.qcow', 'mode': 'w', 'online': '1', 'frontend-id': '0', '
type': 'tap'} to /local/domain/0/backend/tap/0/51952.
[2008-08-30 10:06:06 5237] DEBUG (DevController:155) Waiting for 51952.
[2008-08-30 10:06:06 5237] DEBUG (DevController:594) hotplugStatusCallback /local/domain/0/backend/tap/0/51952/hotplug-status. [2008-08-30 10:06:06 5237] DEBUG (DevController:594) hotplugStatusCallback /local/domain/0/backend/tap/0/51952/hotplug-status. [2008-08-30 10:06:06 5237] DEBUG (DevController:608) hotplugStatusCallback 1.
[2008-08-30 10:06:06 5237] DEBUG (DevController:155) Waiting for 51952.
[2008-08-30 10:06:06 5237] DEBUG (DevController:594) hotplugStatusCallback /local/domain/0/backend/tap/0/51952/hotplug-status. [2008-08-30 10:06:06 5237] DEBUG (DevController:608) hotplugStatusCallback 1. [2008-08-30 10:06:06 12692] DEBUG (XendBootloader:100) Launching bootloader as ['/usr/bin/pygrub', '--args=root=/dev/xvda1 xencons=tty', '--output=/var/run/xend/boot/xenbl.15861
', '-q', '/dev/xvdp'].
[2008-08-30 10:06:07 5237] INFO (XendDomainInfo:2084) Unmounting /dev/xvdp from /dev/xvdp. [2008-08-30 10:06:07 5237] DEBUG (XendDomainInfo:590) XendDomainInfo.destroyDevice: deviceClass = tap, device = /dev/xvdp


EXAMPLE CONFIG FILE
------------------------------------------
bootloader="/usr/bin/pygrub"
disk=['tap:qcow:/home/jcipar/Disks/VM-1-0.qcow,xvda1,w']
vif = ['ip=172.19.158.1']
memory=100
root="/dev/xvda1"
extra='xencons=tty'


_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.