46 Commits

Author SHA1 Message Date
Tin Lam
6895a5ba7a fix(neutron): fixes tls issue
Updated neutron to use an Nginx sidecar to terminate internal TLS rather
than using Apache with a separate RPC servers. Multiple RPC servers (in
sidecar) causes communication issues with RabbitMQ causing expected
errors.

Change-Id: Iaa6d3d64b730a54b1b85a338517bcb5be1842bda
Signed-off-by: Tin Lam <tin@irrational.io>
2020-10-21 11:02:57 -05:00
Tin Lam
918a307427 feat(tls): add tls support to openstack services
This patch set enables TLS for the following OpenStack services: keystone,
horizon, glance, cinder, heat, nova, placement and neutron for s- (stein)
and t- (train) release. This serves as a consolidation and clean up patch
for the following patches:

[0] https://review.opendev.org/#/c/733291
[1] https://review.opendev.org/#/c/735202
[2] https://review.opendev.org/#/c/733962
[3] https://review.opendev.org/#/c/733404
[4] https://review.opendev.org/#/c/734896

This also addresses comments mentioned in previous patches.

Co-authored-by: Gage Hugo <gagehugo@gmail.com>
Co-authored-by: sgupta <sg774j@att.com>

Depends-on: https://review.opendev.org/#/c/737194/

Change-Id: Id34ace54298660b4b151522916e929a29f5731be
Signed-off-by: Tin Lam <tin@irrational.io>
2020-07-10 09:36:31 -05:00
OlegBravo
4f2eb8cac6 Add TungstenFabric compatibility to charts
The charts changes are required for deployment
of various clouds based on Tungsten Fabric SDN.
Right now it's tested for Airship-in-a-bottle.

The code cannot be tested currently in
OpenStack Helm project because of absence of
tests and platform for that.

This patchset doesn't have Heat-related changes,
they'll be added later.

Change-Id: I73f2ced2b09dbb93146334b59fe4571fa13dbfb0
Depends-On: https://review.opendev.org/#/c/734635/
2020-06-26 10:39:20 +03:00
Gage Hugo
db79e79788 Remove OSH Authors copyright
The current copyright refers to a non-existent group
"openstack helm authors" with often out-of-date references that
are confusing when adding a new file to the repo.

This change removes all references to this copyright by the
non-existent group and any blank lines underneath.

Change-Id: Ia035037e000f1bf95202fc07b8cd1ad0fc019094
2020-04-03 20:53:32 +00:00
Zuul
5763f146c9 Merge "Revert "Add neutron-ovs-cleanup to neutron charts"" 2020-03-10 00:52:42 +00:00
Hemachandra Reddy
9abf057340 Revert "Add neutron-ovs-cleanup to neutron charts"
This reverts commit 09d6a3e68c3d95e27ce7a7395735d058062e9d17.

It causes failures during brown field upgrade.

Change-Id: Ie619358bd0ae046bfb94b9e9d811251b54d2897e
2020-03-09 17:49:17 +00:00
Zuul
7d34ef85e9 Merge "Add network namespace cleanup" 2020-02-20 19:02:55 +00:00
Deepak Tiwari
09d6a3e68c Add neutron-ovs-cleanup to neutron charts
neutron-ovs-cleanup needs to be run at the startup once

Change-Id: I0160bb0377082026af4aa90413196ce65cfd23c9
2020-02-18 05:11:24 +00:00
Hemachandra Reddy
62db99d1d1 Add network namespace cleanup
Removes stale DHCP and L3 namespaces. The cron runs once in 12 hours.

Network namespace cleanup is implemented as a daemonset as Kubernetes
does not have a cronjob that works like daemonset-cronjob.
Network namespace cleanup should run on all nodes where DHCP and L3
agents run.

Change-Id: I7525e493067669026e0d57889a3e3238a2bd1308
2020-02-11 05:01:36 +00:00
Tin Lam
def68865a2 Add functionality to specify FQDN
Patch set to allow for FQDN for neutron agents.

Change-Id: Idde7ba35e940de59e0def35507ce2506cad672ed
Signed-off-by: Tin Lam <tin@irrational.io>
2020-01-09 16:10:37 -06:00
Zuul
76a14a0cc6 Merge "Add readiness checks to ovs agent" 2019-10-08 14:50:46 +00:00
Pete Birley
b1f8446e5b Neutron: Update force purge of test project to be less aggressive
This PS updates the os purge of the test project to be an optional
operator driven choice, as they will also need to ensure
the project is unique to neutron testing.

Additionally this updates the purge image to be driven by the
charts values.yaml, as with every other image in OSH.

