70 Commits

Author SHA1 Message Date
songgongjun
0389b54578 Modify files related to overrides.
As the functions of overrides are upgraded,the
files that depend on the functions of overrides
need to be modified synchronously.This patch and
https://review.opendev.org/#/c/707788/ depend on
each other.

Story: 2007291
Task: 38753
Depends-on: https://review.opendev.org/#/c/707788/
Change-Id: I048c8fe73f8f85df465f2c829812b75be1e4f130
Signed-off-by: songgongjun <gongjun.song@intel.com>
2020-03-03 20:06:45 +08: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
Prateek Dodda
bea5c63d4d Implement Security Context for Neutron
Implement container security context for the following Nova resources:
 - Neutron metadata_agent
 - Neutron ovs_agent

Change-Id: If8246450f8ebd62a0c5999f832ec59796355ee78
2019-11-26 20:32:28 +00:00
Oleg Bondarev
1dcdebe140 [neutron] Add write access to state_path (/var/lib/neutron)
Change-Id: Idfcd1622fcb8d37356d9bfb11bbb2cd0f35a1bf5
2019-08-23 12:30:16 +04:00
Steve Wilkerson
363b50b336 Neutron: Fix security context values keys
This updates the values used for generating the pod and container
security contexts for the components of the neutron chart. This
moves to using a unique application key for each neutron service
instead of a single 'neutron' key that maps to every pod

This also removes the .pod.user.neutron.uid key in favor of using
the user key in the security_context values tree

Change-Id: I1c87a5b4b74e2a2d17b8913dd34f40dc1c38fbe0
Signed-off-by: Steve Wilkerson <sw5822@att.com>
2019-07-05 16:15:06 +00:00
Pete Birley
03efee0abb Neutron: allow control of probes
This PS allows the probes in containers/pods to be tuned via values
overrides.

Depends-On: https://review.opendev.org/#/c/631597/

Change-Id: I439dce38a1b7df8c798f10f7fad406f9b0dfe3e6
Signed-off-by: Pete Birley <pete@port.direct>
2019-07-02 18:39:37 +00:00
Pete Birley
31bd9c832d Logs: Make it optional to use log_config_append option
This PS enables the use of simple logging options if desired.

Change-Id: If6ea420c6ed595b3b6b6eedf99a0bf26a20b6abf
Signed-off-by: Pete Birley <pete@port.direct>
2019-06-17 13:51:21 -05:00
Pete Birley
623c131292 OSH: Add emptydirs for tmp
This PS adds emptydirs backing the /tmp directory in pods, which
is required in most cases for full operation when using a read only
filesystem backing the container.

Additionally some yaml indent issues are resolved.

Change-Id: I9df8f70e913b911ff755600fa2f669d9c5dcb928
Signed-off-by: Pete Birley <pete@port.direct>
2019-04-20 08:55:44 -05:00
Chris Wedgwood
3baeefdd37 Revert "Add Docker default AppArmor profile to neutron"
This reverts commit 584c63c2e9120536005bcb677bac88dca9ee1335.

Change-Id: I3565f684154432609da2b6b5b4639ee9072b4b76
2019-03-19 20:09:15 +00:00
Zuul
ad7b32e4de Merge "Add Docker default AppArmor profile to neutron" 2019-03-15 17:06:44 +00:00
Zuul
c598004355 Merge "Liveness/Readiness probe for Neutron server and its agents" 2019-03-10 01:25:42 +00: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
dt241s
584c63c2e9 Add Docker default AppArmor profile to neutron
Change-Id: I17b44183c00a23081f00a6932d519c2ed7806385
2019-02-28 14:09:58 -06:00
Steve Wilkerson
f4c01d2461 Add release-uuid annotation to pod spec
This adds the release-uuid annotation to the pod spec for all
replication controller templates in the openstack-helm charts

Change-Id: I0159f2741c27277fd173208e7169ff657bb33e57
2019-02-12 12:31:59 -06:00
bk160f
8514d31f51 Neutron PodSecurityContext
securityContext with non-root user is implemented
at Pod level and leveraged the helm-toolkit snippet

Fix for adding allowPrivilegeEscalation flag in container
securityContext in the neutron charts whereever needed

Depends-On: I95264c933b51e2a8e38f63faa1e239bb3c1ebfda

Change-Id: Id93b56d2e3886b9dd9115e79c28f661930146b00
2018-12-14 16:47:28 +00:00
Pete Birley
3ae745a10e Add release uuid to pods and rc objects
This PS adds the ability to attach a release uuid to pods and rc
objects as desired. A follow up ps will add the ability to add arbitary
annotations to the same objects.

