83 Commits

Author SHA1 Message Date
Rajesh Tailor
f68f987557 Fix typos in parameter description and test
Change-Id: Ifbf562a2e7876b92d2b54ec5ee99b43e526c6d7a
2022-06-27 17:19:11 +05:30
Takashi Kajinami
bde509f8ad dpdk: TSO support
This change allows users to enable TSO support[1] in ovs-dpdk datapath.

[1] https://docs.openvswitch.org/en/latest/topics/userspace-tso/

Change-Id: Ib88dbcfc78e703a4249b942938c0f985f826b5b4
2022-06-06 17:06:09 +09:00
Takashi Kajinami
1545c55ca5 Ensure other_config:emc-insert-inv-prob is unset
... instead of leaving the configuration unmanaged.

Change-Id: Ifa7d6efd52c812cc9bfb073fd03dc01a6481cd38
2022-03-24 14:31:50 +09:00
Zuul
e260e264d0 Merge "Assert the exec resource to restart ovs service" 2022-03-11 16:14:51 +00:00
Takashi Kajinami
3ff72b5736 Deprecate usage of Dynamic Kernel Module Support
... because it was required for very old versions of Ubuntu and Debian
and no longer required in recent versions.

Change-Id: Ib5d3ab7cd79470e446a13475d5886c76048bfe5b
2022-02-27 22:43:47 +09:00
Takashi Kajinami
8fcd7596e4 vs_bridge: Fix missing external_ids after initial creation
It turned out the external_ids property is not reflected on the ovs
bridge after initial creation. This change fixes it and ensures that
the property is applied to the bridge.

Closes-Bug: #1958905
Change-Id: I7c1c2384b8d70b568caffe8d3cc82002cf2502f6
2022-01-25 08:51:54 +09:00
Takashi Kajinami
0785d6cbb3 Assert the exec resource to restart ovs service
This change implements unit tests for the exec resource which was added
by [1].

[1] 1fe71cf5e359c8f83f11b2673620be822423bf47

Change-Id: I1dd62d917783f66b11e953ab1c8be6a259553782
2022-01-13 13:56:55 +09:00
Zuul
4924354d51 Merge "Add support for other_config:dpdk-socket-limit" 2022-01-07 23:42:31 +00:00
Zuul
3ebae506d8 Merge "Accept array for dpdk-socket-mem" 2022-01-07 23:42:29 +00:00
Takashi Kajinami
7b91c5ebd7 Add support for other_config:dpdk-socket-limit
This change adds support for other_config:dpdk-socket-limit, which
is available since openvswitch 2.12.0[1].

[1] https://github.com/openvswitch/ovs/commit/8411b6ccec

Change-Id: I6a8c65685442477d368820cbb7fcc3a21cddbedd
2022-01-06 00:00:49 +09:00
Takashi Kajinami
5a009f686f Accept array for dpdk-socket-mem
dpdk-socket-mem accepts a comma-separated list of memory amounts per
socket. This change allows usage of native Array to define per-socket
amounts.

Change-Id: I8faeb44b708cf371e98b56a375a6dcc07d82df3e
2022-01-06 00:00:35 +09:00
Takashi Kajinami
becab37c5e vs_config: Accept integer and boolean for value
Some parameters like vlan_limit or hw-offload expect integer values
and boolean values. However current vs_config accepts only strings
and we need to convert integer or boolena to string in manifests
explicitly.

This change makes vs_config accept integers and booleans so that
we can use more "native" types to define values.

Change-Id: I6f1dfd33cc85d84a53e346f45359ce382e5fda26
2022-01-05 22:58:44 +09:00
Zuul
1d5398ae56 Merge "Ensure hardware offload is disabled" 2021-12-30 22:16:41 +00:00
Takashi Kajinami
c801c6e97b Ensure hardware offload is disabled
This change ensures hardware offload is disabled. Previously when
hw_offload is false, puppet-vswitch didn't manage the configuration,
thus offload was kept enabled if it was enabled in advance.

Change-Id: I654c0f7f5a5efb845484cb610ff07effd4f33aa9
2021-12-28 17:29:52 +09:00
Takashi Kajinami
fb9a08d972 Use undef instead of $::os_service_default
$::os_service_default is not used in puppet-vswitch. This change
deprecates usage of it to prepare replacing it by undef, which is
commonly used instead.

Change-Id: Ibfe94720e28f5ce46977b2db2afa82a6888c28cb
2021-12-28 13:27:14 +09:00
Takashi Kajinami
1fe71cf5e3 Do not use service resource to restart openvswitch service
Closes-Bug: #1946985
Change-Id: Idac29b0ea6794a52ae9146da8105ebbaf65ee9a3
2021-10-18 08:36:52 +09:00
Takashi Kajinami
c6d27c16f9 Set fixture paths for unit tests
This change defines manifest_dir and module_path expicitly in unit
tests so that modules installed under fixtures directory is properly
loaded.

Closes-Bug: #1930403
Change-Id: I549c03eebd718994f39831d24387a928bc109c08
2021-06-02 14:35:48 +09:00
Zuul
b26f4153ae Merge "Do not restart ovs when updating other_config:emc-insert-inv-prob" 2021-04-27 10:42:02 +00:00
Zuul
c782ad9087 Merge "Remove old workaround to check service status in Ubuntu" 2021-04-27 07:15:25 +00:00
Takashi Kajinami
b91243937e Drop support for FreeBSD and Solaris
These two distros are never tested in gate, and there are almost no
activities to keep these support updated for a while.

Change-Id: I6110cd9a62f33e2d046fc2c835aaec73c4532889
2021-04-25 21:51:44 +09:00
Takashi Kajinami
1f63cee543 Remove old workaround to check service status in Ubuntu
Change-Id: Ie7e05985ac06c5536490d48de109d8de7b7c5722
2021-04-25 21:47:44 +09:00
Takashi Kajinami
95230113b2 Do not restart ovs when updating other_config:emc-insert-inv-prob
There are no requirement of service restart after updating
the cmd-insert-inv-prov parameter in ovs documentation[1], and
it seems that the parameter can be applied with keeping the service
running.
 [1] https://docs.openvswitch.org/en/latest/topics/dpdk/bridge/#emc-insertion-probability

Let's remove notify so that changing the value doesn't trigger
service restart.

Change-Id: I2e9f7d3b27547d33914f07005045b55d8ba82514
2021-03-12 17:57:54 +09:00
Takashi Kajinami
0d026451bd Add support for the hw-offload option in dpdk
This change implement support for the hw-offload option in dpdk. This
parameter is already supported in non-dpdk deployment but is also valid
for dpdk deployment.

Change-Id: Ibd285bf73fa10e6e9cd338625662063dc9a1d753
2021-03-11 10:53:47 +09:00
Takashi Kajinami
4887f4ccd6 Add support for vlan_limit option
This change introduces support for the vlan_limit option.
This parameter is currently set to 1 by default, but we should set
it to 2 to enable vlan_transparent, which requires nested vlans.

Related-Bug: #1918418
Change-Id: Id9aaab2a1e3ad2d2d43cd5cddf389d20abaf4461
2021-03-10 23:54:12 +09:00
Tobias Urdin
e1a7353395 Add Puppet Litmus
Depends-On: https://review.opendev.org/#/c/751890/
Change-Id: Ia13ddf28332053f08c8e7ecab6f41d8643260bf2
2020-09-14 23:42:42 +02:00
Takashi Kajinami
f7c13e404a Add CentOS8 to nodesets
Change-Id: Ia482693536994c0607861ff190aa5d16508473ad
2020-05-10 21:51:50 +09:00
Tobias Urdin
b90b698aa8 Convert all class usage to relative names
Change-Id: Iaad7694d527659713906ea9df89fd03e9fff790d
2019-12-08 23:25:14 +01:00
Yogananth Subramanian
97eb675dcc Provide option to disable EMC in puppet-vswitch
This patch disables EMC by setting emc-insert-inv-prob to 0.

Change-Id: I02dc94dbf4d9cee365b230a82dd5d5616d21406b
Closes-Bug: #1821821
2019-03-29 07:06:55 +05:30
Alex Schultz
d9a54416f9 Fix test facts for alternative OSs
We're referencing some additional $::os facts that we need to properly
set for openstacklib to work with.

Change-Id: I00e5caf3cf5409ec4a12695750960900e721e9f5
2019-03-28 09:22:36 -06:00
Tobias Urdin
a545a444d7 modulesync: sync and add nodepool-bionic for beaker
Change-Id: I5a2b93ab13cc4dbbd6dec01e509f436eda56035b
2018-07-23 12:27:26 +00:00
Saravanan KR
3d91514806 Remvoved OvS2.5 specific changes as it is no longer required
In pike release, we have migrated manifests from ovs2.5 to ovs2.6 and
retained the backward compatibility. Removing the ovs2.5 changes
in this cycle as it is no longer used.

