Browse Source

Switch the default Neutron ML2 driver to OVN

This patch is changing the default driver used in Packstack from
ML2/OVS to ML2/OVN. It also flips jobs running with OVS to OVN and
viceversa while keeping the lbaas scenario with OVS.

Also, the encapsulation used by default changes from vxlan to
geneve.

Change-Id: I0abfdb1de66730101a27ca3a949f056b50fc9c98
Signed-off-by: Daniel Alvarez <dalvarez@redhat.com>
Daniel Alvarez 2 months ago
parent
commit
637a7a6ee2

+ 1
- 1
README.md View File

@@ -178,7 +178,7 @@ the current matrix of available tests:
178 178
 | glance         |             |    file     |    swift    |     file    |
179 179
 | nova           |      X      |      X      |      X      |      X      |
180 180
 | neutron        |      X      |      X      |      X      |      X      |
181
-| neutron plugin |     ovs     |     ovn     |     ovs     |     ovs     |
181
+| neutron plugin |     ovn     |     ovn     |     ovs     |     ovn     |
182 182
 | lbaasv2        |             |             |      X      |             |
183 183
 | vpnaas         |             |             |             |             |
184 184
 | cinder         |      X      |      X      |             |             |

+ 8
- 4
packstack/plugins/neutron_350.py View File

@@ -343,7 +343,7 @@ def initConfig(controller):
343 343
                         "entrypoints"),
344 344
              "OPTION_LIST": ["local", "flat", "vlan", "gre", "vxlan", "geneve"],
345 345
              "VALIDATORS": [validators.validate_multi_options],
346
-             "DEFAULT_VALUE": "vxlan,flat",
346
+             "DEFAULT_VALUE": "geneve,flat",
347 347
              "MASK_INPUT": False,
348 348
              "LOOSE_VALIDATION": False,
349 349
              "USE_DEFAULT": False,
@@ -356,7 +356,7 @@ def initConfig(controller):
356 356
                         "network_types to allocate as tenant networks"),
357 357
              "OPTION_LIST": ["local", "vlan", "gre", "vxlan", "geneve"],
358 358
              "VALIDATORS": [validators.validate_multi_options],
359
-             "DEFAULT_VALUE": "vxlan",
359
+             "DEFAULT_VALUE": "geneve",
360 360
              "MASK_INPUT": False,
361 361
              "LOOSE_VALIDATION": False,
362 362
              "USE_DEFAULT": False,
@@ -371,7 +371,7 @@ def initConfig(controller):
371 371
                              "hyperv", "ncs", "arista", "cisco_nexus",
372 372
                              "mlnx", "l2population", "sriovnicswitch", "ovn"],
373 373
              "VALIDATORS": [validators.validate_multi_options],
374
-             "DEFAULT_VALUE": "openvswitch",
374
+             "DEFAULT_VALUE": "ovn",
375 375
              "MASK_INPUT": False,
376 376
              "LOOSE_VALIDATION": False,
377 377
              "USE_DEFAULT": False,
@@ -450,7 +450,7 @@ def initConfig(controller):
450 450
                         "with Neutron"),
451 451
              "OPTION_LIST": ["linuxbridge", "openvswitch", "ovn"],
452 452
              "VALIDATORS": [validators.validate_options],
453
-             "DEFAULT_VALUE": "openvswitch",
453
+             "DEFAULT_VALUE": "ovn",
454 454
              "MASK_INPUT": False,
455 455
              "LOOSE_VALIDATION": False,
456 456
              "CONF_NAME": "CONFIG_NEUTRON_L2_AGENT",
@@ -588,6 +588,10 @@ def initSequences(controller):
588 588
         ovs_external = 'CONFIG_NEUTRON_OVS_EXTERNAL_PHYSNET'
589 589
         ovn_external = 'CONFIG_NEUTRON_OVN_EXTERNAL_PHYSNET'
590 590
         config[ovs_external] = config[ovn_external]
591
+    elif use_ml2_with_ovs(config):
592
+        if ('openvswitch' not in config[
593
+                'CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS']):
594
+            config['CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS'] = 'openvswitch'
591 595
 
592 596
     plugin_db = 'neutron'
593 597
     plugin_path = 'neutron.plugins.ml2.plugin.Ml2Plugin'

+ 11
- 0
releasenotes/notes/switch-default-neutron-driver-to-ovn-0eb7053b81c7794d.yaml View File

@@ -0,0 +1,11 @@
1
+---
2
+prelude: >
3
+    The default ML2 driver is replaced from ``openvswitch``to ``ovn``. This
4
+    means that, when deploying packstack with the default settings, OVN will
5
+    be used as the networking backend for Neutron.
6
+features:
7
+  - |
8
+    OVN is now used as the default networking backend for Neutron when
9
+    deploying packstack. Neutron agents such as L2, L3 or DHCP agents are no
10
+    longer used and get replaced by OVN services.
11
+    The encapsulation used will be ``geneve`` instead of ``vxlan``.

+ 0
- 3
tests/scenario001.sh View File

@@ -36,9 +36,6 @@ $SUDO packstack ${ADDITIONAL_ARGS} \
36 36
           --os-horizon-ssl=y \
37 37
           --amqp-enable-ssl=y \
38 38
           --glance-backend=file \
39
-          --os-neutron-l2-agent=ovn \
40
-          --os-neutron-ml2-type-drivers="geneve,flat" \
41
-          --os-neutron-ml2-tenant-network-types="geneve" \
42 39
           --provision-uec-kernel-url="/tmp/cirros/cirros-$CIRROS_VERSION-$CIRROS_ARCH-vmlinuz" \
43 40
           --provision-uec-ramdisk-url="/tmp/cirros/cirros-$CIRROS_VERSION-$CIRROS_ARCH-initrd" \
44 41
           --provision-uec-disk-url="/tmp/cirros/cirros-$CIRROS_VERSION-$CIRROS_ARCH-disk.img" \

+ 3
- 0
tests/scenario002.sh View File

@@ -36,6 +36,9 @@ $SUDO packstack ${ADDITIONAL_ARGS} \
36 36
           --os-cinder-install=n \
37 37
           --os-horizon-install=n \
38 38
           --glance-backend=swift \
39
+          --os-neutron-l2-agent=openvswitch \
40
+          --os-neutron-ml2-type-drivers="vxlan,flat" \
41
+          --os-neutron-ml2-tenant-network-types="vxlan" \
39 42
           --os-neutron-lbaas-install=y \
40 43
           --os-neutron-vpnaas-install=n \
41 44
           --os-sahara-install=y \

Loading…
Cancel
Save