Depends-On: Iceedba457a03387f6fc44eb763a00fd57f9d84a5
Change-Id: I324680f10263c1aefca2be9056e70d0ff22fcaf0
Signed-off-by: Pete Birley <pete@port.direct>
2018-09-13 06:29:14 -05: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
Pete Birley
83b91e6e1b Openstack: Use k8s secret to store config
This PS moves openstack components in OSH to use secrets to store
potentially sensitive config information.

Depends-On: https://review.openstack.org/#/c/593732

Change-Id: I9bab586c03597effea0e48a58c69efff3f980a92
Signed-off-by: Pete Birley <pete@port.direct>
2018-08-22 20:39:52 -05:00
Pete Birley
e0f076b658 Neutron: Ensure agent processes are reaped
This PS moves the neutron agents to run as child processes of either
the pause container or use the hosts init system (for k8s <1.10)
to prevent defunct process sprawl.

Change-Id: I3392bdc957144c1aa83314583d57183d35279336
Co-Authored-By: Hyunsun Moon <hyunsun.moon@gmail.com>
Signed-off-by: Pete Birley <pete@port.direct>
2018-06-26 18:26:00 +00:00
Steve Wilkerson
da7bc575ec Add logging.conf files to enabled loggers/handlers/formatters
This introduces a mechanism for generating the logging.conf
file for the openstack services via the values. This allows us to
define loggers, handlers, and formatters for the services and the
modules they're composed of.

This also allows us to take advantage of the oslo fluent handler
and formatter. The fluent handler and formatter give us the
following benefits: sending logs directly to fluentd instead of
routed to stdout/stderr and then through fluentbit to fluentd,
project specific tags on the logged events (enables us to define
more robust filters in fluentd for aggregation if required),
full traceback support, and additional metadata (modules that
created logged event, etc)

Depends-On: https://review.openstack.org/577796

Change-Id: I63340ce6b03191d93a74d9ac6947f0b49b8a1a39
2018-06-26 09:51:14 -05:00
Zuul
0163d9c17d Merge "Dynamic dependencies: remove unused variable" 2018-06-17 16:51:47 +00:00
Pete Birley
b1e515529f Dynamic dependencies: remove unused variable
This PS removes an unused variable from the resolution of
dynamic pod dependencies.

Change-Id: I95728a7b91d5143c2a44566179ef8066727020af
Signed-off-by: Pete Birley <pete@port.direct>
2018-06-16 14:19:26 +00:00
Pete Birley
5cfa1501a2 Daemonsets/Deployments: Use current kubernetes api version
This PS moves to use the current ga version for kubernetes daemonsets,
additionally any remaining deployments that were using the
`extensions/v1beta1` have been updated to `apps/v1`.

Story: 2002205
Task: 21735
Depends-On: If9703162dc472af1e6096bf2b9062802fd5ce8ab

Change-Id: Iba4e3d2798c54639e077b80999e669c79b616c6f
Signed-off-by: Pete Birley <pete@port.direct>
2018-06-15 14:35:31 -05:00
Pete Birley
460675bf7f Add image management function to manifests
When removing helm-toolkit from OSH and swithcing to use the
toolkit from OSH-Infra, the image declaration function was missed.

Depends-On: I2f2012590d81ffcb159d49d8a76eedd4441744cd
Change-Id: I0f1118bb748f3fe1b6bb73acfc00e77c5cca9c7d
Signed-off-by: Pete Birley <pete@port.direct>
2018-05-20 10:10:16 -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
Hyunsun Moon
6c9b4df6fe openvswitch: allow setting ovsdb connection using vsctl
Also changed neutron agents to use default, ptcp:6640:127.0.0.1.

Change-Id: Id43c376851f0c408da4684c219dc79ef4a1c157b
Closes-Bug: 1761117
2018-04-24 11:01:31 +09:00
Pete Birley
5bb772cf50 Neutron: Enable sharing of network namespaces with host
This PS enables sharing of network namespaces with the host,
allowing for hitless upgrades of agents, and much simpler debugging.

It does however require mount propogation to be enabled in kubernetes
which is a alpha gated feature introduced in 1.8, and enabled by default
as a beta feature in 1.10.

Depends-On: I7a37f45ff6061b144c6f04233712cd84fccb3e83
Change-Id: I2a191a343fe637cbfd9e4af5277f9784af736dd1
2018-04-22 22:23:09 +00:00
portdirect
ceca6ad96c Neutron: Move all config to be directly values driven.
This PS moves all the config files to be directly values driven,
both simplifying over-ride and allowing configs to be targeted
to pods in future work.

Change-Id: Ifcbc19b17aa1d145f12ed1aed8b15a69ca045bb7
2018-03-27 13:25:17 -04:00
Pete Birley
a7193c37d4 Neutron: agent host targetting
This PS adds the ablity to target different configs to different
hosts for the nutron agents, in the same manner as nova-compute.