Change-Id: I46807f7c4922a1b411386641eddbd8957ab56f05
Signed-off-by: Pete Birley <pete@port.direct>
2019-09-26 13:05:30 -05:00
Zuul
b4d673a90e Merge "[neutron] Support baremetal mechanism driver" 2019-09-26 14:22:10 +00:00
rajesh.kudaka
fa92e365f5 Add readiness checks to ovs agent
This commit adds readiness checks to neutron ovs agent
to check if the ovs and dpdk configurations are working
without errors.

Change-Id: I48277bdbd91ec8121e5fec300aeb646a80a65d29
2019-09-25 04:51:16 -05:00
ad620p
f830186c45 Support for Neutron Helm test cleanup and reset for abnormal failures
Rally usually cleans up all its resources in normal executions - normal
test success cases and normal test failure cases. But the generic cleanup
does not work well for out of the system failures like process
interruptions, pod failures, disaster cleanup etc.
This is a known issue in rally-openstack. -
"Current generic mechanism is nice but it doesn't work enough well in real life.
And in cases of existing users, persistence context
and disaster cleanups it doesn't work well."

Hence, if we shall face above such issues, it is becoming impossible
to run "helm test neutron" again because of the stale data
and different quota limits mentioned in the values.yaml.
Hence we need to purge the stale data from the "test"
project as well as reset the quota limit for such scenarios.

For the normal executions, this patch has to do nothing,
but for unexpected failures, this patch will purge the stale data
from test project and reset the quota as defined in
values.yaml for the next run.

Change-Id: I3f6851582e2ac1aa1d375fcd13c07f4f57f45dc8
2019-09-25 09:50:52 +00:00
Michael Polenchuk
97ecab8174 [neutron] Support baremetal mechanism driver
Change-Id: Ida1ed36c88c1e6e8f8a6f8de5c93fc7002e4454b
2019-09-24 12:55:04 +04:00
Michael Polenchuk
0e01e058a1 [neutron] Bring in bgpvpn/bagpipe support
BGP-MPLS VPN extension allows attachment of Neutron networks and/or
routers to VPNs built in carrier provided WANs using these standard
protocols.

Change-Id: Ib0ec8cb22e9c113d4be1c992d895b565db5e30b0
2019-07-10 16:23:01 +04:00
Michael Polenchuk
8c93743041 [neutron] Bring in L2 gateway support
L2 Gateway (L2GW) is an API framework that offers bridging 2+
networks together to make them look as a single broadcast domain.
A typical use case is bridging the virtual with the physical networks.

Change-Id: I95ff59ce024747f7af40c6bef0661bb3743b0af1
2019-07-01 15:25:45 +04:00
Hemachandra Reddy
da508727b6 Liveness/Readiness probe for Neutron server and its agents
Health_probe for neutron pods accomplish both liveness and
readiness probe.

Neutron DHCP/L3/OVS agents:
Sends an RPC call with a non-existence method to agent’s queue.
Assumes no other agent subscribed to tunnel-update queue other
than OVS. Probe is success if agent returns with NoSuchMethod
error.

Neutron Metadata agent:
Sends a message to Unix Domain Socket opened by Metadata agent.
Probe is success if agent returns with HTTP status 404.

In both the cases, if agent is not reachable or fails to
respond in time, returns failure to probe.

Readiness probe for Neutron L3/DHCP/Metadata/SRIOV agents
Following are the operations executed on the pod as part of
readiness probe on the neutron agents:
- Check if the agent process is up and running.
- Retrieve the sockets associated with the process from the /proc fs.
- Check the status of tcp sockets related to Rabbitmq communication.
- Check the reachability of the rabbitmq message bus from the agent.
- For SRIOV Agent, check if VFs are configured properly for the
configured NICs in sriov_agent.ini conf file

Change-Id: Ib99ceaabbad1d1e0faf34cc74314da9aa688fa0a
2019-03-06 22:02:37 +00:00
Jean-Philippe Evrard
05d0e2b4b8 Revert "Update OSH Author copyrights to OSF"
This reverts commit b1755c399341388627a668ab9fd6f43b7416f65a.

Change-Id: I215a172f2ff4220340292b95f5323847944baeb7
2018-08-28 17:25:13 +00:00
Matt McEuen
b1755c3993 Update OSH Author copyrights to OSF
This PS updates the "Openstack-Helm Authors" copyright attribution
to be the "OpenStack Foundation", as decided in the 2018-03-20
team meeting:
http://eavesdrop.openstack.org/meetings/openstack_helm/2018/openstack_helm.2018-03-20-15.00.log.html

No other copyright attributions were changed.

Change-Id: I167ceedab8fadee28c19514fad6f125d0a521caf
2018-08-26 17:17:41 -05:00
Steve Wilkerson
354b311ec5 Add local-registry image managment to OSH from OSH-Infra
This PS adds the local registry image managment to OSH from OSH-Infra.
With this the delta between helm-toolkits in the Repo's is removed,
allowing the toolkit from OSH-Infra to be used and the one from OSH
to be depreciated.

Change-Id: If5e218cf7df17261fe5ef249d281f9d9637e2f6a
Co-Authored-By: Pete Birley <pete@port.direct>
2018-05-12 14:35:48 +00:00
Pete Birley
86be88e1d9 Neutron: SR-IOV support
This PS adds SR-IOV Support to OSH.

Change-Id: Ia744c6d7c4a45be7728bba3213b50f1246b897db
2018-03-14 18:13:13 -05:00
Renis
1ecc905b65 Rabbitmq Credential Management
- This PS implements job to create new user
for each chart

Change-Id: I7335ba4ad4bc9f70871100dbd9e6f030049abe07
2018-02-26 17:44:44 -08:00
Chris Wedgwood
6b844382ad yaml cleanup: trim multiline strings
Change-Id: Ice615c1d252651793dfa09b8e85a5b4228d68737
2018-02-20 16:39:52 +00:00
intlabs
35267bffe4 Kernel Modules: Load via chroot into host
This PS moves the loading of kernel modules required by services to
being perfromed via a chroot on the host, this ensures that the correct
module is found and provides compatibility across distros.

Change-Id: I889fdd047a24bf4b123dadf9f6d6e6e8079d69d1
2017-10-31 23:51:53 +00:00
Jawon Choo
121a52dd93 Nova metadata : set clusterIP dynamically
This PS updates nova to set metadata's clusterIP dynamically and
neutron to set nova_metadata_ip from metadata hosts
If specify a clusterIP, it is hard-coded as before also.

Change-Id: Ib0d6df8272bd8494bb59ffc8e6b2cfa36a901f60
Closes-Bug: #1715553
2017-10-15 17:34:25 +09:00
Sean Larimore
d1e775547c Adding database drop jobs
Implemented Kubernetes jobs to drop a database for an OpenStack service
on deletion of Helm chart. This job is configurable to be enabled or
disabled in the values.yaml file for each chart.

Change-Id: Ia1a0834cb43c7e883aaf507a7c7683fa1cf4e838
2017-09-27 09:44:28 -06:00
Pete Birley
37b099e320 Neutron: Move OpenVSwitch into its own chart
This PS moves OpenVSwitch into its own chart - decoupling it from neutron,
both making it easier to deploy and use seperately and permitting
use of other network backends.

Partially implements: blueprint split-nova-and-neutron-infra

Change-Id: Ifd637136b950ddf1ba1c26ce76c9bbdeafc232c3
2017-08-30 16:01:29 +00:00
Artur Korzeniewski
aaedb4a150 Neutron: add linuxbridge daemonset and config script
Adding daemonset for Linux bridge. Using node selector
"linuxbridge enabled".

network.backend added in neutron/values.yaml to support scenario for
different SDNs using the same networking software, like OVS is used
for reference Neutron L2 agent, ODL, OVN and SONA. The other option for
network.backend can be linuxbridge and calico.
network.backend impacts configuration of DHCP, L3 and metadata agents.
Those agents are dependent on ovsdb_connection flag (officially it is
placed in openvswitch_agent.ini file).

Added daemonset_lb_agent flag in manifests section. Currently
OVS and LinuxBridge L2 agents can be turned on/off to be deployed.
OVS L2 agent and OVS as a network virtualization SW can be deployed
independently.

Removed conf.neutron.default.neutron.interface_driver, since it was not
used anywhere.

Marked places in neutron/values.yaml where changes are needed in order
to use linuxbridge for:
- neutron.conf interface_driver
- ML2 mechanism driver
- dhcp and l3 agents interface_driver

Added example of neutron values overrides in:
tools/overrides/mvp/neutron-linuxbridge.yaml

Change-Id: I7cdcfaa9a73af392a0d45f7df29b7b3ae3cc4c76
Implements: blueprint support-linux-bridge-on-neutron
2017-08-29 11:51:42 +02:00
Dae Seong Kim
aacd11e361 Add Tempest script in helm test framework
Now, openstack-helm support "helm test" function, and It execute rally
container.
Rally also can test Tempest itself, so this fix will be add tempest
test in rally container.

Change-Id: I2c2f684f6583f2a3d9c7279a3d85cb242934e90e
Implements: blueprint add-tempest-in-helm-test
2017-08-16 16:56:10 +09:00
Pete Birley
ff8744a9b9 Licence: Remove licence header from rendered files
This PS removes the licence header from rendered output from tiller,
significantly reducing the configmap size of charts deployed to the
cluster.