Change-Id: I286b2f4d090dda34ec95f24f77baefcb7687ff85
2018-02-13 11:24:25 +05:30
Tim Rozet
6e3d77e9e4 Adds SSL custom type/provider
New type for configuring SSL in OVS.  Bootstrap mode allows the switch
to accept an initial CA certificate offered by the controller.
Otherwise specify the location of the CA certificate to use in comparing
the controller's cert.  OVS only supports a single instance of SSL
configuration so the provider limits the resource declaration to a
single instance named 'system'.

Partially-Implements: blueprint opendaylight-ssl-support

Change-Id: Ic026ee0bc4f385e0f8cd7076b3044feeb935ae45
Signed-off-by: Tim Rozet <trozet@redhat.com>
2018-01-09 18:18:22 -05:00
Moshe Levi
0da1882689 add support for ovs hw-offload
Ovs 2.8 has support for hardware offload [1]
This patch provides an option to configure it.

[1] https://patchwork.ozlabs.org/patch/767853/

Change-Id: I3c0d24a31f0a1cac2cb8c5da8125051d4348eed6
2017-09-27 22:18:12 +03:00
Karthik S
c751135c68 Enable dpdk after setting all other dpdk parameters
In OvS 2.7, setting dpdk-init=true enables DPDK
and reconfigures the vswitch with the dpdk parameters
earlier configured in ovsdb. In order to avoid
restarting openvswitch after enabling DPDK and to
use this feature, all the dpdk parameters shall be
configured in ovsdb before enabling DPDK.

Change-Id: I3a33f8287bbabe2bcaf7f4556dd78d5b9d6914b6
Signed-off-by: Karthik S <ksundara@redhat.com>
2017-07-17 03:46:35 -04:00
Karthik S
677415b7d3 Added test case for the function range_to_mask()
Change-Id: Id189f19616a51485b104ecbef7cb5fce6356895d
Signed-off-by: Karthik S <ksundara@redhat.com>
2017-06-14 07:11:31 -04:00
Karthik S
74bac67ae3 Added parameter validation for socket_mem parameter
Change-Id: I886b08c4c7bf419313bece5f9e8b4c93a7e61aa1
Closes-Bug: #1689936
Signed-off-by: Karthik S <ksundara@redhat.com>
2017-05-10 20:33:27 -04:00
karthik s
b58bd4844a OVS2.6 changes for DPDK
Configuration of DPDK parameters pmd-cpu-mask, dpdk-lcore-mask,
dpdk-socket-mem are addressed as per OVS2.6, while maintaining
backward compatibility with OVS 2.5

Implements: blueprint ovs-2-6-dpdk

Change-Id: I3227189691df85f265cf84bd4115d8d4c9f979f3
Signed-off-by: karthik s <ksundara@redhat.com>
2017-04-04 08:59:50 -04:00
karthik s
b4039a58d9 Remove deprecated parameter 'core_list'
The deprecated parameter 'core_list' shall be removed for Pike

Closes-Bug: #1664859
Change-Id: I2329aa122b9cacb3c7de18a21353f53ea1d988ed
Signed-off-by: karthik s <ksundara@redhat.com>
2017-02-15 15:06:36 +05:30
Alfredo Moralejo
026f64ade4 Add fail_mode parameter to OVS Ports
According to info in https://bugs.launchpad.net/tripleo/+bug/1640812
when setting a OVS bridge with physical interface we need to
define fail_mode in OVS_EXTRA parameter of ifcfg to make
sure it's set at the desired mode after reboot.

This patch adds new parameter fail_mode to vs_port (as ifcfg is created
as part of vs_port, not vs_bridge) and defaults it to required value "standalone".

Similar patch was implemented to os-net-config in
e479535b50

Change-Id: I5f7448e3504c9190d7fe5f4a7958c604ef91a058
Closes-Bug: #1656795
2017-01-17 07:41:42 -05:00
Jaganathan Palanisamy
77e0b061de Configure DPDK options to isolate PMD cores and ovs process cores
The parameter -l in DPDK_OPTIONS is applied to both list cores to be
used by PMD and the list of cores that all the OVS threads should run
on. This will impact the DPDK performance, as cores on which PMD are
running, should be completely isolated (no other process should) use
it. For this, we are configuring, -l option with list of host cpus and
the list PMD cores will be configured using ovs-vsctl config command.

Fixes-Bug: #1649836

