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

[Xen-users] block-* scripts multiple issues



Greetings,

Let me preface this by saying I'm currently running Xen 3.2.0 under CentOS 5.1, although I believe these issues were present in 3.1.x also.


I'm experimenting with a setup that uses the block-drbd disk script provided by the drbd team. I've come across multiple problems, some of which I believe would apply to any other block-* script...


1) The xm python libs (specifically the code path for 'create') sanity check the VBD to make sure it's accessible. This is especially a problem with the drbd type since the 'device' specification is just a label, so xm create has no idea how to find the real device. This I can work around with a quick patch that calls the drbdadm tool and gets the actual device name.

2) If you're using pygrub, it is executed before any of the block scripts; so if there's any setup that needs to occur before the VBD is accessible, pygrub will fail. Again, this is the case with drbd because it won't let you much around in the device if you haven't become 'primary'. However, fixable with a workaround where you specify an alternate bootloader that's just a wrapper around pygrub that does whatever magic you need.


And here's the one I can't work around...


3) If you use qemu-dm as the device model, it is started before the block scripts are run. So just like pygrub, it fails to access the VBD in some instances and then the VBD isn't there in your domU. Which usually breaks your domU. This one I can't just simply put a wrapper around since the VBD isn't passed in on the command line.


It seems to me like it may make some sense to have an interface into the block scripts so xm create can say 'I need your real device name, and do any setup needed assuming you're about to become active'. This would solve all three of the issues I listed, with a bit of added complication of how to pass the correct device name to qemu-dm. However, I don't know the code well enough to know how the case of live migration/qemu-dm/block-* works and what (if anything) needs to be done there. I plan on testing that next.

Any ideas as to a reasonable solution to this stuff?

Thanks, and sorry about the length.

-=Zakk




_______________________________________________
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®.