Daniel P. Berrange wrote:
On Wed, Nov 19, 2008 at 11:20:08PM -0700, Jim Fehlig wrote:
> Hi All,
>
> I wanted to get folks thoughts on relaxing the requirement for bridge
> source device in network interface of domain XML, e.g. allowing
>
> <interface type="bridge">
> <mac address="aa:bb:cc:cc:ee:ff"/>
> </interface>
>
> Currently, virDomainNetDefParseXML() in src/domain_conf.c will fail such
> configuration. Since this is common code between backends I'm not sure
> how allowing this config will affect the various virtualizers.
>
> Xen's vif-bridge script will try to find a bridge if one is not
> specified, which perhaps is dubious behavior, but nonetheless convenient
> in migration scenarios where the target host may have a different bridge
> name (br1 vs br0 for example). IIRC, qemu's qemu-ifup script is not as
> forgiving in the absence of a bridge name.
>
I don't particularly like this idea. While letting it automatically
pick the bridge devices may happen to work in some cases, it'll
quietly go wrong horribly in other scenarios. Xen's vif-bridge
has caused real bugs through this behaviour even on a single machine.
eg, its happily automatically picking br0 for months, then someone
adds a new completely unrelated bridge to the machin, say br4, and
the next reboot vif-bridge suddenly decides it prefers br4 for your
guest.
Yep, have seen this behavior when leaving source unspecified.
I think it is not unreasonable in the case of migraiton to
require that the bridge names are configured the same on source and
destination machine, and explicitly including bridge names will let
apps using libvirt query the source & destination host before doing
migraiton and verify that br0 on the source is configured to use the
same network as br0 on the destination.
Agreed. Thanks for the feedback Daniel.
Jim