Change-Id: Iebd87e30014d6cac2127c7e1a14259b10d74fbf8
2018-03-21 17:47:29 -04: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
Pete Birley
340a9ec434 Networking: dynamic backend support
This PS allows the neutron and nova charts to dynamicly adapt to
various backends.

Depends-On: I0ec13f45fd4561fec59d08b08eb78390a3866156

Change-Id: I1891af4b0e49237e229ff5e61e907dc3e413cf87
2018-02-26 13:16:25 +00:00
Pete Birley
f57972b5b6 dependencies: move static dependencies under a 'static' key
This PS moves static dependencies under a 'static' key to allow
expansion to cover dynamic dependencies.

Change-Id: I38990b93aa79fa1f70af6f2c78e5e5c61c63f32c
2018-02-23 12:31:15 -08:00
Hyunsun Moon
aba33b3440 Neutron: make metadata proxy work
- corrected the path of "socket" volume, which is used for sharing
  metadata proxy unix socket among the agents
- and give neutron user permission to write to the dir
- set the default nova_metadata_ip to full hostname of metadata
  so that it could be accessed properly via ingress
- removed unnecessary configurations from values

Change-Id: I4d20dc670fecebd9799851d659c5f42edb4821ac
Closes-Bug:1745370
2018-02-03 16:21:05 +00:00
portdirect
fa2620d54b RBAC for OSH
This PS applys RBAC rules to OSH, based off the work
done in https://review.openstack.org/#/c/526464/

Change-Id: I541b0ac1a3972566ef2b66571ae32744dab70c17
2017-12-26 10:24:19 -05:00
Tin Lam
1c5b5024cf Images: Neutron service specific explicit image names
This patch set makes the service-specific images for neutron
have explicit names, allowing simple over-riding of images
for an entire site.

Change-Id: Ica7e1f77f43936971d44ac0e6645ac656ca83b96
2017-12-01 11:14:30 -06:00
intlabs
fe6107cf76 Images: Update values to allow simple parse of images being used
This PS updates the values file layout for images to allow simple
parsing of the images in use by charts, allowing them to be queried
and modified much more simply. By moving the image tags to a 'tags'
key, we can extend the options used simply to accomodate extra
options simply (eg prefixing the tag for use with an internal
registry) or pre-pulling the images to reduce chart deploy failure.

Change-Id: I9ec1dbb00d997ab6cb021bf0b698f7aae740e95d
2017-10-23 10:05:20 -05: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
Chris Wedgwood
6706735611 Spelling fixes
Change-Id: Iba49ab54f7df0fd73f78141f139a479c882c2216
2017-09-06 19:20:35 +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
Jenkins
85b6716c49 Merge "Fix for appending custom volumes" 2017-08-25 15:00:10 +00:00
Mateusz Blaszkowski
fc9677f718 Fix for appending custom volumes
Before this change, there was no ability to append custom volume for
any of the services. The reason was a missing new line character, so
the templates were formatted like this:
- name: pod-shared
  mountPath: /tmp/pod-shared - mountPath: /tmp/test2
  name: test2

Apart from that, for some of the services (mostly job-bootstrap) invalid
indentation for custom volumes (and their mounts) was set.

Closes-Bug: 1712745
Change-Id: Ib57c76a34c0e28ad9e67ea47d1fc250b17711a42
Signed-off-by: Mateusz Blaszkowski <mateusz.blaszkowski@intel.com>
2017-08-24 06:24:47 -04:00
Pete Birley
4740486f63 Security: Container user and rootwrap for neutron
This PS adds user control for the service user and rootwrap for
the Neutron chart.

Change-Id: Ibefa3e76c9e64427e97cdcbb93a11d2b2125e171
2017-08-24 05:26:30 +00:00
Pete Birley
0c75f1ab9c Update DNS policy for pods in host network namespace
This PS updates the DNS policy for pods that run in the hosts network
namespace.

Change-Id: I5ff11985459c967e5248d1ce9f62ebfc578e3afb
2017-08-10 16:43:20 -05: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
cbae720d1d Values: Move mounts to pod key
This PS moves the mounts key to be under the pod key in the values.
It brings further consolation of related configuration params to be
nested under common keys across all charts.

Change-Id: If9963e4f8b438847e2fcad3bdd8c0d71ca9ecdd8
2017-07-14 10:44:35 -05:00
Pete Birley
20527cb57c Move k8s pod params under common key
This PS moves K8s pod params under a common key.

Change-Id: Ib4e72e82a4f1540fa800c39d0dcc91b286d96c93
2017-07-11 23:28:47 +00:00
Tin Lam
670a78bcbe Fix file permission and readOnly flag
This patchset enforces stricter file permission on *-etc configmap and
sets readOnly flag to true in a number of charts.

Change-Id: I233689a5d56dd1352e0d81997a94b4cdd6bed5d2
Signed-off-by: Tin Lam <tin@irrational.io>
2017-07-08 13:24:14 -05: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