Change-Id: I5d1b246f2068f3b83bf59ba79fe8b88bbc9a6161
2017-08-07 17:16:13 -05:00
Pete Birley
35601e2bd3 Charts: make manifests optional for all OpenStack elements
This PS allows the rendering of manifests to be controlled. It enables
both increased control over deployment when required but also makes
development of a feature easier to target.

Change-Id: I1716e8ee23fe5c53f935bd739ea283bc4a2a9963
2017-08-07 14:59:48 -05:00
Pete Birley
ab52a43425 Neutron: Add bootstrap job
This PS adds a bootstrap job to Neutron, in the same format as
Keystone and other services.

Change-Id: Ice724be9c8b20b27aaddf528f6cc0e848793c1c1
2017-07-07 04:36:05 +00:00
Pete Birley
ac06f49849 Unify and normalise K8s Resources and Upgrade Strategy
This PS unifies and normalises Kubernetes resource allocation and
update strategy across all OpenStack-Helm elements.

Change-Id: Ia41fc453cb5191fa447ca6e1aa0f5b431c939dc8
2017-07-06 17:48:16 +00:00
Chris Wedgwood
1633197fda Merge ovs 'ensure' logic into the caller
Rename ml2.ovs.auto_bridge_add to network.auto_bridge_add

Change-Id: Idf0e746df8b91cbbf89373d1516108ce2163083c
Co-Authored-By: Artur Korzeniewski <artur.korzeniewski@intel.com>
2017-06-26 15:51:44 +00:00
Pete Birley
653f7ed3e4 Neutron: Helm test functionaility using Rally
This PS adds 'helm test' functionality using Rally to Neutron

Change-Id: I6e89aca1870704368b4dc1f8ad93f8ba563002c1
Partial-Implements: blueprint implement-helm-test-for-charts
External-Tracking-Id: OSH-89
2017-06-22 15:51:27 -05:00
Pete Birley
548f3f0854 Neutron: Move ovs-agent setup to init container
This PS moves the Neutron OVS agent setup to an init container.

Change-Id: Ib56e7f35cfc40ba617bd2f895d39efa8ef2849ea
2017-06-12 17:07:35 +00:00
Pete Birley
8c29949c0d Helm-Toolkit: Update naming to be explict and remove old functions.
This PS updates the way helm-toolkit functions are named to
reference the full path they are loacted at. This should make
development and debugging easier. Addtionally unused functions
have been pruned as well.

Change-Id: I03c553f1d01bccc70c86768b416b147c90d9b2f0
2017-05-31 19:52:02 +00:00
Pete Birley
88e174bd90 Neutron: Move container start commands to scripts.
This PS moves the container start commands to scripts, which makes
debugging and overriding of container launch params easier.

Change-Id: If75087456e42a5214e428107ee5bd53778a1b822
2017-04-28 15:44:04 -05:00
Alan Meadows
3ab6767c74 A few more neutron override bugfixes 2017-04-10 13:49:16 -07:00
Pete Birley
a0092c7922 Update Neutron DB Jobs 2017-04-04 11:33:42 -05:00
Pete Birley
74fe52295e Update Neutron Keystone Jobs to match common architecture 2017-03-14 13:02:18 -05:00
Brandon B. Jozsa
18b3bca8e0 add license headers to neutron 2017-02-17 13:05:32 -05:00
Pete Birley
116931bb51 Rename common chart, and update all references to functions within it. (#167)
* Rename common chart to helm-toolkit

* Update useage of helpers to include reference to chart they come from.

* Update helm-toolkit function naming

Also catches several functions missed in previous PS

* Update remaining requirements.yaml to use helm-toolbox

* Dep Check container fix for common -> helm-toolbox renaming
2017-02-14 16:52:38 -08:00
Alan Meadows
b9a4a0b31d Commit neutron chart
This is a functioning neutron chart that leverages a flat network
but supports vxlan and gre networks in values.yaml.  We were unable
to test the vxlan functionality as it tickles the bnx2x cards in our
HP blade lab.

For now, this leverages daemonsets which make sense.  It does require
a new label, namely openvswitch=enabled as we need a label that can be
applied both to the control plane and tenant compute hosts as both
require neutron agents and openvswitch.  The interfaces today match
our labs, namely enp11s0f0 for the flat network on physnet1 and
enp12s0f0 for the external network.  These can be overriden in
values.yaml via set or a global environmental file.

It depends on the keystone endpoint work.

This chart was tested against a working nova chart not commited as
DTadrzak has one open in PR#45
2017-01-03 12:28:44 -08:00