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

Re: [Xen-devel] xl remus - Invoking scripts from xl



On Thu, 2013-07-18 at 10:51 -0400, Shriram Rajagopalan wrote:
> On Thu, Jul 18, 2013 at 9:33 AM, Ian Campbell
> <Ian.Campbell@xxxxxxxxxx> wrote:
>         On Thu, 2013-07-18 at 09:26 -0400, Shriram Rajagopalan wrote:
>         
>         >         Right, and that's why I would prefer to avoid a
>         dependency on
>         >         Python.
>         >         Since I think at least some of these projects will
>         see it as
>         >         an
>         >         additional barrier.
>         >
>         >         On the other hand if its just an implementation
>         detail of a
>         >         remus
>         >         specific script which libxl happens to call out to
>         when asked
>         >         then I
>         >         suppose it is up to the Remus folks whether they
>         find this
>         >         acceptable.
>         >
>         >
>         >
>         > correction. This script will be called by xl not libxl. As
>         George put
>         > it, other toolstacks
>         > may choose to do this setup in their own way.
>         
>         
>         Actually I think this is exactly the sort of complexity which
>         libxl
>         serves to remove from all toolstacks. If they all need to do
>         it then it
>         belongs in libxl.
>         
>         > system("modprobe ifb numifbs=10")
>         
> 
> 
> 
> 
> Only this can go into the host config toolstack.
>  
>         > system("ip link set ifbX up")
>         
>         
> 
> 
> the ifbX is an example.. the ifb module names the interfaces ifb0 to
> ifbN where N is 
> determined by modprobe ifb numifbs=N.
> 
> 
> Now, lets say we have 10 ifbs in the system. which ones do we pick for
> the guest ?
> if the VM has 3 interfaces, we need 3 ifbs, ifb0-2. Thats easy.
> 
> 
> What if there are two remus streams in the same system ? then we need
> to maintain a list of ifbs that are being used and which ones are
> free.

Do we? I'd have thought just trying them until we find a free one would
suffice? Maintaining a pool would require some sort of central arbiter
which doesn't (necessarily) exist in a system using libxl (it's
toolstack specific).

Or maybe xenstore could be used to record which ifbs are in use.

> They don't belong in the vif-hotplug script.
> Adding these lines means that all egress traffic from the VM will be
> routed via the IFB device whether or not Remus is running. I don't
> think people would want that.

Surely the hotplug script could trivially do:
     if (remus_is_enabled(dom)):
         ifb = find_me_a_free_ifb()
         apply_ifb(vif, ifb)

> If we throw the responsibility of specifying IFB devices onto the
> admin, libxl can basically
> do two system() calls, as stated above and install the plug_qdisc and
> move on.

Now that I understand how it fits together I don't think asking the host
admin to allocate these particular resources is a good idea.

Ian



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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