|
|
|
|
|
|
|
|
|
|
xen-users
[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
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-users] block-* scripts multiple issues,
Zakk <=
|
|
|
|
|