[ovs-discuss] ovsdb behavior under ovn management plane scaling
Russell Bryant
russell at ovn.org
Thu Jan 28 22:31:27 UTC 2016
On 01/28/2016 05:25 PM, Andy Zhou wrote:
>
>
> On Thu, Jan 28, 2016 at 11:35 AM, Ryan Moats <rmoats at us.ibm.com
> <mailto:rmoats at us.ibm.com>> wrote:
>
> As promised on today's OVN IRC meeting...
>
> We're in the process of testing OVN at scale as well as looking at
> the performance of the various planes of OVN.
>
> One of the initial management plane scaling tests is to
>
> 1. Create OpenStack external etwork x1 with IPv4 subnet xs1 (we
> aren't testing the data plane, so we don't have to worry about NAT)
> 2. Replicate the following template 400 times
> a. Create OpenStack project p(i) and then in p(i):
> b. create a network n1 and assign an IPv4 subnet s1 to it
> c. create a router, assign an interface to s1 and set the router's
> external gateway to xs1
> d. launch a compute instance i1, attached to n1
>
> [in a network line diagram: i1 -- n1(s1) -- r1 -- x1(xs1)]
>
> When doing this with on a four VM cloud (each VM has four CPU cores
> and 16 GB of memory), we are seeing the steps "assign an interface
> to s1" and "set the router's external gateway to xs1" take longer
> amounts of time as the number of templates increases.
>
> Looking at the ovsdb server logs during this test, one can break
> down OVN_Northbound operations into three buckets:
> (1) pure insert operations
> (2) operations that combine and insert and an update
> (3) pure update operations
>
> Data from buckets (1) and (2) were combined and plotted in
> http://ibin.co/2V2VVrQYDKyI - The vertical axis is in seconds, and
> the horizontal axis is "transaction during the test", so while I
> can't tell you exactly where in the test a particular point
> occurred, one can look at the graph and say with some level
> of confidence that inserting rows into a table isn't all that
> expensive an operation.
>
> Data from bucket (3) was plotted as http://ibin.co/2V2Vjb9rVqUK -
> Again, the vertical axis is in seconds, and the horizontal axis is
> "transaction during the test". All of these operations are updates
> to port state in the Logical_Ports table and I read this plot as
> saying that as we have more and more ports in the Logical_Ports
> table, update operations can take longer and longer. Given the OVN
> scale I am looking at (the current test cloud is 125 hypervisors),
> any linearity in time (even via increased variability) is something
> I'd like to see if we can improve...
>
> Thanks for sharing the data. The master branch supports "monitor2" and
> "update2" JSONRPC messages. Do you know if they are being used?
That's the default unless you explicitly turn it off, right?
--
Russell Bryant
More information about the discuss
mailing list