----- Original Message -----
> From: "Amit Mandke (ammandke)" <
ammandke@...>
> To: "Prateek Garg (prategar)" <
prategar@...>, "Edward Warnicke" <
hagbard@...>,
>
ovsdb-dev@...,
ffernand@...
> Sent: Wednesday, April 22, 2015 7:20:02 PM
> Subject: Re: [ovsdb-dev] [Need Help] Arbitrary connection port is part of the node-id
>
> Just to address the question from following mail. The way you specify the
> columns to select operation is you call setColumn(..) on a select.
>
> Example:
>
> Select<GenericTableSchema> bridgeSelect = op.select(bridge.getSchema());
> List<String> columns = new ArrayList<>();
> columns.add(bridge.getNameColumn().getSchema().getName());
> bridgeSelect.setColumns(columns);
>
> -Amit
>
>
> From: "Prateek Garg (prategar)" <
prategar@... >
> Date: Wednesday, April 22, 2015 at 2:54 PM
> To: Edward Warnicke <
hagbard@... >, "
ovsdb-dev@...
> " <
ovsdb-dev@... >, "
ffernand@... " <
>
ffernand@... >
> Subject: Re: [ovsdb-dev] [Need Help] Arbitrary connection port is part of the
> node-id
>
> Hi,
>
> While implementing this use case I need some help using the select operation
> of ovsdb library. I am trying to read the Open_vSwitch table to get the data
> in external-ids. I am doing the following:
>
>
> OpenVSwitch ovs = TyperUtils.getTypedRowWrapper(dbSchema, OpenVSwitch.class);
>
> transaction.add( op.select(ovs.getSchema() ));
>
> ListenableFuture<List<OperationResult>> results = transaction.execute();
>
> List<OperationResult> resultList = results.get();
>
>
>
>
> I am getting resultList as:
>
> [OperationResult [count=0, uuid=null, rows=[Row [columns={}]], error=null,
> details=null]]
>
> Query sent to Ovs db is:
>
> ovsdb-client transact '["Open_vSwitch",{"op":"select",
> "table":"Open_vSwitch", "columns":[], "where": []}]'
>
>
>
>
> However, I want to send:
>
> ovsdb-client transact '["Open_vSwitch",{"op":"select",
> "table":"Open_vSwitch", "columns":["external_ids"] ,"where": []}]'
>
>
>
>
> It would be very helpful if someone could provide pointers on how to set
> column in select operation.
>
>
>
>
> Regards
>
> Prateek
>
> From: Edward Warnicke <
hagbard@... >
> Date: Tuesday, April 21, 2015 at 1:18 PM
> To: Prateek Garg <
prategar@... >
> Cc: "
ffernand@... " <
ffernand@... >, "
>
ovsdb-dev@... " <
ovsdb-dev@... >
> Subject: Re: [ovsdb-dev] Arbitrary connection port is part of the node-id
>
> The config/operational synch is best handled a little differently.
>
> When you try to config an ovsdb-node to connect... you don't *really* know
> the systemid... just the IP:port.
>
> The way we solved this for bridges, and the way I'd advocate solving it here
> is:
>
> 1) If you are configing a ovsdb-node, write its iid to the external-ids of
> the openvswitch table
> 2) When you get an openvswitch table, if it has an iid in its external-ids,
> use that in the operational data store as its iid
> 3) If you don't get an iid in its external-ids... use some reasonable
> heuristic to contruct one.
>
> For #3... I don't currently see a reason *not* to use systemid presuming its
> guaranteed unique and we contruct some kind of reasonable
> Uri from it.
>
> Ed
>
> On Tue, Apr 21, 2015 at 1:09 PM, Prateek Garg (prategar) <
prategar@...
> > wrote:
>
>
>
> Hi,
>
> In my opinion, the we can replace the node-id of the ovsdb node in md-sal to
> contain system_id from external properties. This would make sure that the
> config and operation store are in synch in case the controller reconnects to
> the same ovs in tcp mode.
> I’ll make these changes, update postman collection and submit for approval.
>
> Regards
> Prateek
>
> ----------------------------------------------------------------------
> Date: Mon, 20 Apr 2015 21:28:28 -0700
> From: Edward Warnicke <
hagbard@... >
> To: Flavio Fernandes <
ffernand@... >
> Cc: "
ovsdb-dev@... "
> <
ovsdb-dev@... >
> Subject: Re: [ovsdb-dev] Arbitrary connection port is part of the
> node-id
> Message-ID:
> <
CAFVSqg0kmBcNkGZ50vN-a0TgKswJeRNHVR-1PVvW40ukZuMtYw@... >
> Content-Type: text/plain; charset="utf-8"
>
> Make sure we build in the same mechanism of storing iids in external_ids
> that we use for bridges so that if someone configures a connection as an
> ovsdb-node, it comes *back* in operational store with the same iid...
>
> Ed
>
> On Mon, Apr 20, 2015 at 8:12 PM, Flavio Fernandes <
ffernand@... >
> wrote:
>
>
>
>
>
> > On Apr 20, 2015, at 7:12 PM, Sharon Aicler (saichler) <
>
saichler@... > wrote:
> >
> > Hi,
> > A further investigation by Amit has revealed that the system uuid is
> automatically set by the OVS so we can use it out of the box to identify an
> OVS instance. To see the external ID you can invoke the following cli:
> >
> > ovs-vsctl --columns=external-ids list open_vswitch
> >
> > looks like a win/win situation to me...:o)
> >
>
> ok!
>
> ? flavio
>
>
>
> > Thanks,
> > Sharon.
> > ________________________________________
> > From:
ovsdb-dev-bounces@... [
>
ovsdb-dev-bounces@... ] on behalf of Sharon Aicler
> (saichler)
> > Sent: Monday, April 20, 2015 3:41 PM
> > To: Flavio Fernandes
> > Cc:
ovsdb-dev@...
> > Subject: Re: [ovsdb-dev] Arbitrary connection port is part of the node-id
> >
> > In that case you are kind of "gambling" that two of your dockers won't
> choose the same arbitrary port...:o)
> > In any case, we can't have the ID of an element arbitrary change all the
> time...As a quick and dirty fix, i would drop the port (and the "behind a
> NAT" scenario) so ovsdb id's would be predictable and not change per
> connection (it can even change in run-time if there was some network
> connectivity issue)...
> >
> > A more suitable solution is probably generating and assigning a uuid to
> each of the managed instances, if one does not exist...a quick googling i
> found the following cli method:
> >
> > ovs-vsctl set open_vswitch . external-ids:system-id='"${UUID}"'
> >
> >
> > Thanks,
> > Sharon.
> > ________________________________________
> > From: Flavio Fernandes [
ffernand@... ]
> > Sent: Monday, April 20, 2015 1:25 PM
> > To: Sharon Aicler (saichler)
> > Cc:
ovsdb-dev@...
> > Subject: Re: [ovsdb-dev] Arbitrary connection port is part of the node-id
> >
> >> On Apr 20, 2015, at 3:24 PM, Sharon Aicler (saichler) <
>
saichler@... > wrote:
> >>
> >> Hi,
> >> Sorry, but does't a docker has a unique ip?
> >
> > yes and no. ;) I?m used to see docker behind nat on the vm that hosts
> the containers. Then, from
> > 'outside' the vm, various ovs instances reached using the same ip, but
> different ports. Like this:
> >
> > docker run -p 16640:6640 blablabla
> > docker run -p 16641:6640 blablabla
> > docker run -p 16642:6640 blablabla
> > ?
> >
> > ? flavio
> >
> >
> >
> >> ________________________________________
> >> From: Flavio Fernandes [
ffernand@... ]
> >> Sent: Friday, April 17, 2015 4:23 AM
> >> To: Sharon Aicler (saichler)
> >> Cc:
ovsdb-dev@...
> >> Subject: Re: [ovsdb-dev] Arbitrary connection port is part of the
> node-id
> >>
> >>> On Apr 16, 2015, at 6:53 PM, Sharon Aicler (saichler) <
>
saichler@... > wrote:
> >>>
> >>> Hi all,
> >>> The node-id of an ovs bridge contains the arbitrary port of the
> outgoing connection instance and looks something like the following: