188 Commits

Author SHA1 Message Date
Gage Hugo
6398d97d5a Enable audit pipeline for neutron
This change adds the keystonemiddleware audit paste filter[0]
and enables it for the neutron-server service.
This provides the ability to audit API requests for neutron.

[0] https://docs.openstack.org/keystonemiddleware/latest/audit.html

Change-Id: I86b4df1436ae59bc9a151c28337af7c06c83e45f
2019-04-11 13:06:50 -05:00
Hyunkook Cho
3e67ceadb2 change the way to get tunnel device
to set local_ip in osh, you have to use nic name.
but some devices can have different nic name.
so I add new option for getting tunnel device by cidr.

Added value:
network:
  interface:
    tunnel: null
    tunnel_network_cidr: "0/0"

Change-Id: I8bffae640dfe0086de0b5274bb8c3cdce9754160
Signed-off-by: Hyunkook Cho <hk0713.cho@samsung.com>
2019-04-01 17:59:33 +09:00
Zuul
6b82435cfe Merge "Fix neutron probes under python3" 2019-03-27 23:38:34 +00:00
Itxaka
514d54a5c0
Fix neutron probes under python3
Under python3 an Exception no longer has the message attribute,
instead you can just str the exception to get the error message

Change-Id: I38225a76e01118b88353038ed7ef132d019dd976
2019-03-20 13:56:10 +01: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
Chris Wedgwood
dcd7ebf37b [neutron] 'up' interfaces added via ovs auto_bridge_add
Previously, when adding interfaces to an ovs bridge we would set the
link state to up.  Some environments assume this is the case so
restore that behavior.

This fixes the problem where external (public) IPs for routers and VMs
no longer respond.

Change-Id: I59e21bd5cde7e239320125e9a7e0a33adae578a8
2019-03-12 08:03:48 +00:00
Zuul
c598004355 Merge "Liveness/Readiness probe for Neutron server and its agents" 2019-03-10 01:25:42 +00:00
pd2839
6d7724c790 readOnlyFilesystem: true for neutron chart
Fix for adding readOnlyFilesystem flag at pod level

Change-Id: I9ba18101a4566329f288d77677d4255646935dd5
2019-03-07 03:48:39 +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
chengli3
6e2e4aba8d Support per-host overrides of auto_bridge_add
.Values.network.auto_bridge_add is a global config. So in multi nodes
deployment, it requires that all hosts have the same nic names. This is
a strict limit.
This patch is to support per-host auto_bridge_add, so that we can define
different auto_bridge_add for hosts.
Also, this patch move .network.auto_bridge_add to .conf.auto_bridge_add

Change-Id: I4a4d6efbbfe073d035bc5c03700fbe998e708d0f
Story: 2005059
Task: 29601
2019-03-05 16:40:58 +08: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
Hyunkook Cho
4f4b7f5b62 Neutron: add log config file to ovs agent chart.
neutron-sanity-check module load logging.conf file
but there is no config file.

Change-Id: I5e6dd298ccd9fb5432002f76bad3931ec035bb16
Signed-off-by: Hyunkook Cho <hk0713.cho@samsung.com>
2018-12-26 18:17:10 +09:00
Zuul
ed0c92eca0 Merge "Neutron PodSecurityContext" 2018-12-21 02:44:19 +00:00
Pete Birley
c90df9d6d5 Neutron: Perform full db migrations when TaaS enabled
This PS fixes the neutron db sync job to perform full db migrations
in addaion to tap-as-a-service when enabled.

Change-Id: Ieab54649344fb8737e2d8855f00a9ed574ace5ee
Signed-off-by: Pete Birley <pete@port.direct>
2018-12-15 18:42:46 -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
Tang, Roy (rt7380)
68e79c43ca Minor fixes to neutron sriov agent
syntax error in init script template

Change-Id: I8e51907e7a65aa914f42a4d9badda9b621d344d0
2018-10-29 04:24:39 +00:00
Tin Lam
29f32a07ac Enable network policy enforcement
This patch set updates the gate to by default uses network policy
for all components and enforces them in Openstack-helm.

Change-Id: I70c90b5808075797f02670f21481a4f968205325
Depends-On: I78e87ef3276e948ae4dd2eb462b4b8012251c8c8
Co-Authored-By: Mike Pham <tp6510@att.com>
Signed-off-by: Tin Lam <tin@irrational.io>
2018-10-23 14:58:13 +00:00
Roy Tang
fed088d84b Update Neutron TaaS Rootwrap Filter
Need to adjust taas rootwrap filter for i40e_sysfs_command.
Add code to allow sriov agent init script to run best effort.
Update way to set nic promisc mode.

Change-Id: Id1e22ea4b636ae7e05b880739a88c410a4da587c
2018-10-04 08:15:00 +00:00
Pete Birley
a5d6be32c7 SRIOV: Limit number of vfs to n-1 created by default
This PS udpates the sriov init script to by default create the
max number of vfs supported by the card -1. Which works round
issues encoutered with many cards that prevents ther theroretical
max being attainable.

Change-Id: I01f8ce1f36b6053a5ef68119d87b67050ffe99d1
Signed-off-by: Pete Birley <pete@port.direct>
2018-09-18 17:43:03 +00:00
Pete Birley
8e4ee070e6 SRIOV: Set sriov device mtu
This PS exposes the ability to set the vf device mtu.

