[ovs-dev] [PATCH v1] Add new column compute_types to OVN_Southbound

Russell Bryant russell at ovn.org
Fri Jun 24 20:52:36 UTC 2016


On Fri, Jun 24, 2016 at 4:37 PM, Amitabha Biswas <azbiswas at gmail.com> wrote:

> On Jun 24, 2016, at 6:41 AM, Russell Bryant <russell at ovn.org> wrote:
>
>
> On Wed, Jun 22, 2016 at 5:55 PM, Amitabha Biswas <azbiswas at gmail.com>
> wrote:
>
>> > On Jun 22, 2016, at 2:30 PM, Guru Shetty <guru at ovn.org> wrote:
>> >
>> >
>> >
>> > On 21 June 2016 at 12:20, Amitabha Biswas <azbiswas at gmail.com <mailto:
>> azbiswas at gmail.com>> wrote:
>> > This patch allows a OVN hypervisor administator to specify the
>> > type(s) of non-distributed logical port, the hypervisor would
>> > prefer to support.
>> > ...
>> > The operator can set the preference in the using the external-id
>> > 'ovn-compute-types'. The default preference (when the external-id
>> > is not set) is that the hypervisor supports all non-distributed
>> > ports.
>> >
>> > ovs-vsctl set open_vswitch external-ids:ovn-compute-types="vif"
>> > ovs-vsctl set open_vswitch
>> external-ids:ovn-compute-types="gateway_router"
>> > ovs-vsctl set open_vswitch
>> external-ids:ovn-compute-types="vif,gateway_router”
>> > ...
>> > Note: It is possible that operator may choose to ignore the
>> > preference set by the hypervisor, so the ovn-controller does
>> > not verify that the ports it is hosting matches the its preference.
>> >
>> > Signed-off-by: Amitabha Biswas <abiswas at us.ibm.com <mailto:
>> abiswas at us.ibm.com>>
>> >
>> > Is the idea that OpenStack OVN plugin will read from the SB database
>> about which chassis will host the gateway?
>> >
>>
>> Yes that is the idea. The OpenStack OVN plugin can read the list of
>> chassis that can host a gateway and assign chassis to Logical_Routers in
>> the NB database.
>>
>> Here is the corresponding WIP OpenStack patch:
>> https://review.openstack.org/#/c/332434/ <
>> https://review.openstack.org/#/c/332434/>
>>
>
> This also wouldn't be the first instance of the OpenStack plugin reading
> the Chassis table.
>
> We already read it to get the value of the ovn-bridge-mappings
> configuration. The OpenStack plugin needs to know which Chassis has
> connectivity to a given network name.
>
> There will probably be more ... there is an unresolved issue where our
> OpenStack plugin needs to know whether a given Chassis is using the DPDK or
> Linux datapath so it can tell the compute part of OpenStack (nova) what
> virtual interface type to use for VMs on that host.  I've tried to find
> other ways to resolve this, but it seems the simplest solution overall is
> to expose a bit more data in external_ids of Chassis.
>
> --
> Russell Bryant
>
>
> External_Ids works as well. The default can be left empty (and interpreted
> appropriately) by the OpenStack plugin. The external id can be be a
> straight copy of the string specified in the ovs-vsctl for e.g.
>
> ovs-vsctl set open_vswitch
> external-ids:neutron-compute-types=“vif,gateway_router”
> will result in following in the Chassis row.
> external_ids={neutron-compute-types=“vif,gateway_router”,…}
>
> If we are in agreement, I can push V2 of the patch.
>

I do think using external_ids on Chassis seems better than adding the
compute_types column.

I'm not sure I've totally concluded on the patch in general.  I completely
understand the need for the information.  OpenStack has to decide where to
place gateway ports.  We need a way for administrators to communicate some
policy about what nodes are candidates for that.  What I'm not sure about
is if this is too OpenStack specific.  Even if it is a bit OpenStack
specific, keeping it as external_id keys makes me feel less concerned about
it, at least.  :-)

-- 
Russell Bryant



More information about the dev mailing list