Change-Id: Ib95281bcbde34c18d26ee11d4e2603b267db563b
2016-12-18 06:15:05 +00:00
Alex Schultz
b797ae79a0 Fix ovs test for xenial
The change Ie3ee722b9fe6b5b1798fa52bd68ae3b656a8bdf8 switched the
default Ubuntu version that we test from trusty to xenial. Unfortunately
the vswitch::ovs tests assumed trusty for the platform params and were
not properly checking against trusty vs xenial. This change updates the
default platform params for Ubuntu to reflect the differences.

Change-Id: I88333bb571a924ad192aca86aa032c86a509a989
2016-12-16 09:14:06 -07:00
Benedikt Trefzer
0b1ea47ed2 rework service and fix service for debian jessie
- use ::vswitch::params for service parameters
- on debian jessie openvswitch has now proper init scripts
  with status. This patch avoids restarting ovs on each
  puppet run on jessie.
- this patch breaks debian versions older than wheezy
  (which are not supported by debian anymore)

Change-Id: I48c81b9987935c848009b4bf3ed010c70ab1a404
Co-Authored-By:  Alex Schultz <aschultz@redhat.com>
2016-11-30 23:26:36 -07:00
Alex Schultz
2242336c38 Switch to rspec-puppet-facts
This change updates the testing for puppet-vswitch to leverage the
rspec-puppet-facts to test all operatingsystems supported by Puppet
Openstack.

Change-Id: Ic2dec231d2dc2a06d9eb656ffc0f9411f8dc614e
2016-10-05 17:13:28 -06:00
Alex Schultz
28b8b342ab Move rspec-puppet-facts to spec helper
This change updates the module to use the rspec-puppet-facts as defined
in the puppet-openstack_spec_helper.

Change-Id: I6df0fb713772b68249eb38051f3a275e9d75336f
2016-09-30 13:34:29 -06:00
Saravanan KR
56b2aaa931 Modify the OVS DPDK package name to openvswitch
For Red Hat family, the OVS with DPDK will be provided
in the same package as OVS, named as openvswitch. This
is applicable for OVS2.5 version onwards, targeted for
newton. As of now, Ubuntu is packaging DPDK separately.
After getting clarity on Ubuntu DPDK packaging, the
required changes will be done for Ubuntu also, if any.

Change-Id: I91feedd48949aac520c719ab589a1542462ff887
2016-08-05 16:46:49 +05:30
Saravanan KR
94a9e3966e Add DPDK driver modprobe for loading modules on reboot
driverctl will be used to bind the pci with the DPDK driver,
but the DPDK driver modules has to be loaded for it. Adding
sysconfig modules files to load driver module on reboot.

Implements: blueprint tripleo-ovs-dpdk
Depends-On: I79308ac5949a47a707d42bb2566407b9e8adfb9c

Change-Id: I46331a882eca97d8b2ea0229ff768ce629971a6d
2016-07-30 10:49:59 +05:30
Saravanan KR
0f93b8926e Provide pci whitelist for the DPDK_OPTIONS for ovs
To use DPDK, nics has to be bind with DPDK drivers. Once
binded, the nics will not be listed in the kernel commands.
We have to update the list of PCI address of the nics which
are bound to the DPDK drivers with openvswtich DPDK_OPTIONS
as whitelist. For which, the list of PCI address of the
nics which are bound to the given DPDK drivers are listed
via a custom facter. This whitelist is fed as input to the
DPDK_OPTIONS.

Co-Authored-By: Jaganathan Palanisamy <jpalanis@redhat.com>

Implements: blueprint tripleo-ovs-dpdk

Change-Id: I4fbca23e07468ee58dfce10a6deaf2f25da654c7
2016-07-21 20:43:25 +05:30
Saravanan KR
f1c5e34409 OVS DPDK package support with basic options
Puppet changes requierd for supporting OVS DPDK packages. Basic
DPDK_OPTIONS parameters are added (more to come).

Implements: blueprint tripleo-ovs-dpdk

Change-Id: I853517247f2892ad27cff179961d1498456d1cb5
2016-07-15 19:28:20 +05:30
Sofer Athlan-Guyot
a4b436b1aa Include openstacklib defaults manifest.
This provides a mechanism for setting default across all modules.

Change-Id: Icf6689a120324c9c933bbd77d6309a208e47db55
Related-Bug: 1599113
2016-07-08 10:50:37 +02:00
Emilien Macchi
01aa050b64 Add nodepool-xenial.yml file
To run Beaker jobs in OpenStack Infra, we need this file so we run tests
on the right nodeset

Change-Id: Ic9e95115c153d02ac4dc82411e9e57e63a06a36b
2016-06-10 13:34:11 -04:00