Change-Id: If1193a71f1da391918e122c3d60f967023b732e1
Signed-off-by: Pete Birley <pete@port.direct>
2018-09-18 12:28:48 -05: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
Zuul
34e8122cf5 Merge "Neutron TaaS support as L2 Extension" 2018-09-11 21:08:55 +00:00
Roy Tang
2f5a1c0c77 Neutron TaaS support as L2 Extension
This is the second draft to enhance neutron in ocata to support
Tap-as-a-service (TaaS) as a L2 Extension.

Change-Id: I96951b38dd43ab4904339b778b5726a579c76a4c
2018-09-07 14:20:19 +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
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
Steve Wilkerson
2f878e6cf7 Dynamically generate tags for oslo_log fluentd formatter
This proposes changing the tags added to the openstack logs
gathered by the fluentd handler from `openstack.<service>` to
`Namespace.Release` to account for multiple instances of openstack
services being deployed into different namespaces. This allows for
fine tuning the search queries in elasticsearch/kibana to target
specific service deployments in specific namespaces

Change-Id: Ia12dceb4089e107e15d8e30c92c91f350dc31318
2018-07-23 13:28:26 +00:00
Steve Wilkerson
2840259fb8 Armada check: Add test directive to charts
This adds support for executing helm tests via the armada test
directive. It enables theses tests for all services, except for
nova and neutron as executing tests with armada force a chart to
wait. Forcing nova and neutron to wait effectively sequences the
charts, which will result in a failure to deploy past those
services

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

Change-Id: I6ac845c82d744e2f5fd79c3e2ff3c1479dd1ddab
2018-07-11 13:34:58 +00:00
Pete Birley
fed9fb3ca3 Neutron: check that local ip address is populated on agent startup
This PS updates the agent init container scripts to ensure that the
local IP address is populated on agent startup.

Change-Id: Ib5857d9dc82b1138a1b5f496ebe46dc1e3f221e7
Signed-off-by: Pete Birley <pete@port.direct>
2018-07-06 17:30:35 +00: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
Zuul
e8f561127f Merge "Add logging.conf files to enabled loggers/handlers/formatters" 2018-06-26 18:02:54 +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
Pete Birley
e19be77f08 Ingress: Add initial TLS Support for core service public endpoints
This PS adds support for TLS on over-ridden fqdn's for public
endpoints for core OpenStack Services. Currently this implementation
is limited, in that it does not provide support for dynamicly loading
CAs into the containers, or specifying them manually via configuration.
As a result only well known or CA's added manually to containers will
be recognised.

Change-Id: I8f1b699af29cbed2d83ad91bb6840dccce8c5146
Depends-On: I535f38a8d92c01280d79926a1f0acd06984aabbf
Signed-off-by: Tin Lam <tin@irrational.io>
Signed-off-by: Pete Birley <pete@port.direct>
2018-06-26 07:15:24 +00:00
Zuul
0163d9c17d Merge "Dynamic dependencies: remove unused variable" 2018-06-17 16:51:47 +00:00
Zuul
a3475ae9c8 Merge "Gotpl: remove quote and trunc to suppress output" 2018-06-17 07:14:10 +00:00
Pete Birley
75ecf8fdf4 Gotpl: remove quote and trunc to suppress output
This PS removes the use of the `quote and truncate` approach to
suppress output from gotpl actions in templates and replaces it
with the recommended practice of defining `$_` instead.

Change-Id: I5f35c5f7e70b4f7f461d772e3b72ed1c695c56a8
Signed-off-by: Pete Birley <pete@port.direct>
2018-06-16 18:52:13 +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
67aed694c4 Deployments: Use current kubernetes deployment version
This PS moves to use the current ga version for kubernetes deployments.

Story: 2002205
Task: 21735
Depends-On: Icb4e7aa2392da6867427a58926be2da6f424bd56

Change-Id: I062a8a29dff70427ee9bcf09f595011b3611b0b1
Signed-off-by: Pete Birley <pete@port.direct>
2018-06-13 21:29:59 -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
Pete Birley
fc9a6610d5 Neutron: Queens support
There is a neutron bug in Queens that needs resolved for now, if we cannot
even get the version of neutron-sanity-check, skip this validation.

see: https://bugs.launchpad.net/neutron/+bug/1769868

Change-Id: Id41625f0073f197fcf8fe6170696977b8025dc7f
Signed-off-by: Pete Birley <pete@port.direct>
2018-05-17 14:59:03 -05:00
Hyunsun Moon
896fc6b8d2 ovs,neutron: use auto_bridge_add for external bridge and interface
Also changed ovs-agent-init to take care of configuring default external
bridge and interface for cosistency with lb-agent.

Change-Id: I1d893b73a784f55594c30f17ef022348d68f0f1b
2018-05-15 14:20:22 +00:00
Zuul
ab5776299c Merge "Start using nova_metadata_host" 2018-05-13 06:23:55 +00: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
5e153c3823 Neutron: SR-IOV agent template fix
This PS fixes the template rendered in the neutron SR-IOV agent
manifest.

Change-Id: Ib221213c8df94613a2dcf12e2615442db0684794
2018-03-22 15:21:11 -05:00