From 782eaace64b915751b1e1254e955c7160127b4d9 Mon Sep 17 00:00:00 2001 From: Ann Kamyshnikova Date: Tue, 26 Apr 2016 18:12:09 +0300 Subject: [PATCH] Neutron L3 HA test plan and results Testing Neutron L3 HA feature with Rally, Shaker and some manual destruction scenarious. Change-Id: Idcf2870b9b5e5e9249898123363abb663b997f0a --- doc/source/test_plans/index.rst | 1 + .../neutron_features/l3_ha/L3HA.png | Bin 0 -> 109451 bytes .../l3_ha/iperf_addresses.png | Bin 0 -> 28537 bytes .../neutron_features/l3_ha/ping.png | Bin 0 -> 26644 bytes .../neutron_features/l3_ha/ping_external.png | Bin 0 -> 29419 bytes .../neutron_features/l3_ha/test_plan.rst | 321 +++++++++++ doc/source/test_results/index.rst | 1 + .../test_results/neutron_features/index.rst | 12 + .../l3_ha/iperf_addresses.png | Bin 0 -> 28537 bytes .../neutron_features/l3_ha/ping.png | Bin 0 -> 26644 bytes .../neutron_features/l3_ha/ping_external.png | Bin 0 -> 29419 bytes .../neutron_features/l3_ha/test_results.rst | 531 ++++++++++++++++++ 12 files changed, 866 insertions(+) create mode 100644 doc/source/test_plans/neutron_features/l3_ha/L3HA.png create mode 100644 doc/source/test_plans/neutron_features/l3_ha/iperf_addresses.png create mode 100644 doc/source/test_plans/neutron_features/l3_ha/ping.png create mode 100644 doc/source/test_plans/neutron_features/l3_ha/ping_external.png create mode 100644 doc/source/test_plans/neutron_features/l3_ha/test_plan.rst create mode 100644 doc/source/test_results/neutron_features/index.rst create mode 100644 doc/source/test_results/neutron_features/l3_ha/iperf_addresses.png create mode 100644 doc/source/test_results/neutron_features/l3_ha/ping.png create mode 100644 doc/source/test_results/neutron_features/l3_ha/ping_external.png create mode 100644 doc/source/test_results/neutron_features/l3_ha/test_results.rst diff --git a/doc/source/test_plans/index.rst b/doc/source/test_plans/index.rst index f242f47..6427ecf 100644 --- a/doc/source/test_plans/index.rst +++ b/doc/source/test_plans/index.rst @@ -17,4 +17,5 @@ Test Plans container_repositories/plan keystone/plan container_cluster_systems/plan + neutron_features/l3_ha/test_plan diff --git a/doc/source/test_plans/neutron_features/l3_ha/L3HA.png b/doc/source/test_plans/neutron_features/l3_ha/L3HA.png new file mode 100644 index 0000000000000000000000000000000000000000..af4983d90ae26e6b6fe0cda79896ac908d774c48 GIT binary patch literal 109451 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 z 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%0Dn{uPyln21yjSOw4_8i4)Rz|S0c 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 Cll`m! literal 0 HcmV?d00001 diff --git a/doc/source/test_plans/neutron_features/l3_ha/ping.png b/doc/source/test_plans/neutron_features/l3_ha/ping.png new file mode 100644 index 0000000000000000000000000000000000000000..2cc0130317576f448c6c5d642fddbbab9237d567 GIT binary patch literal 26644 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 literal 0 HcmV?d00001 diff --git a/doc/source/test_plans/neutron_features/l3_ha/ping_external.png b/doc/source/test_plans/neutron_features/l3_ha/ping_external.png new file mode 100644 index 0000000000000000000000000000000000000000..41dafe4b5db5f46486a238ef49173f99b7ded71b GIT binary patch literal 29419 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[te-nJ@t-5QXLun5N$@F$KX2)8(S)P5J|6dA|hGc-uzC(93}RB zV{l3sN-jXT=EGRJQ~1azE1(J4=TcmK7lvv?!Za`#&?O0Lw0`U)EGin-{b2QtK1**k zsn#5em^Yw+1YnDZtvve+dz=PkMyD!wHYy_@xKo^FT&jWXp^irY0sUbyF+L=5oBmpk zH8dQ>{9fh-PM)fUm+;wqk}X}{RO4E2Jlx6~*?0z2B}wf^wzjr_KH0&~>p&rrgs0|J zCcQWRE@)D@;ot*m(LZ3BRlsBJrz$va+20b|>$ePd-0_&X5aw5;dtj%6y ztH&$Gw8`&} zIku6s_HPTZK;B7FVB);oVt;BmRbeX~d;{o$p9aylKQB(i_)u-ZGulE5ov|74}_Bst*_A+W5_RkHHrMeA{ru~jI^j)X9& zD9zS+6CfmIpF0CY-OdKF%5xYbngktF44Hqg;Y2yWA}rVFxQfVLbLFYVR#-!j2!I*%A}hGvmKPpIVp_Ob`Td$G*pTOpY}hh`F6jZFWX>R*udx@ zk%m9RgvaMl&Yp4h(Pd5{QPGO{4}q&8Gq3KfUhVHgJ_YeJ3X}mXeb(;*GkttC+{*DG z52W;9HJVYEb)h�`+_tF`%IC);Q**-Cf9SWe+%`6)02K&-Rr-)3g9F9Pk#lE^s;K z_bpM~4?4jPktx_{?crrkm_6_?&cTyI80B^H@P6<}z}B&Fy_$x;*X!wRd`K1HJi}2) z>%s(L4-SA@r|nbKhr~h5?;T$Paa9z%IYrJk2H+)FZ=TT_aEXISc7~t^1#D(Xpfo}z zDU3p4j4};DDd1A_12bH9!Ohj7Krwi1EnqZvfTDUnq~=H;Kt$~s?pQ?V-)-lov?vHT z@ON`eh|5zSFFD14N>wK8+W;4-ug4=LpW?ByzZ)CE0s_f(!(0}HS+!(5@QU@|S^zbN zY1+lf7c>-CV0R4ruYR-^g^lLeCKCN_CrnBJ0!kB9cM^zNe*ssUinkAcDq_kaz^uLUQa;kyttSIRv% zo;!nRu)BX$yMDa`oX~Qu!nQ6X1Z3z8qKj8CH7b({20+}@;z!BX;CF;ER7k$j6|IDV z$zBpSbmS`NABFH^;l>fu1f79sEksdFP^$p`d}+l#X$ zXP?8>d3h;rAg+YZcN&n#Ip#xVlF$AKtkij5OF9Bn7w?OdAkzSAd@fY5`N_YyIubzT1y?-B;g+_1(LIpzx*) z#U$YdM)vcH;JB#MdCegoJ|Lz2p`qK@`ET@%K2F9%llFuP2o?MYjYvR?9<2fS8KSC? z+iYL=gXF>{0u-XabR1R|fSEpdsd7DtA0;bm2E*K`u({W%l5!U{3rYtVO}6af)?D&q zZ;>s_$i_bvybgDoj5(tf zl?J=axR&tt>a{F?DLM+LrLEIPsEa`R3j#x1hEd#JRcveNH6sa*7bPiam|eLogLtUl zwBG0$I`raCK70~Phd8U*Q$;wKreTf@mWSqm8%(`;t7;#_-I$n4lf8~S#slIUK@sO~ z?LiKQ*)VEzYpVbxaWHK#WNmKsvA}c=FCn?tKfT*oO%1H?Au9z3V|&jfZF>5_r^Y{L zutq+B)|tmtSZd$ z`JO9wgh2mO)?gd(E2a&yf|F=?n0Xy}t^4k+Paz-0ZGCZ zycj$@WYa7fUf`*p2wG|TK83Irg`oo873nj6et&L1 zBhaS+KMVFM1l9pA;Lb9%lAqs*Gz8X?p364TXfGouaKR=s-hK8#<68ROWy-FA*a2??o}y3OD_ zzStlN93ZNNriGQkOpWW;UBv3Yz-}91%aB9!@_H0vg3pvFBj?l8J9g-jB0S-&v?{^* zJFIpg`DQi)25tl5!w3+;)9~}k0SV~FXjw9P?3FW2fxn~6>^{5<11MPiU2zl?o$wM6 zJR(i?^y$-OMzNd!?a0*eP)7x*P)!scoLFphYKE1WgChgPUP`iqkw_L?3E2E|I!?Kd z)q^@9f|hdq(-5O7q-H%uPCSFqU|$10whrjs;ql$fL3S;>aqa{LGJzH-i$hjo!r1rx znJ$!h5DajPJ!~Yg(5K|f;(FyHqKbKLqao`f$b?4sGEIbR{aaSDi_WsGDT`4e8 z!O+t~%%>Klf(hZ4p0A}~Skll=*g-unAJlOm9&bV?jEKYYftr!+-}ymUse0(dbm-7< z;Htx6CFtPU4G^2DZ*De*)NF%AhApu*4K|&!gQ_cd$b>~W9W3X?i1o+%P}8Lx`_e$c zO6RnN2^6NeeK#LAe!TFU_Yiz&kDjW3G8Dc?|NNN*2xlO~YW)vf4n~8XS_i~W60qYO zvR(t5VVz|GBk}Wd5w30r*{t+ey*5BR_UDCj{0lmWXolo6r6W6M>0# literal 0 HcmV?d00001 diff --git a/doc/source/test_plans/neutron_features/l3_ha/test_plan.rst b/doc/source/test_plans/neutron_features/l3_ha/test_plan.rst new file mode 100644 index 0000000..f0fd522 --- /dev/null +++ b/doc/source/test_plans/neutron_features/l3_ha/test_plan.rst @@ -0,0 +1,321 @@ +.. _neutron_l3_ha_test_plan: + +================================= +OpenStack Neutron L3 HA Test Plan +================================= + +:status: **draft** +:version: 1.0 + +:Abstract: + + We are able to spawn many L3 agents, however each L3 agent is a SPOF. + If an L3 agent fails, all virtual routers scheduled to this agent will be lost, + and consequently all VMs connected to these virtual routers will be isolated + from external networks and possibly from other tenant networks. + + The main purpose of L3 HA is to address this issue by adding a new type of + router (HA router), which will be spawned twice on two different agents. + One agent will be in charge of the master version of this router, and another + l3 agent will be in charge of the slave router. + + L3 HA functionality in Neutron was implemented in Juno, however detailed + testing on scale for it was not performed. The purpose of this document is to + describe the scenarios for its testing. + + .. image:: L3HA.png + :width: 650px + +:Conventions: + + - **VRRP** - Virtual Router Redundancy Protocol + - **Keepalived** - Routing software based on VRRP protocol + - **Rally** - Benchmarking tool for OpenStack + - **Shaker** - Data plane performance testing tool + - **iperf** - Commonly-used network testing tool + + +Test Plan +========= + +The purpose of this section is to describe scenarios for testing L3 HA. +The most important aspect is the number of packets that will be lost during +restart of the L3 agent or controller as a whole. The second aspect is the +number of routers that can move from one agent to another without +it falling into unmanaged state. + +Test Environment +---------------- + +Preparation +^^^^^^^^^^^ + +This test plan is performed against existing OpenStack cloud. + +Environment description +^^^^^^^^^^^^^^^^^^^^^^^ + +The environment description includes hardware specification of servers, +network parameters, operation system and OpenStack deployment characteristics. + +Hardware +~~~~~~~~ + +This section contains list of all types of hardware nodes. + ++-----------+-------+----------------------------------------------------+ +| Parameter | Value | Comments | ++-----------+-------+----------------------------------------------------+ +| model | | e.g. Supermicro X9SRD-F | ++-----------+-------+----------------------------------------------------+ +| CPU | | e.g. 6 x Intel(R) Xeon(R) CPU E5-2620 v2 @ 2.10GHz | ++-----------+-------+----------------------------------------------------+ +| role | | e.g. compute or network | ++-----------+-------+----------------------------------------------------+ + +Network +~~~~~~~ + +This section contains list of interfaces and network parameters. +For complicated cases this section may include topology diagram and switch +parameters. + ++------------------+-------+-------------------------+ +| Parameter | Value | Comments | ++------------------+-------+-------------------------+ +| network role | | e.g. provider or public | ++------------------+-------+-------------------------+ +| card model | | e.g. Intel | ++------------------+-------+-------------------------+ +| driver | | e.g. ixgbe | ++------------------+-------+-------------------------+ +| speed | | e.g. 10G or 1G | ++------------------+-------+-------------------------+ +| MTU | | e.g. 9000 | ++------------------+-------+-------------------------+ +| offloading modes | | e.g. default | ++------------------+-------+-------------------------+ + +Software +~~~~~~~~ + +This section describes installed software. + ++-----------------+-------+---------------------------+ +| Parameter | Value | Comments | ++-----------------+-------+---------------------------+ +| OS | | e.g. Ubuntu 14.04.3 | ++-----------------+-------+---------------------------+ +| OpenStack | | e.g. Liberty | ++-----------------+-------+---------------------------+ +| Hypervisor | | e.g. KVM | ++-----------------+-------+---------------------------+ +| Neutron plugin | | e.g. ML2 + OVS | ++-----------------+-------+---------------------------+ +| L2 segmentation | | e.g. VLAN or VxLAN or GRE | ++-----------------+-------+---------------------------+ +| virtual routers | | HA | ++-----------------+-------+---------------------------+ + +Test Case 1: Comparative analysis of metrics with and without L3 agents restart +------------------------------------------------------------------------------- + +Description +^^^^^^^^^^^ + +`Shaker `__ is +able to deploy OpenStack instances and networks in different topologies. +For L3 HA, the most important scenarios are those that check connection +between VMs in different networks (`L3 east-west +`__) +and connection via floating ip (`L3 north-south +`__). + +The following tests should be executed: + +1. OpenStack L3 East-West + + - This scenario launches pairs of VMs in different networks + connected to one router (L3 east-west) + +2. OpenStack L3 East-West Performance + + - This scenario launches 1 pair of VMs in different networks + connected to one router (L3 east-west). VMs are hosted on + different compute nodes. + +3. OpenStack L3 North-South + + - This scenario launches pairs of VMs on different compute nodes. + VMs are in the different networks connected via different + routers, master accesses slave by floating ip. + +4. OpenStack L3 North-South UDP + +5. OpenStack L3 North-South Performance + +6. OpenStack L3 North-South Dense + + - This scenario launches pairs of VMs on one compute node. VMs are + in the different networks connected via different routers, + master accesses slave by floating ip. + +For scenarios 1,2,3 and 6, results were also collected for L3 agent restart +with L3 HA option disabled and standard router rescheduling enabled. + +While running shaker tests, scripts restart.sh and restart_not_ha.sh were executed. + + +List of performance metrics +^^^^^^^^^^^^^^^^^^^^^^^^^^^ +.. table:: Shaker metrics +======== =============== ================= ====================================== +Priority Value Measurement Units Description +======== =============== ================= ====================================== +1 Latency ms The network latency +1 TCP bandwidth Mbits/s TCP network bandwidth +2 UDP bandwidth packets per sec Number of UDP packets of 32 bytes size +2 TCP retransmits packets per sec Number of retransmitted TCP packets +======== =============== ================= ====================================== + +Test Case 2: Rally tests execution +---------------------------------- + +Description +^^^^^^^^^^^ +Rally allows to check the ability of OpenStack to perform simple operations +like create-delete, create-update, etc on scale. + +L3 HA has a restriction of 255 routers per HA network per tenant. At this moment +we do not have the ability to create new HA network per tenant if the number of +VIPs exceed this limit. Based on this, for some tests, the number of tenants +was increased (NeutronNetworks.create_and_list_router). +The most important results are provided by test_create_delete_routers test, +as it allows to catch possible race conditions during creation/deletion of +HA routers, HA networks and HA interfaces. There are already several known bugs +related to this which have been fixed in upstream. +To find out more possible issues test_create_delete_routers has been run multiple +times with different concurrency. + +List of performance metrics +^^^^^^^^^^^^^^^^^^^^^^^^^^^ +.. table:: Shaker metrics + +======== ====================== ======================================================== +Priority Measurement Units Description +======== ====================== ======================================================== +1 Number of failed tests Number of tests that failed during Rally tests execution +2 Concurrency Number of tests that executed in parallel +======== ====================== ======================================================== + + +Test Case 3: Manual destruction test: Ping to external network from VM during reset of primary(non-primary) controller +---------------------------------------------------------------------------------------------------------------------- + +Description +^^^^^^^^^^^ +.. image:: ping_external.png + :width: 650px + +Scenario steps: + +1. create router + ``neutron router-create routerHA --ha True`` +2. set gateway for external network and add interface + ``neutron router-gateway-set routerHA `` + ``neutron router-interface-add routerHA `` +3. boot an instance in private net + ``nova boot --image --flavor --nic net_id= vm1`` +4. Login to VM using ssh or VNC console +5. Start ping 8.8.8.8 and check that packets are not lost +6. Check which agent is active with + ``neutron l3-agent-list-hosting-router `` +7. Restart node on which l3-agent is active + ``sudo shutdown -r now`` or ``sudo reboot`` +8. Wait until another agent becomes active and restarted node recover + ``neutron l3-agent-list-hosting-router `` +9. Stop ping and check the number of packets that was lost. +10. Increase number of routers and repeat steps 5-10 + +List of performance metrics +^^^^^^^^^^^^^^^^^^^^^^^^^^^ +======== ======================= ========================================================= +Priority Measurement Units Description +======== ======================= ========================================================= +1 Number of loss packets Number of packets that was lost when L3 agent was banned +2 Number of routers Number of existing router of the environment +======== ======================= ========================================================= + + +Test Case 4: Manual destruction test: Ping from one VM to another VM in different network during ban L3 agent +------------------------------------------------------------------------------------------------------------- + +Description +^^^^^^^^^^^ +.. image:: ping.png + :width: 650px + +Scenario steps: + +1. create router + ``neutron router-create routerHA--ha True`` +2. add interface for two internal networks + ``router-interface-add routerHA `` + ``router-interface-add routerHA `` +3. boot an instance in private net1 and net2 + ``nova boot --image --flavor --nic net_id= vm1`` +4. Login into VM1 using ssh or VNC console +5. Start ping vm2_ip and check that packets are not lost +6. Check which agent is active with + ``neutron l3-agent-list-hosting-router `` +7. ban active l3 agent run: + ``pcs resource ban p_neutron-l3-agent node-`` +8. Wait until another agent become active in neutron l3-agent-list-hosting-router +9. Clear banned agent + ``pcs resource clear p_neutron-l3-agent node-`` +10. Stop ping and check the number of packets that was lost. +11. Increase number of routers and repeat steps 5-10 + + +List of performance metrics +^^^^^^^^^^^^^^^^^^^^^^^^^^^ +======== ======================= =========================================================== +Priority Measurement Units Description +======== ======================= =========================================================== +1 Number of loss packets Number of packets that was lost during restart of the node +2 Number of routers Number of existing router of the environment +======== ======================= =========================================================== + +Test Case 5: Manual destruction test: Iperf UPD testing between VMs in different networks ban L3 agent +------------------------------------------------------------------------------------------------------ + +Description +^^^^^^^^^^^ +.. image:: iperf_addresses.png + :width: 650px + +Scenario steps: + +1. Create vms. +2. Login to VM1 using ssh or VNC console and run + ``iperf -s -u`` +3. Login to VM2 using ssh or VNC console and run + ``iperf -c vm1_ip -p 5001 -t 60 -i 10 --bandwidth 30M --len 64 -u`` +4. Check that loss is less than 1% +5. Check which agent is active with + ``neutron l3-agent-list-hosting-router `` +6. Run command from step 3 again +7. ban active l3 agent run: + ``pcs resource ban p_neutron-l3-agent node-`` +8. Check the results of iperf command and clear banned L3 agent. + ``pcs resource clear p_neutron-l3-agent node-`` +9. Increase number of routers and repeat steps 3-8 + +List of performance metrics +^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +======== =============== ================= ==================================== +Priority Value Measurement Units Description +======== =============== ================= ==================================== +1 UDP bandwidth % Loss of UDP packets of 64 bytes size +======== =============== ================= ==================================== \ No newline at end of file diff --git a/doc/source/test_results/index.rst b/doc/source/test_results/index.rst index 8e2bc72..177af59 100644 --- a/doc/source/test_results/index.rst +++ b/doc/source/test_results/index.rst @@ -15,4 +15,5 @@ Test Results db/index keystone/index container_platforms/index + neutron_features/index diff --git a/doc/source/test_results/neutron_features/index.rst b/doc/source/test_results/neutron_features/index.rst new file mode 100644 index 0000000..696f00d --- /dev/null +++ b/doc/source/test_results/neutron_features/index.rst @@ -0,0 +1,12 @@ +.. raw:: pdf + + PageBreak oneColumn + +============================== +Neutron features scale testing +============================== + +.. toctree:: + :maxdepth: 3 + + l3_ha/test_results diff --git a/doc/source/test_results/neutron_features/l3_ha/iperf_addresses.png b/doc/source/test_results/neutron_features/l3_ha/iperf_addresses.png new file mode 100644 index 0000000000000000000000000000000000000000..1a664ae968947a31c07b73d5238a00d7290ce077 GIT binary patch literal 28537 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 Cll`m! literal 0 HcmV?d00001 diff --git a/doc/source/test_results/neutron_features/l3_ha/ping.png b/doc/source/test_results/neutron_features/l3_ha/ping.png new file mode 100644 index 0000000000000000000000000000000000000000..2cc0130317576f448c6c5d642fddbbab9237d567 GIT binary patch literal 26644 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 literal 0 HcmV?d00001 diff --git a/doc/source/test_results/neutron_features/l3_ha/ping_external.png b/doc/source/test_results/neutron_features/l3_ha/ping_external.png new file mode 100644 index 0000000000000000000000000000000000000000..41dafe4b5db5f46486a238ef49173f99b7ded71b GIT binary patch literal 29419 zcmb@ucRbba8$W(XR%I5lH`&U}j?B!2>?maKy|PDkp@=dbRHIL(>%gKb&};S6FJLaBr|um#{DlmU29NFR7QV7ntMp)sbNQ zhvVns0c_Elv74!PiytND+!^Os(ePZl({I=Iym9b(Rtc-t4GRjCPA#2le*GU9YYF7; ztN3BR*gk%-$n%2Q24!pOL{~HaS9DzR*y7yrkBzatgK?BJ<}hm7^B=S#tdR4cL~8u= zA8v_@e=zcsI{#@#3%$4ii{Rn{Li&pf7-cUmco6;n_ziYgFDLm{cA6A7n3td;!otGt z*64bA3M0gG)bC}g71F?XHX}k3sbluOjINbCE)l>bD!RHai;8Z~EiP8AoeY@s8W|Zy z$Hw{%4{Kri)z{yXl6q+))z674rFwnjYX92-^OgpGj6#AoEQ+5z)5 z^*{J%C^MGt1)qg6b`7 zSgdl1|E5fJkK`))XZ;%OTK7zi+|AL+QzAJzIZCgA4)YQt7?o8%`p2v+KSRN z=Ka=vX{iU%hyLoQe;2xvm~Y)eLAWK`$*8m3n3X|LPSwUCUjIk58Ck9lanmT;X6^rP)2E zhuZ&Wsz^JJnT6%v{ri_ADMfy*S7u~o(ed(@^u2b`#=uSQ`CXhTWyMF9;y8o4)i+-uBkziDo5ZS~esj%%l1-f>q= z?qe);lh&(qr_Ri4(?`N!H2oCTAaoX?&;YoFA?Lo59BNuK_E8ek&QBKP(Dp7M~k z{Qdiv55q_TuNnDTGamO86o{;i9c0S)8%=Y8{O3RU`HSy zQq5@X67Z9h`#e&jX_SYLFRY@X!m2h-Iz6VK{5j01$Kb%g!90%sqel!F_$AtFE)uUG zo{=Nl9iK<(uEzZ|hy7Q}}?4_0?eqX=xVEXxn6LS^`vz#v;ET1Zw=xged6cxqv9%><> zQ5#g56><0VF+rGWd(OH}>oVix{Y}__KUa42`K#{YA8@wvBOhtCguhuaf*$2+&0BO(jS zYF?sU`|0C=dCa?aUDhu4?Iy)E^z>+m=%l1@h~Yw2<&VT2$Rj?-9>bqhVmUTv%8b5*9Y|NFND$t^Bl{^GA%LD*l z-@bj*Ke-C<_y0lHtf)K$Q}ezwq>2WA;ka>Y8C%;gp6{bVLnY+pvEhS#?PgmgGS!@1 z1HW6B&BCrOciU!!-L9gl`XXH>idIZ)a(<<+uP^59+YUoyWS+lSyU1q^*4CFdo2DeJ zpYSE&Q&LW_9z~B>N~@~k@2-!BCnqQK`E&!aY|VEHS_UCO76J`RZBIbSmk|@yw41Tu zN!h3>WQOr77h{McC7(X?lHqbYI-4Mdt!-np^Z9inDq!9|Io|H>Y-lp$x$PP~q{4h% zR#vuN$EGH*wN?7}j(hfiIYL}X35S-B?nB>_Az#vnmX!C!Dhfxn?NI~LAOi-$BuY1_ zs-+bIm{)Jc)6t!I0j0tcv|EJ#?kT6!l8-DcJ^e|c*82hTCtM`uE#I;(g;HY<7aC(I zzY6grzZeup6s1wZn>V*`MF7kf25D2{qN9BuW+_P&3`ydlX|WN}GcieK^*Nc}7Ngx# zI)C%I3gJ?W_QLo&{eobntXX)CN%6=R%aPj^x1*^s1#G7fM#jb?0#c#@$oM0f{8sE{ ziQD^8F$wXte^XgeaXy|lHA|fZ#ss0tYGCy+cYxeoa?bdCS~nwvlVoVa7vBF6P zyXH~&VUP}&jv~UhfVKO5X)V#D`lBheo%>lsbvfe!iGP9wCnL1mH1T#I5*$o%szWwyoP?^6BgKTDICc^jUPZbyg zg;s?<1JEXf;py>#B_1s<1Vr=x0=wErvGKgQ-$UWvD?1`Gly9hSMo1&-`*R*vxDYrs zriggVO)BZ@Q<4RIlLWNnu5}BCIm7!9wrX#G{W{6q9jhsBtk^D-SxUM7`#@l~M6MOo z9dw&j>#=O|=XcU&oP}P|Q*9&>YeDtkr-H%iYSq{Pp7k zBRR*>b%n`;!esIYl}O*+O@=j&?d>^DFFrw3;cSdh2Pr(K)Y%*6O8GK#kI#cc_;tH^ zW5H>)G{?NiJwa4X(F1~7F+r?|UG(EWd8L=hs@+hBe=HAC(kFGH`#1PL@B7%^;2%=S zK}<f4|sbh=UJPRSXD%k>~bP#V$qHqn{ep$CF}lap??L-NtR|mQ-8dj zOXvGTd8l&e_cT^tA>*^WPJ;209p0bTUPK=xr45g+)a|{wJwf>zi5hG=rB?+71+DyA z{Vrd@BO~jqiOOfgleP0&ORYxnh>0-*?=`@?2161B{t z0De(_mguJs>c8D7nk>;Q*rS#kPa}}P`*V7En+ z6K#Lx5fRJS-K?n|vn`bcKurEFK*@1H&3v(Z?iTI^0uFtxF< zX?0%OVAafDwcmQ3m>4qHf}?OzEkG_r)B|QANfCF*HzqEiOiV@vs*}G}aeLwUd2`XW zNQzmkB8p^331{rrdUA7eBs4ULa43aC$^}lDMIcAqAbWwNEt_4P z1A{|`YwHG6U1O7|W=p)k4&x?gGaqvr|MYDbqj8rgYrQhO=KTH59Srf#^3{Bt(X5cC7f&)48|D*@pP%owU$AR@GUd_=$%nc3L`Ta5lOGHND; zxr&UftUIPZo*Ls_EL>sJv(%1I{GYuRUo96DFtM-B;7mWq>RlhNn)gr!)~M6-kniKY z7a|_J)VFUFbjGtcK@mObwKkZiLxYL>QaWAOajs%9r3td%m#6In$#e5UTQv1Km6wmP@nYf_(RM+CgycS^28m5pT92;iAh<(9aF z`1mjW{&j@9zKm=PBE#O^KKkw3<*z4Df?jN?++MdrD7*PkRrz7*0ssBrHttpJJQfsm zKa4T`vXV*8D3g**eS?^|Q*$Uo{9X#fojZhn)P}I3zl>N~oq8{Pzlo@a@)jQtZ|d*2 z?rsc3LT8K%6nm(M=C-zCZX~fJnXGQES?8UJuB;uHr*UT0_>4e6)JW#27hM*yOJ})` z{ZXI>d1*tLpHqPqlqNPEIC)l_OkTsY@(e~8fz^va<%vM7;dIh= zr>W)4Rm70rx{m$S!~_)q`S8n=CUoRRj){qZLd0&lQb|q@1(Ef^9k%%kr7VA?tR^y> zYML`W_sGkXhsuv1-$aPxq2b^|b>ZJ&Xy#CmlPjYMF`d|DQl=!oZmm;h-7?b>e)RWF zrt^{w)O4*7S~n+!wU#pbTu-goC)md>BSKW}8!dL924qpW1xYRoOJxNQLw>;--@Mm5 zCfi#Y_uKLA_f#<|A(!>$m4Z5)@D|$1xH*AUC2didSV%#jOd#ucC8fx|Be@m|-}sxq zM?8AOb~h$DZTMkialrPQo14q$YdG{O1HOHeO?<$(TPn!R!69vAL@TBG)R?QbLS4te zzYN!^2^i6qgP5}SjmgyH=H_oYgc)&6${lA5C_TlpBK#cuU+%pC(q3_#q?Xg%@tU>J zeqJ8#m-%{_61xo-iGWy0@UI#VegriKM`VOV^FE_au}Q?}y5MV;(2_Q&ln!@RL@HH) z#&g+Di6_{#Z}O_KIcTPh^_WhqRC(%nLD zHd0Q1U~xP*k11X0ercS#!>8iv0-kxY6r z3Rl;Eecp#hK;Rc0jrTo8q)LZ)4HXrY%VXDacx{(2b>y&Cr+CD(d*fr@QgnPgW1Wq; z`KRO4yde>IUwF0c2uJT?{Hs@nP!eEbVZ{vP?EI?3M5+a34%H3KRhD1l`D*;hOTYnOHo zIlTCD*a4=P!_u@s%%IYQ+}+~mhpL*V5sp9#CkI|vu(72OY1Ei$`UN)Im4h3cn10zB zxuC8%W-Shwmq2K=jE(6YRDAx-=H|BK@KrlcOGSkmgqs70PoF;h^88VQFx!4Z8u78q zbYWqk^k|&Cu5Q-h^5x509=v>f9UBZaA9w6XeY1PaK#6RDkId@sTiJmRv?@*iE81Js zJDIT?BfGI!PC+v1KDiXmFthcpv$^6dKZYtbo|0fq(V5b*1_25z70qS&wt6KH=Q0RQ zmY!DaG(ElDUQm#mOL$oV4}QtW$mUD!JR@=!GvaL9=@FDRFto9m#hA^%dlE^Br( z7i#@3IXexFc(|$gJ;M8{Jfsn8j7IO|qRGoV^z`06ETXMRpvF|1%quMH$$6*i_0ds{ zvn1~CMDI$*hT-iua~m8rADxUCN&<~%=xXwJxFY-NV}Z;{v&wR&-9S>Wz90P#=9>qMSu*bKm3VL&lFd<4w#|KD#Zp`8e&udKPDlu%*g}=uTHj%nTt;)26KB$2 zPYH<^eSEMAv1beWdfH4$c|()jj~yRGlY5N9WDeyC?aX9l21|_(n!Y1QpY%GeG|S1E zlNh|>bkG|2K{D80mo_GNq}EHwH(ve`TiU&Tky`S}zwTaH;XL&8^xp_0atF*m>sAy! z+zSTEAthazQa2C6gHqc^5SbGSEcA}485vu1uyaQ&TaOR6N7YT%LI+a?9Tpx`sI6ow zBp|-3n_F#El`zrLqC)lonHG>}xW=Q*^QA`afPmv~*g6DX92S)@{SdF^183W!F4^iS z0v*kPloUK->1?i`d7lM`N|enfIKjaC&1PN#6nj%DOA-~jWphAJ8vNRbj8<)5U}$g- zlR(unR) zUHYt7MRag*02v#Bcu6HjiBQqgTf2?F#s=8SR1r?Z4x(wG<_`+`ma+iN87{g*Di!x7 z9>z)jOald@N$c{!SOw|T;}x95JjR0q{0@9s?|qE@Y2$D$&jtemdfF}BmX;QKr__V( z#bSw&Y#Gqi(SdQn#%0s~in+bm-3C?guRLcK222=5jeFpvC0~GMW zUAwewXvC09JgcvyLffKvY2vssvOGj6EIV6B2@xlgXbxdqzV; zgCgX->f2-1ygZOQKO|ctk-%vXKdQnKv#w=b1!CcoCr|8et)^N+cS8?B4yQ z{KmHd$j-{rBFOAn@=}rW>X|Y!kDN2e?5e(u9ttlp>Ynn2y6a~&5c^1~ zp&)WzIeA1uDDg4W=nxA>W3$QzqM=DdUqL|9&mtJ?y>0dgEv;q->z$W=7+J5WLSa*( zr>mZxUP2g;8g=2<|V&wIm-nSWef>=pAD{zRZ5loO^Lj*t?iQn)y?Q5JhZGC zqP09R?HeZ1Eb9%O*fHf{HoJ^fu7^gUmy1$xQV0}1Oc&uLjYtHM&IEb_M;a^lsA|7hrrvmthlWBFp4k-< z-!ED<9yyS!i4;94cJpNkzayo{{%lobex3i=1?ZF3GUy&ZxzNY;5`9+ z3ZIbB-)gk9Bs5|zuTCS^=@17y5ETlIa79)9_w`LnVIPo5Vn4K7BhMAj4HGEVn=YvYo0#RF~4`9Q>yFR3$zf`Y;n zuofMM+_jr>eRrZt1aJ@)0otds_hd!}JtSRV(MZ*CJLlQaXN=HoYNrkC7yTx^kAyWf zufkqSVwLQ@krBywf2F1G>hwMV3)AM2@?Gy+OOX?uTAE(0WQS_)vo; zMcO;{NpCcXxRIjM+4*E_v!Yj+q&NB+^nC1Vet9TA9|wW>F0W-Hl>pA0DVx}A)AJH) z%wElle={b?7fG0^1e79IStMeu@5?GHyHsAI;pZ>wI(S8mX#`!bKD_UdKO(fdN9Pkm zoE>$7_&G*Rv10qLP-CL{)QtbsN2T4FDX%<}ev497laa~vZxE5Q{X&)6{f8ntOvVqQ zlgl(^)Tlwn%@)lI{Yd;vNhKpXSeu+ zA{7RC_Z@YPIt#?oxkhuq>Kq5@(B+6%R((^ z5<6tqDWw(@quQuD6YbP2OW*0Lm+E&qSAo|1D>41md1l8d9QJhA^%w7&cBfqSphSig$kRM!51$Mr2S$IHI?00~K-WAO^_hbW<=WcJ6;uB->^!nXV1 z2M|k8HVeIuoU^w1atFeWk3B*6cXLf0u?%W3jOM)V)>KrJmivf;+@i18U86g9SWtsn zHFscZwL>ivr|pw9W1L+7%8t@TPuw%1D(~?V-5f{j71Gn*qVYF9Nsm^4or#pDn7+8s zNe*kn-a+DH-EaKB<{|_C=poh?mZUaf``lYL2isI;z>gyL5||7+2d1@CqvQ%4l8Jxx zC9J)+8X34Oa3(*byfEq^ixq5qQ?f0XXJoj>IprdyuP@5;p6JBwrbdb;V5tr5-jTp_ zuUTb?;XGHl9c29I!_qvbhX2&-Zcdw*yiQeS6yf`&w{Zf9kF{@z?Xgf(kjgP2*dV8mXi^D)gOUt!8%m(&ULKOyx zPhkJB`~8y!QUCdIF$m6!>H}Ste8?oVxw)xiH8K8ga^5KgGbqF(qjBpt_%u9rS1U}b z1WOe>tUmQEmHSta6lD*sjPOZ`2wUGlf|HYsxVSIR-CWHH15)n=SKZr5T_G=DN+DtJ zfM~~7Cv1EytnZ_ue~(!Jh}}STla*RSvu&&{I%9x1<*u8wK2cI4_2-?5Pyk9I;Eh_f zo`R5qkT#UQEaf}99`b(l&psodMHBd%RkMgU^f0u`L{e536R}H+zjOUOvY8lVBjsZ0 zTD|tJtgib(yX0F(2Pz^XGqe2$Z%FnAY)?qJ2*iZz>@{dG;GPR^PQlP{)Gyc==yqKz z8G_0X*`XdBUM`L{jvpVKXi zMcya}YlXWD0WYoC`3y*(GX12m0l7*=MFoMV?v?J30=LSX50#*Oz_okl?HlQSDl7s7 z@S3k!v>@nOK1mbJP+^WvNx?x3e|=6!7H}@fMr79!(BBFHz{}zuMfZP^_n<#m?cqZd z1k@SGuH`?`J?&IJ8bJ*rE5sFP1Ull2>!uN?7Q>c&rF^PXw&X#!pfLXHDUhl9Fak~{ zu6Z5pw%?EeITMe9qAS-*%1iu%$~Puk@+`%R0nVXd#eO9uyNW)yu+Sk%K*Xv45}G`A zy&`G)d|(Gch(i;c%>QDT-v|ll+pFESp`A`Msb$JT8k3mFj6o1d!(d;x)R%P$0afGo zR_gO61>IH#8WsY2Bopo{?7(u}wEV8iwnkA!K~nf)$r3{rLB@|GuF%3hK?Q;ovQ^se zX8ne_H21s79X_jH0bNP_LLvo#CbrY}*tEVNR8>`z(OzaViLLu05WekC!D@x}-}HTZ zNJtMc)&$fJ%n;YodxjS_%u7hQxw%2DMnQ_JLMI}^!sOV2emXHBC;{Kn&jSkFHqj#!Ob=St?`g= z#h3qYPuzjDA3Y{2VhZa0u`nsAxjTTt;AnB`1T`K70Ue4(4SIWtx6eEq1F-&U9?%*n zN7LW9aRXk!f$ULCcHLFFXthX*CR5ABt-MZ1a9|}UG2%;__bDc4Id3_U#Zb}90?j>7 zfY$fZG&(vu5MReS->b8ni*?91s7;}Un`=KS)y^A>mBOjrpSgk%H#cYbUo=n=&}XXM z(mWLOJ{BmWkMReG1u6n|z<;eCsncj`lu132;W{6&GWs4p=PC*aXoTj?r;qRpOw&G>KK#N?xq+u2+UT7Y9|bKuLXA{Pe}T@yOZMT9S- z7jX1abCX=vs&?f@ywA^%Bn*x*_;u0Z+ZUqVqB-X}{d=fh(+U|MKSH|}cv4fIymuQ2 zq%nK7kdhH^ih^+7SqtZ{GSOAHv^|r{0O}nMNy+xsUq?9bsuq^sNOGUQL z<--nQyXuZo;9J&@x5%K*-fDK+s6FEF$B2n~f;82@+xqphL(zexU%v5SVsOn^<=i&( z2;({Qun|CoOrKHFQo+tc`XTzuJWWF0NrC(d^0gl|v~%p4Q4iR_90kM$;tI@9VPV*j zU5r~#{-Ih zbsAX<8X8gqN5LZ@`NpoSpP7+?cE{v9h#Np+9;c{}2ZtQvp1WeWC6-H}cFLl*UmfOV z(=Erlgno5ukSPjDaIHr9girqVfyN05aeppO8AO}!tu$K>7auL;nIER-@y{@Z@V)TE zSS-iMu(Gi=r`-=XEYw0E0K5U^`9C9Vdr&s)(AF)58vvd_F$0AM8&U${g}0a~o`j0| zLq(;xaNn~<(&U@P8w`+#v1 z`Y1#Z(&?_p`*wvNKT2C#TRV5oHU?gq0WQ)Eg3KoL5@z7`TcFnwO3bN$-Da}3>zc&* z%+Hy4JK)B$0?kL#DAp`ly&BG%zpbV$JjyEz}W_M1DVs0cMRwO?L(c6QtV5s=K@m8x2R+QM0P zd>e4EdbzoUc&yy+QUZrwBg_{*G+>@I1(hTrc!!e=E9|alnp3|qrrc&9FZ&)k9oNqtj}##n9GIc(oSX(2IzACm5Ojqdm<++E zi+s=l+MS{ttd&j17u3o^%N8JDgImlR77s>SR>6`1Tmm+4R_Fl07Nyr;RoEs_?tr7V zj9)@KPXnsk1M~$#CZ#b4kGEYWV6XmAUQPm@2abXurv%svP$*?M_AQajjpkO$vWSd+m}^liDjJo zhKPVCl3d;a1U;XoLo}{6UHUY=RVQ=x=CH{du$A-h@=8E`3Db;>0vDnS$0riWn@wzS z=&M{dT0w^$byTn@(Pn#GgoLl(#g_^l8P=d;<*4cqS}t-HwnY_(%{bYmqz7Qp+$@Fo ztx8>@od=->b*H4F;qQ2hYoz(B zZ_;MWygr9@$acAx7lit2SsVtE2Lq)2<4aW?$~7_6PEWtu;~6zd8*1+}3kzFc{}>o` z@4+zURdqB$hA?6dU2!Wb_8?rU$fJ$Ay3VGPZw|AgpC09Yfu%@bD*Xp452Ej?tEu_9 zOt{HVuB^)9p+UB!<>0_U4lGCA`ey#mH+I#)=%B&S06h<(oj0fCQe!uSzirDg?XbM= zc%C>$;X$aRR~eK(sipF?GAu5kHgIV)>G#GZ10QIBqhf4ook>*$olik?j}4o^p(4Y}g!~VMBilF*DY4WQ+64`l{5NYtxMh=> zr$R%Y$R-L9`TOfc-r%>HXl@B7<^~I*)cyN~hyddM9|^$$`|xHL#!QlS9+EsjxkZ?9 z`m99T4p4PPA2~5!yik?;rr&GKr%#-SJx%Sa<}<2ZaUkm%?}6a@|IAU<{_y=DljM zdz`1U!b`99;!WIoQ+48IBC&%Qt@O3mXBx1?(6c>2x7!+~fqV$` zYqmxdlE3iYd#CLMMK@=goJIwinb}!x`#ITwpdce?P+608*m6c{;-hpInDsxtIGSMp zj1B?T)z$*<9ah~M_mYSF1+k`|va@}m9)Lcvwo=gBq|K!v%`ZotHqn~S_^(TLPEtZ# z<^8VTR(ZihRgMe8HvaL-_5mqjm@i^#<55ZC*J+Wm&qL}o*Kgq})<;n$g)B`^UaJst z+oDI4_-%j7aoH>1JqnB(LeT6*mIv!&Fz#=9fSQhX-}Mbh*j%H}M-4vj>iEiM+Ozn) zO-YF?n{W>o@+B^JSi}KWwC&l+p7HOWAMozu`v}Un~6k#CWj4|e}|M1&y?w%6`W3`Fxk-OpzY4JTRp081gQvJWkFJjEYNX|MF#I`Mc}|0VIf7z(9V^j2-P_6U8hz43OjsCsm+hP_cRR7*MeGWLM`wvH(6J`fTUfvHN7gzQz4#sZ6x6 z*DoUyiA3dVqnK&r>)%hkr}Uc0lNJi9-U=4ADwujNo}m=gSl8u+h8ub9GU8Q2g7Hjq zC++ikQ1p@IT>Yp*MCmDW^22&2jmH#f+7McF2rxU66)fS zs|chi1rC=$L)G6|tg1@$RN$y`5#kW!2@pcqM^DBc9h-01k&Aj{b`#($D*zy>7#$Ek z+-%&V4B+}+BiZ}*KEA~Bk&|A1i5DoYr&Ns7B^6QBM*S*Cc0d%~k|Qiskvc0ZxXODL zSpbzA9Pp}1rWRzmb*mwUPUhFU;qDk}%tS$lkH=?`#a0U1n&Qi5kypXZ+Yg;rx?8t$ z+G<2239lTECVDE{E%h>7r4l8V492++N#}SaIF)YiZ=k4xlrXPEEHef(*YoeT!UBBP zoZV(_F|ZEdUMVW7(K(Va=j`3Uz{8u~KNpYh7G7R+{tEC_A2pxxr4M%-+VGFp4s zhd(k6TN)h$Ez_cHKIQFft-3NK- zp`n8l$>gyuzb$!XM}@un59E<6INOIS8(sa{_`t>|kt(B3x7PC}EMd#f4^7cdb37Vn z^CYWX`FkZ)ZHkS9{br8S{v?k5zlG&E)%=Xa_?A9kiMQ##PPS@`kTe-r=hvlX?U zl`|`JlH$WA8t&76z`8#CF1Y6!4$i$*FFLzrd#B(UC$DjRK&9z!v4N>}xxHy9EJ*H{ zTm}2se)gvd{sEjP>%S=uB@WH|3gaWeL z;xE{9uw17-aGekCe0D0+j?H8pQZ=uL?9Ja*6U_1cIbfD1(bjyC#)xvPdd6yRza>nP%kFQfOR|<1 z*n=~cs?b=Nxe$V!-y1(;v?!0pH%E~e(CXC8_ zm9nJT38htdI;Yyd7B(IRs2q=UNiL7YP?wZ>NwN3H~9UdVc0q!_IDsEr| z5P>I{*p3_RZpwrik*^H$8va^eExCgD<8#VQWb-{r(pJTAQ7I@X2_`0d(;!&E{SLFM zlpl}hAH=IO9Tq4{+`Y&SI|@I&e~-Yz!m@-DssEyZ3Hq^(-&E7_t2VvheV2NR{Qdp8 z?vwPy3XJm;;0Bh^E6vI)#rR;0on@DIPVQ`eD|8j-CC7bPainrh5{Ad& zk!x-<-Vo(X*~s)P!Ci>i^}*x6siLRU&TLBeBqc#*A*rVt5{XnLCwPEFKsb?t)zK3GuH|EQ0aoMuJ)l} zl?(N+mr+fX);LJ6RXd@M)|Prtq-*hSsGgSp5@alNN&2^dA|CmYELMl`FHdL`^^)R(_6=Bagu9?toT@%2uhV} zZRxWz>E9f0Eat8V-<5D*J?#-V4X4^_Ynl5OHd{OwrvsH@;k4ryu!8bE$VJQfJ@$y+ z`fxZ7$9@Z|j?3|n%O2nOQ12-69-7ddHcsP5Bb>?W4DV0#YpS~b@Jn;hRMqooGbW%H zyjkhPLrGE4n7$X)N;jSUfjqmuLyUNOE&Ul~TzQGn-#&W>biT2;>M%4*~w4D1a%6^~V4?i@;hx$N9>Xu`m)KTTMq;V^p8Cb!k4 z!_1=xBOtn-QWZu>oM-lh-=o>(3MPUvCup|k=#i`Av6-;@nb`v>u}Z})m)xF6QQ}TNj+>~m|NRu&%rV-tDsr|9JsIEJ}q`PA2sz-%+0^%v}GRy2l)uTGk;V)yAo1 z*EZ2#u;Rq|DO#fZj|Bz#<-Lj8f#LqE+a*Z?I*-EpUJnR(&EJ)0&9z%FS4?1PbV|r+ z#C&zS{J8Fj9Zq8ipYG3Y6$WNjhXNgi>{b9rsFCLbfvFuN;ZRC9}s$ZZKyQCGw|86Vobrp2MtZw;3)n(Fi;(fC&7^*F2F*#NAQS~g>A&p$~& zhsmh5r+`H=+?c0%UGV*7iw}qASb?_;*v!Gs9e|z zp^XAiA1&@nSJCsq$b3EUWvqODaL1k5678i0@y@bsasGF*0YjU{p+_Zflh(cJk0W|n zhwRpWT`Om`IkfM><@P!@tJ^;Td$sV{@wO7Nj({NVMGl`ExF`WVyFvGLg$nOvVY$H3 zUe6^9UvcJ0YtFA8=lkr9Z!jto7mQZ^6;)QmYGdL&YV-0U&sVqr%7d?iHF6i; zDCjQ*bTi3nny+wksE4|QbrgR8qgf{#Eqx1Prso-#xK;r~w6qMF@w zhJ&%lBUq_qqI6-jr+>@pW;H#cX6MfI0vHQ#P98-?*{+W!ow!A>lu%}5U^M^v0durw>@O-=ux9DpX|3L<~~#9wVHgn`?&7X{@{YUtT6)Y*-d|J_nCv+ z%wCd-W+>XI+U!!Jh(i#t?Vq3=kN-MNR#R?Mst@j5nA*S0N^s_YyUfqNrdp7g1;=a} zz%ZH|iIvRgdy!hUSfRi6Pa&N5xa!HR8cUEtb+&Zpd-%<$sI&Q0l_z=kdwotg^Czn3 zA7b@J%`#5!{bJ%0$M0Wy7I}PvP4twie&;ZVGH)o_@G{4-bg*iNgzH8#|9*R_Xw#bY zD`u)Z@_v@*q=9nA_dM8d9(2kPdLL(Xt3XXNJ|s*jh>oGj*feM;GnPcvsH+zoRHpwo z6s_Ho&v@-ui9J60`)B)B&dz+$5ypKb1{udu^c-a5E??=#DBc7bqb0USxq0E>gY;p-`xedhaXFc9xpH zzcEv+pFo{+4}Cg4RU~jfyYSs)tzwr}VHIK|aK7ek`HrSX;MJ?GU+w7Lxxb~vCVK&l z>S%R|bwDfH3vpwRY^^q!mJ9Jl%#-}N9PYH|j-v4P(Io+=gSUMa)wd+TXEj{mz@+bU z;*>SXLkK+eoHSM@GE+dO4|%@GbC&PV_#YvgrAOwRFudop(lC&&hJYBF{iec#%>pX# z$hV@|`Gao=PYWe6j8$y$erOI=93Ne$x$a?b$Rrg(Ik?na<5q>=eL_QZ^lM3QGY~DO zCcqS_=Q>Wxu8Me3I=QT_)jIbkP7fCfV1*K12JPZ<_qqTw#aZbuE@8!j4+`2EVCG!r zd5QBUmEi1O0PehPY`k~=r5yU#-_K+J1-YcqumKgmzrkJ45AExB;-~xVY~SAyM6#Cb z$d2lT)Ft2EIl`*rDN}i7B@)*4Xn)M}MrzWhKP{J8Yl#JkHaG{U9lzBp`7FHFCQ~c* z@hjlaTPcxhen^<{gF*GhexP)OPtp-4Ij$_6I-?+B{@3_^=h^!8-1= z5FiH0Bf0bE?tU>2q<|~MxM{o2{yKx52?QBSpf{|%x|v9PhZ5AA;qo)q=tw zQa%i_(8Yp=4EPCrlJwICE*kjK+i>!eHzD)!?AI67&m%QS6 zoERixg%89@^v@c^s71}$mdRF!4~NvM-}qod?ds*+NOhZwg#V7g@1Dgu&=3JJiCi5 zDEk7Xek}1QCjPqrNL&*>Vrn*adw*bp)Amr_DPgi(4;fkh1LpVPOdPmlg45DyU&Y5) zk~c0V;)xv0#Ua0cDEif_W{)tW&je6qt2JN=)_fnF74SVn{ZD%5WOGlf6Gy-d3PK|L zS=}p@@y>F)+34-e938CKr_)U_TD;pd^wL-eUq2hRZ+F$gqFydocOCVO5T0JC8+>vc zg2&GgCVnum@{P3y^JKHGifwQz97_$vll}HR%I40=)G)IF+u@|Qn`fg{d)dqdk{h#P z94sMW0;v9B_IFyzxaIq$BQ_oTnFkrI9{2)@Oj9gj&*{u~tmtVWQkc>gr$y%QX(?&$ zw|q@>bMn6PYcv9Fivjw#W|;3?Z{l-KVMaFHCy9CCc2@t!&o}LTK`LuLIhz6ZZ=XoYu-yWi(Q}q!68zKb1vUH!WIo%(qwYB@Drc3JXAZLK{l zLKD~ez2H9E2l>)zcJFk&is8^90ZeFUD4^h7od)vmS)j$G3TtZZI9+9){79Kj zXy8*$&7v0m>>(VYxYZm@DsGWi=ae>qHtfVcJjyWsCso6BMZH-zer=VjeWw8(A6VeZ z<#U~s8Dnr0H(U0NhNfs=!yL_cF;hrnae{H(i$K%TrMS*nxwJH&@{lOz)VW&KiPncX z>RPY#Ez0$+q6J%P>9r@E0s@y;>hwsLd*tue71;H!Pez-lN#<#w*=1EL>xGCRCw5ZuivS@EM4NdVeJ~f;118;fb_vYVc zEj`8BBdo~u_EpE{hN23zml}S$fD!AO(1GpsnEqurR{ec-j!zYf&3ydQu`0kRl|yOq zgG*{o_UuW{46m2|c8?zTt1yj^$!9HmUsqpa!1|)i`8PD#QFfa5OLWfBe3hNQFHK`% zI`JZq+TNdt{9j!8P;s1#uo1x6GGdZ=riNWopi_{ChetZP4P%y^8~K*;hM`SXh<;nn zV^&N3``Z=r#P%-ZJNr3Y$h^;g9F`cL{kbi^kM8G$OMPvvYR#x2^?a#f>AM@t`vs-HKYR85e8n6TG@V_Sqatvaku?3``O4N`!L{MhRSoFL z4COF!E)kLNlKd-w+8%Mq8b8!f#W=pKcuHYqC?j58d#yzhYbN&5R)3?XV06#J|ocQv=g3+8yM%rifT6JL;Vww8=`bJ)|Mv6tU zGo5a_A2~3a{_1z!OW%#{0L_NV5Fa?|eKkK;3$RQ-XdLaEXx_LVVciF0x$597bRky`G2^@{lj<3w^P+|Xpp zfi<~uVbbME#I(dW1VT$4*~HTOEE5k&GLkw;J4;48&9PkJY}oPHu}sHsr|lr0+1atw zep(6(XO{(bFH!jNmsXLu(oM5Z!TRuA%T?D#PsEZR+9&@?9+mMfG(X#9JQ-KhIjUL% zr2}5tuOiMBL=`Jeu~xQPjR;>IDpjzjMfFzsUY34Y9o?7xlc&0rTerL#m|5aze63a( z#|f|GpK>@(XMT0uo~=1zIvg?eI14*D8J$5KX<45P%r)q8?K4GrWhsX-lxlU0j(fWX zF+jt@MXrq+%G}FLxInvm-NxZG_emSul6PTYMJ3mne63zAPsh{vD!8t#J;t%DZ>-l3 zkc|nO2F3%-&&(4w!Z}?t9(GLK&Qk8o;2`DX^3#Afp&6gF<6MDDnqi|#m9{)Xe){5uYF`D0ShRt+nX z-!fDm*(f^bE-0Q94u1LI?p^&x)n_)im|x)@AT^=!TC;?D-&0iOGm&_unot z>O$%=BV9dI+1_JeKU4(9*SjlqG&O@Zy|F7l$}kbzD#VYk{ZF-K-)GwTf0wo$>cwOPG4;}+B4(j8FJtW|quYB}jJ6jWV+)2`RvD$Y3%8pJyR7~e zXqjpY`pmO)$+}%1;5v~xmJ-xCS2Wh9>rCnQnU;UC!q_obeU_A}%_FoA>1{_k^7uP@ ziLv=l-l4|f8hFdiehu=uSSy$Lm(}V9Hu*2v6Z+Nym^fQg9yw6vj1x?&!tKmwKm>zHZ?j zCEb(3Zs%8^*MqcfXcu_6oaGn13P1uD+gAox2c9xa9q&we#77_0rY4qohb)Poa`wL7nT@-)=|9s48H6 zi~6@WnOWbQA+E1at^~}Hs!)6e04fitj`!K3>R$Nw5vu=rsbP0OO@A&bWg+J{CAIto z{i*agGnO|5mgC10f!!o1D5&O?+?QHPe{y+=sZz(m0v&o7>EzD)*CURR&kwP4b2lX% zrt#~oubptoWe^(~9_GVLKA^-CDzpOLEU}(C;nnCN=epubbk4yajd#23ETcUTvzbDP zPZNN$wT##5XMpY$%#BEkbd@QCFYbTCBrPqrHm9{ZIJHtMIXBCm^~pW^E!J}q=rF|L zcd~u4*AUmCs7U;WWk#;78e8AD$U|sBUpQ`)CfWp(-vcRoz$%7 zj0Ai71)!5p0yKPaVWCwlWgwa7?dwjlLToy&LL}*#oVj0R>P0^LCWZt`E6)4IGp(jbnz@xGk0uV@SX^9`ursKBVOJ@m zo3XPLo*nYZmzbz9!mdPYtR*!z8*6KGrX=V6u+tgfh4s^MShsrf`t_hD;`W~UjWDR} zY^-!zCtkbrvM(#(m`_^k^C8*g9;NXzfW8?*e*Nq}A{=@1wB>+cxqLda2SYtkUY6lFf(9bo!ve*DM) z;FgOU;^p=wbv|p|-0=OpF&kBna&ZQ@xQxeQ(rm?sBL<&ERM}aoxwX~I7U0sNr@}mu zR69D%rx_I3f;)?AVft}3GcqctXYu{0}=AR)}z~F(! zdbhxolB&4}@l~`Fxz|qlj97X^+DZZHhOrn(I*bb$@yL5*-Av>A{7E z_9dA;F^7C(+$)h@*w#EsMa5su?xThg95g@g{30Nr-S*$u+BA3T_rS6p)pxvhVC(g< zT5sG5&+0nYWBib|W(zgHk6gQ>BJ8hMTm9YX5E{D8V{`R4d6B7%dJ zg(a=9&hLv(bEgd$nE=0+Gf5B3CY}+T3cy4_I}UimW22} zSCOz!@3Zb2M4(^hZ^9%?Tm$}=fval)NPGa%w>I(=(mhsx9&YXCRR9|iC%5>@x-la8^XJc*g&%M@ z9Gqwc(7?nZX--B^fXwQ4(-!Qt1VE~DYy>&mN@1N!6_SD+5j!;*EmVHf_@PI^n}$q- z-AJA!V`Y)}Xd~ITU({0X(-yvdMlvJgVOk-<(p4nCo3sZHu^Dk=J>6aL5*@vpQ!$;y zX7AeK*0vHY(k8UulsK6C^!GmV5=y#{GaB0mx}B)==XKx*10$o+-Mjp34sCo57Ja~eLZl_lRz^Q{z=)^;RPb(JaT~&wnClCE;5}3 zdM(E#$0!7_0EBycP?$0;eDDdV4HBS&gK2x*j82ub@BC>aA%sR-fS_%MlkbMv=*Woq zQt|aO!LTZ9U}7>ZU*OangT^NTGv}se0Ev+aDor=>@9#Y{aUxNQ)$jfDvMBMN>;GI|ua+D8ydy5HzkR;h79~3z>KYmo zGuv-uW;O*nFAS5MyN7dPif9mT6qq`_C-+u!>&|m1iz9?0o3-{Z8SG*(^ zc^_5xDJrTD#66SGK|HUzB=FCWX9tNq5k9wbrBEpH%Cjr^t93h>^EVTXJFgAD-r3&X zj*xPQICmlt7J~?;j({?qja61wrtsCURqr2 zOVk3iaw-Vh$q{z1G|VDvZhV=lVCI`%)i#Vz8bBBR5YBcQc{Dod0u`8S;BzE^-Diqw zV+*daK{fXuOvJ_eTER2V_aCuqzW}UJ=pVteXH|hk6;?gik{aui0pRT$S)G|N+ho=T z$V^-$RNl8(J3093cb~2Jz+WCw)?=^w&YY7`HFyJ2uj7Z{aN}ico_4IfW=un}2p!FYPN9k(nJRMtR5 zOh&dLyx=dGBdWr*g->c$*eR=9ot~by4|5HYKY942H4YTLJj`!EF0|*EV<3#E5U!ksK`-)&d z^ue)UItdfZ!o!md<|=uTA|xVW2(m#Sc1B5EgH;eaAa2YCcDudEg)4%mXQ{e`(35N2WC5fTun!M3*61om1f%#|&@bky5qiYE{0dS%&o1D#ZG}vi@mrWsT*l-=J(FMSi>*1=sBC3vH_tuFW%5c-5}q# zQp0974i*S2S0%r!^EOOX^r~&NhmXbz&lMG7p^0T&Cqsb3n1s?#83+AP&6qVipjNm5 z{X-UC*L+0=J$wmoEPr?WEMDk)*f)O7AY{4zGnS?yiPqgzxvL3y(%QA zRM`R>9rNVk4H&(D-eGkVwr91|(u^iE_)4@C?B&AKzkJbw@EVr+ogO2(?AMh$`wnJN zYvZ|c4ZHa<+FBkF3?cr9`eqb;}KFC;7+3Ql3pcW2}CAK2Bv`OtZKh?U}7%OZX} z##yRuCZ`1bWfM98SG9a9t!9(5(3c3InEDHN146#Jg0-%2JjWkyn0Iwg!+Y}_QMUtL zzH_c=Bh_l)GOcu8A$i6l_=}?AGk1E(@@c-FdiaJ5e*S-F@Kr$*viv6Q0=Tx=HK#=J z|D5a4;e#E1r9qH+s@;RPkefLnRaVK5YGcOy=M6PI$fOLQ(ZP!59rw;kspG4t{<?cGuKQo^`&p}+8&3LpWA2m1 zKhn}Sa0=VS*1tZU_Vx9ZxwLy-2Uv(t2GMa_3eh#!EJYb^pLm(IAQ593M9K@LPGe1>yiM` zc!AnN*DE0=2J(A1fIVct*o6caZ5m>&DR3Asuf@bLPNDN+v)nNE1#$Mnre#lZuAez> z6^9l)2WvXEFo%KiJ)T1)q~BwVt1$*0$p8(@%X{=aTrTX~jRcs`ii@&La-Q8Bp;NL2 z8KGGR5LPe+u>uE1r1uvs!P`MJ0S@m&$N5Sd_yoh@!%6N>XiF&sU~?3Yp=xStg@Kw6 z6OsWOLPJ|u3TuC63Y&vWuB+2GFh>$qnB?YZ%Bv26#&of2a8-5n3aB31wIyK;4)1>6 ztEv?iLIfm#Nt%KpG{Dsqar3u9HOdo~QTiSSyUp}mQ`^03539@22KqpHFQ3#A;~u@>$MuV9`k!S4O`oE6&!aK zurTUxo)<);qn-VYl=Xm~2aq4QKd`Nasw41O%dh0fig_T>xg!_m@=kL2*F1*zf=sE!MQK*lW=D1Lo??lE#e584vsQu#f$$93TdL{SV@EgQ;1 zJT#!=lC|a6ufhz|4(D86Y!K7H$9PVn*4Va%Ap&d#91S%l5C?>_%Mw6d19=l4^667L z{Ju5oUTI(O3o;1GM)!={nj5q$+0siB!f<12>y(W>W&H^Yg80mA7&m@?9Vl=CYvG-+ z8A#jksq+v`g3LG=3}`rr%-)fT1cHwwNWjtU-!J9y05sn;t8jr7M>vsnU~~A#k7*#% z3bs>aKX92)QQ%0CAq4K*?Wi)CulS&&FoL^BiwJ$_@OY-(L{06L{KoXfY)dH$sR$-hgwuQ$DT&giKlTLF6UAyen^R=L0QM{a zAq#y|Q`5XwUa[te-nJ@t-5QXLun5N$@F$KX2)8(S)P5J|6dA|hGc-uzC(93}RB zV{l3sN-jXT=EGRJQ~1azE1(J4=TcmK7lvv?!Za`#&?O0Lw0`U)EGin-{b2QtK1**k zsn#5em^Yw+1YnDZtvve+dz=PkMyD!wHYy_@xKo^FT&jWXp^irY0sUbyF+L=5oBmpk zH8dQ>{9fh-PM)fUm+;wqk}X}{RO4E2Jlx6~*?0z2B}wf^wzjr_KH0&~>p&rrgs0|J zCcQWRE@)D@;ot*m(LZ3BRlsBJrz$va+20b|>$ePd-0_&X5aw5;dtj%6y ztH&$Gw8`&} zIku6s_HPTZK;B7FVB);oVt;BmRbeX~d;{o$p9aylKQB(i_)u-ZGulE5ov|74}_Bst*_A+W5_RkHHrMeA{ru~jI^j)X9& zD9zS+6CfmIpF0CY-OdKF%5xYbngktF44Hqg;Y2yWA}rVFxQfVLbLFYVR#-!j2!I*%A}hGvmKPpIVp_Ob`Td$G*pTOpY}hh`F6jZFWX>R*udx@ zk%m9RgvaMl&Yp4h(Pd5{QPGO{4}q&8Gq3KfUhVHgJ_YeJ3X}mXeb(;*GkttC+{*DG z52W;9HJVYEb)h�`+_tF`%IC);Q**-Cf9SWe+%`6)02K&-Rr-)3g9F9Pk#lE^s;K z_bpM~4?4jPktx_{?crrkm_6_?&cTyI80B^H@P6<}z}B&Fy_$x;*X!wRd`K1HJi}2) z>%s(L4-SA@r|nbKhr~h5?;T$Paa9z%IYrJk2H+)FZ=TT_aEXISc7~t^1#D(Xpfo}z zDU3p4j4};DDd1A_12bH9!Ohj7Krwi1EnqZvfTDUnq~=H;Kt$~s?pQ?V-)-lov?vHT z@ON`eh|5zSFFD14N>wK8+W;4-ug4=LpW?ByzZ)CE0s_f(!(0}HS+!(5@QU@|S^zbN zY1+lf7c>-CV0R4ruYR-^g^lLeCKCN_CrnBJ0!kB9cM^zNe*ssUinkAcDq_kaz^uLUQa;kyttSIRv% zo;!nRu)BX$yMDa`oX~Qu!nQ6X1Z3z8qKj8CH7b({20+}@;z!BX;CF;ER7k$j6|IDV z$zBpSbmS`NABFH^;l>fu1f79sEksdFP^$p`d}+l#X$ zXP?8>d3h;rAg+YZcN&n#Ip#xVlF$AKtkij5OF9Bn7w?OdAkzSAd@fY5`N_YyIubzT1y?-B;g+_1(LIpzx*) z#U$YdM)vcH;JB#MdCegoJ|Lz2p`qK@`ET@%K2F9%llFuP2o?MYjYvR?9<2fS8KSC? z+iYL=gXF>{0u-XabR1R|fSEpdsd7DtA0;bm2E*K`u({W%l5!U{3rYtVO}6af)?D&q zZ;>s_$i_bvybgDoj5(tf zl?J=axR&tt>a{F?DLM+LrLEIPsEa`R3j#x1hEd#JRcveNH6sa*7bPiam|eLogLtUl zwBG0$I`raCK70~Phd8U*Q$;wKreTf@mWSqm8%(`;t7;#_-I$n4lf8~S#slIUK@sO~ z?LiKQ*)VEzYpVbxaWHK#WNmKsvA}c=FCn?tKfT*oO%1H?Au9z3V|&jfZF>5_r^Y{L zutq+B)|tmtSZd$ z`JO9wgh2mO)?gd(E2a&yf|F=?n0Xy}t^4k+Paz-0ZGCZ zycj$@WYa7fUf`*p2wG|TK83Irg`oo873nj6et&L1 zBhaS+KMVFM1l9pA;Lb9%lAqs*Gz8X?p364TXfGouaKR=s-hK8#<68ROWy-FA*a2??o}y3OD_ zzStlN93ZNNriGQkOpWW;UBv3Yz-}91%aB9!@_H0vg3pvFBj?l8J9g-jB0S-&v?{^* zJFIpg`DQi)25tl5!w3+;)9~}k0SV~FXjw9P?3FW2fxn~6>^{5<11MPiU2zl?o$wM6 zJR(i?^y$-OMzNd!?a0*eP)7x*P)!scoLFphYKE1WgChgPUP`iqkw_L?3E2E|I!?Kd z)q^@9f|hdq(-5O7q-H%uPCSFqU|$10whrjs;ql$fL3S;>aqa{LGJzH-i$hjo!r1rx znJ$!h5DajPJ!~Yg(5K|f;(FyHqKbKLqao`f$b?4sGEIbR{aaSDi_WsGDT`4e8 z!O+t~%%>Klf(hZ4p0A}~Skll=*g-unAJlOm9&bV?jEKYYftr!+-}ymUse0(dbm-7< z;Htx6CFtPU4G^2DZ*De*)NF%AhApu*4K|&!gQ_cd$b>~W9W3X?i1o+%P}8Lx`_e$c zO6RnN2^6NeeK#LAe!TFU_Yiz&kDjW3G8Dc?|NNN*2xlO~YW)vf4n~8XS_i~W60qYO zvR(t5VVz|GBk}Wd5w30r*{t+ey*5BR_UDCj{0lmWXolo6r6W6M>0# literal 0 HcmV?d00001 diff --git a/doc/source/test_results/neutron_features/l3_ha/test_results.rst b/doc/source/test_results/neutron_features/l3_ha/test_results.rst new file mode 100644 index 0000000..0d355c7 --- /dev/null +++ b/doc/source/test_results/neutron_features/l3_ha/test_results.rst @@ -0,0 +1,531 @@ +Neutron L3 HA test results +-------------------------- + +Environment description +======================= + +Cluster description +~~~~~~~~~~~~~~~~~~~ +* 3 controllers +* 46 compute nodes + +Software versions +~~~~~~~~~~~~~~~~~ +MOS 8.0 + +Hardware configuration of each server +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Description of servers hardware + +**Compute Vendor**: + 1x SUPERMICRO SUPERSERVER 5037MR-H8TRF MICRO-CLOUD ``_ +**CPU** + 1x INTEL XEON Ivy Bridge 6C E5-2620 V2 2.1G 15M 7.2GT/s QPI 80w SOCKET 2011R 1600 ``_ +**RAM**: + 4x Samsung DDRIII 8GB DDR3-1866 1Rx4 ECC REG RoHS M393B1G70QH0-CMA +**NIC** + 1x AOC-STGN-i2S - 2-port 10 Gigabit Ethernet SFP+ + + + +Rally test results +================== + +L3 HA has a restriction of 255 routers per HA network per tenant. At this moment +we do not have the ability to create new HA network per tenant if the number of +VIPs exceed this limit. Based on this, for some tests, the number of tenants +was increased (NeutronNetworks.create_and_list_router). + +The most important results are provided by test_create_delete_routers test, +as it allows to catch possible race conditions during creation/deletion of HA +routers, HA networks and HA interfaces. There are already several known bugs +related to this which have been fixed in upstream. To find out more possible +issues test_create_delete_routers has been run multiple times with different +concurrency. + +.. list-table:: Results of test_create_delete_routers + :header-rows: 1 + + * + - Times + - Concurrency + - Number of errors + - Link for rally report + * + - 92 + - 20 + - 0 + - `rally report `_ + * + - 92 + - 40 + - 0 + - `rally report `_ + * + - 150 + - 50 + - 1 + - `rally report `_ + * + - 150 + - 50 + - 0 + - `rally report `_ + * + - 200 + - 60 + - 1 + - `rally report `_ + * + - 200 + - 60 + - 1 + - `rally report `_ + * + - 200 + - 70 + - 2 + - `rally report `_ + * + - 200 + - 70 + - 0 + - `rally report `_ + * + - 200 + - 75 + - 1 + - `rally report `_ + * + - 200 + - 75 + - 1 + - `rally report `_ + * + - 300 + - 100 + - 1 + - `rally report `_ + * + - 300 + - 100 + - 0 + - `rally report `_ + * + - 400 + - 100 + - 1 + - `rally report `_ + * + - 400 + - 100 + - 0 + - `rally report `_ + + +Multiple scenarios: + + ++------------------------------+-------------------+-------+-------------+------------------+--------------------------------------------------------------------------------------------------------------+ +| Test | Number of tenants | Times | Concurrency | Number of errors | Link for rally report | ++------------------------------+-------------------+-------+-------------+------------------+--------------------------------------------------------------------------------------------------------------+ +|``create_and_delete_routers`` | 1 |92 |10 | 0 |`rally report `_ | ++------------------------------+-------------------+-------+-------------+------------------+ | +|``create_and_list_routers`` | 2 |368 |10 | 272 | | ++------------------------------+-------------------+-------+-------------+------------------+ | +|``create_and_update_routers`` |1 |92 |10 |0 | | ++------------------------------+-------------------+-------+-------------+------------------+--------------------------------------------------------------------------------------------------------------+ +|``create_and_delete_routers`` |1 |92 |10 |0 | | ++------------------------------+-------------------+-------+-------------+------------------+ | +|``create_and_list_routers`` |2 |100 |10 |6 |`rally report `_ | ++------------------------------+-------------------+-------+-------------+------------------+ | +|``create_and_update_routers`` |1 |92 |10 |0 | | ++------------------------------+-------------------+-------+-------------+------------------+--------------------------------------------------------------------------------------------------------------+ +|``create_and_delete_routers`` |1 |92 |10 |0 | | ++------------------------------+-------------------+-------+-------------+------------------+ | +|``create_and_list_routers`` |10 |368 |10 |0 |`rally report `_ | ++------------------------------+-------------------+-------+-------------+------------------+ | +|``create_and_update_routers`` |1 | 92 |10 |0 | | ++------------------------------+-------------------+-------+-------------+------------------+--------------------------------------------------------------------------------------------------------------+ +|``create_and_delete_routers`` |1 |300 |50 |1 | | ++------------------------------+-------------------+-------+-------------+------------------+ | +|``create_and_list_routers`` |10 |368 |50 |0 |`rally report `_ | ++------------------------------+-------------------+-------+-------------+------------------+ | +|``create_and_update_routers`` |1 |300 |50 |0 | | ++------------------------------+-------------------+-------+-------------+------------------+--------------------------------------------------------------------------------------------------------------+ +|``create_and_delete_routers`` |1 |300 |50 |1 | | ++------------------------------+-------------------+-------+-------------+------------------+ | +|``create_and_list_routers`` |10 |368 |50 |0 |`rally report `_ | ++------------------------------+-------------------+-------+-------------+------------------+ | +|``create_and_update_routers`` |1 |300 |50 |0 | | ++------------------------------+-------------------+-------+-------------+------------------+--------------------------------------------------------------------------------------------------------------+ + + +The errors discovered have been classified as the following bugs: + +.. list-table:: Bugs + :header-rows: 1 + + * + - Short description + - Trace + - Upstream bug + - Status + * + - IpAddressGenerationFailure No more IP addresses available on network + - `trace `_ + - `bug/1562887 `_ + - Open (Affects Neutron without L3 HA enabled, probably Rally bug) + * + - Device "tap-" does not exist. + - `trace `_ + - `bug/1562887 `_ + - Open + * + - Session rollback + - `trace `_ + - `bug/1550886 `_ + - In progress + * + - SubnetInUse: Unable to complete operation on subnet + - `trace `_ + - `bug/1562878 `_ + - Open + * + - MessagingTimeout: Timed out waiting for a reply to message + - `trace `_ + - `bug/1555670 `_ + - Open + * + - DBDeadlock: ipallocationpools + - `trace `_ + - `bug/1562876 `_ + - Open + * + - Not all HA networks deleted + - `not a trace `_ + - `bug/1562892 `_ + - Open + +Summary: +~~~~~~~~ + +1. The number of failed tests is less than 1% (exception ``test_create_list_routers``, + but with increased number of tenants the problem was fixed; automatic creation of new HA + network after the previous one ran out of virtual ips is more + like a feature request). + +2. All bugs found are Medium or Low priority. + +Shaker test results +=================== + ++---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ +| L3 HA | L3 HA during L3 agents restart | Router rescheduling (Non L3 HA) during L3 agent restart | ++========================================+==================================+=================================================================================================================+========+==========+=========================================================================================================================+========+===========+=============================================================================================================================+ +| Lost | Errors | Link for report | Lost | Errors | Link for report | Lost | Errors | Link for report | ++----------------------------------------+----------------------------------+-----------------------------------------------------------------------------------------------------------------+--------+----------+-------------------------------------------------------------------------------------------------------------------------+--------+-----------+-----------------------------------------------------------------------------------------------------------------------------+ +| OpenStack L3 East-West | ++----------------------------------------+----------------------------------+-----------------------------------------------------------------------------------------------------------------+--------+----------+-------------------------------------------------------------------------------------------------------------------------+--------+-----------+-----------------------------------------------------------------------------------------------------------------------------+ +| 0 | 0 | `report `__ | 0 | 0 | `report `__ | 50 | 5 | `report `__ | ++----------------------------------------+----------------------------------+-----------------------------------------------------------------------------------------------------------------+--------+----------+-------------------------------------------------------------------------------------------------------------------------+--------+-----------+-----------------------------------------------------------------------------------------------------------------------------+ +| OpenStack L3 East-West Performance | ++----------------------------------------+----------------------------------+-----------------------------------------------------------------------------------------------------------------+--------+----------+-------------------------------------------------------------------------------------------------------------------------+--------+-----------+-----------------------------------------------------------------------------------------------------------------------------+ +| 1 | 0 | `report `__ | 0 | 0 | `report `__ | 0 | 1 (all) | `report `__ | ++----------------------------------------+----------------------------------+-----------------------------------------------------------------------------------------------------------------+--------+----------+-------------------------------------------------------------------------------------------------------------------------+--------+-----------+-----------------------------------------------------------------------------------------------------------------------------+ +| OpenStack L3 North-South | ++----------------------------------------+----------------------------------+-----------------------------------------------------------------------------------------------------------------+--------+----------+-------------------------------------------------------------------------------------------------------------------------+--------+-----------+-----------------------------------------------------------------------------------------------------------------------------+ +| 0 | 0 | `report `__ | 8 | 0 | `report `__ | 95 | 3 | `report `__ | ++----------------------------------------+----------------------------------+-----------------------------------------------------------------------------------------------------------------+--------+----------+-------------------------------------------------------------------------------------------------------------------------+--------+-----------+-----------------------------------------------------------------------------------------------------------------------------+ +| OpenStack L3 North-South UDP | ++----------------------------------------+----------------------------------+-----------------------------------------------------------------------------------------------------------------+--------+----------+-------------------------------------------------------------------------------------------------------------------------+--------+-----------+-----------------------------------------------------------------------------------------------------------------------------+ +| 10 | 1 | `report `__ | 14 | 0 | `report `__ | | | | ++----------------------------------------+----------------------------------+-----------------------------------------------------------------------------------------------------------------+--------+----------+-------------------------------------------------------------------------------------------------------------------------+--------+-----------+-----------------------------------------------------------------------------------------------------------------------------+ +| OpenStack L3 North-South Performance | +| | +| (concurrency 2) | ++----------------------------------------+----------------------------------+-----------------------------------------------------------------------------------------------------------------+--------+----------+-------------------------------------------------------------------------------------------------------------------------+--------+-----------+-----------------------------------------------------------------------------------------------------------------------------+ +| 0 | 0 | `report `__ | 0 | 0 | `report `__ | | | | ++----------------------------------------+----------------------------------+-----------------------------------------------------------------------------------------------------------------+--------+----------+-------------------------------------------------------------------------------------------------------------------------+--------+-----------+-----------------------------------------------------------------------------------------------------------------------------+ +| OpenStack L3 North-South Performance | +| | +| (concurrency 5) | ++----------------------------------------+----------------------------------+-----------------------------------------------------------------------------------------------------------------+--------+----------+-------------------------------------------------------------------------------------------------------------------------+--------+-----------+-----------------------------------------------------------------------------------------------------------------------------+ +| 0 | 0 | `report `__ | 1 | 0 | `report `__ | | | | ++----------------------------------------+----------------------------------+-----------------------------------------------------------------------------------------------------------------+--------+----------+-------------------------------------------------------------------------------------------------------------------------+--------+-----------+-----------------------------------------------------------------------------------------------------------------------------+ +| OpenStack L3 North-South Dense | ++----------------------------------------+----------------------------------+-----------------------------------------------------------------------------------------------------------------+--------+----------+-------------------------------------------------------------------------------------------------------------------------+--------+-----------+-----------------------------------------------------------------------------------------------------------------------------+ +| 0 | 0 | `report `__ | 41 | 0 | `report `__ | 81 | 1 | `report `__ | ++----------------------------------------+----------------------------------+-----------------------------------------------------------------------------------------------------------------+--------+----------+-------------------------------------------------------------------------------------------------------------------------+--------+-----------+-----------------------------------------------------------------------------------------------------------------------------+ + +Shaker provides statistics about maximum, minimum and mean values of +different connection measurements. For each test was found the maximum +among all maximum values, minimum among all minimum values and counts +the mean value from all mean values. In the table below, these values +are presented. + ++-----------------+---------------------------------------------------------------------------------------------------------------------------------------+---------------------------------------------------+-----------------------------------------------------------+ +| type | L3 HA | L3 HA during l3 agents restart | Router rescheduling (Non L3 HA) during l3 agent restart | ++=================+========================================+==================================+===========================================================+================+=================+================+====================+===========+==========================+ +| | min | mean | max | min | mean | max | min | mean | max | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+--------------------+-----------+--------------------------+ +| OpenStack L3 East-West | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+--------------------+-----------+--------------------------+ +| ping\_icmp, | 0.05 | 2.45 | 12.39 | **0.07** | **7.39** | **18.03** | 0.41 | 32.84 | 2583.93 | +| | | | | | | | | | | +| ms | | | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+--------------------+-----------+--------------------------+ +| tcp\_download | 0.02 | 874.04 | 5820.88 | **0.11** | **957.66** | **5883.96** | 77.41 | 896.96 | 3703.83 | +| | | | | | | | | | | +| Mbits/s | | | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+--------------------+-----------+--------------------------+ +| tcp\_upload | 0.02 | 884.25 | 5649.94 | **0.13** | **897.11** | **5963.02** | 64.11 | 1268.74 | 5111.02 | +| | | | | | | | | | | +| Mbits/s | | | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+--------------------+-----------+--------------------------+ +| OpenStack L3 East-West Performance | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+-----------------------------------------------------------+ +| ping\_icmp | 0.64 | 0.81 | 1.45 | **0.57** | **0.82** | **1.79** | **No statistic** | +| ms | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+ | +| Bandwidth | 839.84 | 1876.83 | 3880.01 | **630.0** | **1497.19** | **3020.0** | | +| Mbit/s | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+ | +| Packets | 101680.0 | 129664.2 | 136880.0 | **89660.0** | **129515.33** | **367930.0** | | +| pps | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+ | +| retransmits | 0.0 | 0.67 | 25.0 | **0.0** | **2.5** | **72.0** | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+-----------------------------------------------------------+ +| OpenStack L3 North-South | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+--------------------+-----------+--------------------------+ +| ping\_icmp, | 0.08 | 9.83 | 27.61 | **0.06** | **7.11** | **25.73** | 0.33 | 0.62 | 2.45 | +| | | | | | | | | | | +| ms | | | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+--------------------+-----------+--------------------------+ +| tcp\_download | 65.28 | 902.35 | 4454.43 | **72.7** | **769.61** | **4494.97** | 741.95 | 1647.07 | 2776.53 | +| | | | | | | | | | | +| Mbits/s | | | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+--------------------+-----------+--------------------------+ +| tcp\_upload | 0.13 | 815.02 | 4345.86 | **0.13** | **867.68** | **4289.98** | **No statistic** | +| | | | | | | | | +| Mbits/s | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+-----------------------------------------------------------+ +| OpenStack L3 North-South UDP | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+-----------------------------------------------------------+ +| Packets | 31218.0 | 123452.06 | 476254.0 | **39196.0** | **122214.76** | **431108.0** | | +| pps | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+-----------------------------------------------------------+ +| OpenStack L3 North-South Performance | +| | +| (concurrency 2) | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+-----------------------------------------------------------+ +| ping\_icmp | 0.9 | 1.22 | 2.36 | **0.67** | **0.93** | **2.34** | | +| ms | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+-----------------------------------------------------------+ +| Bandwidth | 439.91 | 449.94 | 525.5 | **0.0** | **2000.8** | **3400.5** | | +| Mbit/s | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+-----------------------------------------------------------+ +| Packets | 126360.0 | 129349.33 | 135150.0 | **131700.0** | **135319.33** | **140550.0** | | +| pps | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+-----------------------------------------------------------+ +| retransmits | 0.0 | 1.0 | 83.0 | **0.0** | **3.0** | **205.0** | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+-----------------------------------------------------------+ +| OpenStack L3 North-South Performance | +| | +| (concurrency 5) | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+-----------------------------------------------------------+ +| ping\_icmp | 0.74 | 0.97 | 1.72 | **0.2** | **1.02** | **3.01** | | +| ms | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+-----------------------------------------------------------+ +| Bandwidth | 41.99 | 181.01 | 386.43 | **0.0** | **1720.71** | **3519.77** | | +| Mbit/s | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+-----------------------------------------------------------+ +| Packets | 122140.0 | 131601.17 | 138220.0 | **103510.0** | **129021.6** | **138860.0** | | +| pps | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+-----------------------------------------------------------+ +| retransmits | 0.0 | 1.0 | 49.0 | **0.0** | **3.17** | **231.0** | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+-----------------------------------------------------------+ +| OpenStack L3 North-South Dense | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+--------------------+-----------+--------------------------+ +| ping\_icmp, | 0.56 | 18.18 | 96.42 | **0.38** | **4.07** | **56.35** | 0.45 | 9.79 | 106.52 | +| | | | | | | | | | | +| ms | | | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+--------------------+-----------+--------------------------+ +| tcp\_download | 1.72 | 210.2 | 862.02 | **322.24** | **1634.48** | **4656.44** | 11.61 | 407.69 | 2235.84 | +| | | | | | | | | | | +| Mbits/s | | | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+--------------------+-----------+--------------------------+ +| tcp\_upload | 18.88 | 209.49 | 781.86 | **49.96** | **1590.83** | **4667.82** | 18.77 | 1955.41 | 4333.32 | +| | | | | | | | | | | +| Mbits/s | | | | | | | | | | ++-----------------+----------------------------------------+----------------------------------+-----------------------------------------------------------+----------------+-----------------+----------------+--------------------+-----------+--------------------------+ + +These results show that there is no significant difference between +results during multiple l3 agent restarts and normal test execution. + +Average value of difference between these values without and with +restart presented in the next table: + ++--------+---------------+-----------------+---------------+-------------+-----------+---------------+ +| | ping\_icmp, | tcp\_download | tcp\_upload | Bandwidth | Packets | retransmits | +| | | | | Mbit/s | pps | | +| | ms | Mbits/s | Mbits/s | | | | ++========+===============+=================+===============+=============+===========+===============+ +| min | 0.17 | -103.34 | -10.39 | 230.58 | 4333 | 0 | ++--------+---------------+-----------------+---------------+-------------+-----------+---------------+ +| mean | 2.02 | -458.39 | -482.39 | -903.64 | -501.07 | -2 | ++--------+---------------+-----------------+---------------+-------------+-----------+---------------+ +| max | 5.78 | -1299.35 | -1381.05 | -1717.11 | -47986 | -117 | ++--------+---------------+-----------------+---------------+-------------+-----------+---------------+ + +Summary: +~~~~~~~~ + +1. Results of comparison between L3 HA and standard router rescheduling + show that L3 HA allows to perform testing uninterrupted without + huge loss of statistics during L3 agent restarts. + +2. Comparing L3 HA results with and without restart show that bandwidth + and speed do not decrease during agent restart. + + +Manual tests execution +====================== + +During manual testing, the following scenarios were tested: + +- Ping to external network from VM during reset of primary(non-primary) + controller + +- Ping from one VM to another VM in different network during ban L3 + agent + +- Iperf UPD testing between VMs in different networks during ban L3 + agent + +All tests were performed with large number of routers. + +Ping to external network from VM during reset of primary(non-primary) controller +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +.. image:: ping_external.png + :width: 650px + ++-------------+---------------------+----------------+---------------------------+ +| Iteration | Number of routers | Command | Number of loss packages | ++=============+=====================+================+===========================+ +| 1 | 1 | | 3 | ++-------------+---------------------+----------------+---------------------------+ +| 2 | 25 | | 3 | ++-------------+---------------------+----------------+---------------------------+ +| 3 | 50 | | 3 | ++-------------+---------------------+----------------+---------------------------+ +| 4 | 100 | | 3 | ++-------------+---------------------+----------------+---------------------------+ +| 5 | 150 | | 3 | ++-------------+---------------------+----------------+---------------------------+ +| 6 | 170 | ping 8.8.8.8 | 3 | ++-------------+---------------------+----------------+---------------------------+ +| 7 | 175 | | 89 | ++-------------+---------------------+----------------+---------------------------+ +| 8 | 175 | | 116 | ++-------------+---------------------+----------------+---------------------------+ +| 9 | 175 | | 52 | ++-------------+---------------------+----------------+---------------------------+ +| 10 | 200 | | 51 | ++-------------+---------------------+----------------+---------------------------+ +| 11 | 200 | | 3 | ++-------------+---------------------+----------------+---------------------------+ + +Current result looks unstable and not directly dependent on the number +of routers. The huge loss of packages on iterations 7-10 happened +because agent from recovered controller became “active” (master) while +there was already another active L3 agent. After some time it became the +only “active” L3 agent for router. + +This issue needs special attention and will be investigated as +`bug/1563298 `__. + +Ping from one VM to another VM in different network during ban L3 agent +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. image:: ping.png + :width: 650px + ++-------------+---------------------+-----------------+---------------------------+ +| Iteration | Number of routers | Command | Number of loss packages | ++=============+=====================+=================+===========================+ +| 1 | 100 | | 4 | ++-------------+---------------------+-----------------+---------------------------+ +| 2 | | | 4 | ++-------------+---------------------+-----------------+---------------------------+ +| 3 | | | 3 | ++-------------+---------------------+-----------------+---------------------------+ +| 4 | 200 | | 3 | ++-------------+---------------------+-----------------+---------------------------+ +| 5 | | | 3 | ++-------------+---------------------+-----------------+---------------------------+ +| 6 | | ping 10.0.1.6 | 103 | ++-------------+---------------------+-----------------+---------------------------+ +| 7 | | | 26 | ++-------------+---------------------+-----------------+---------------------------+ +| 8 | | | 3 | ++-------------+---------------------+-----------------+---------------------------+ +| 9 | 250 | | 3 | ++-------------+---------------------+-----------------+---------------------------+ +| 10 | | | 4 | ++-------------+---------------------+-----------------+---------------------------+ + +The loss of packages on iterations 6-7 happend for the similar reason as +for previous manual scenario. L3 agent `status +flapped `__ during loss. + +With 250 routers l3 agents started to fail with `unmanaged +state `__. + +Iperf UPD testing between VMs in different networks ban L3 agent +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. image:: iperf_addresses.png + :width: 650px + ++---------------------+---------------------------------------------------------------------+------------+ +| Number of routers | Command | Loss (%) | ++=====================+=====================================================================+============+ +| 10 | | 0.14 | ++---------------------+---------------------------------------------------------------------+------------+ +| | | 4.9 | ++---------------------+---------------------------------------------------------------------+------------+ +| | | 1.3 | ++---------------------+---------------------------------------------------------------------+------------+ +| | | 5.3 | ++---------------------+---------------------------------------------------------------------+------------+ +| 24 | | 1.3 | ++---------------------+---------------------------------------------------------------------+------------+ +| | iperf -c 10.0.3.4 -p 5001 -t 60 -i 10 --bandwidth 30M --len 64 -u | 8.9 | ++---------------------+---------------------------------------------------------------------+------------+ +| | | 6.1 | ++---------------------+---------------------------------------------------------------------+------------+ +| | | 2.4 | ++---------------------+---------------------------------------------------------------------+------------+ +| 50 | | 1.7 | ++---------------------+---------------------------------------------------------------------+------------+ +| | | 10 | ++---------------------+---------------------------------------------------------------------+------------+ +| | | 40 | ++---------------------+---------------------------------------------------------------------+------------+ +| | | 18 | ++---------------------+---------------------------------------------------------------------+------------+ + +Summary: +~~~~~~~~ + +1. For unstable behaviour of L3 HA, + `bug `__ was + filed. + +2. With number of routers less than 170, the network can be classified + as stable for failures. + +3. With number of routers more than 240, agent’s recovery leads to + falling into unmanaged state. \ No newline at end of file