Kubernetes integration with OpenStack networking
Go to file
Michał Dulko a0a6e65bb0 Nested CNI: Remove interfaces on DEL requests
Historically we haven't been doing any actions on CNI DEL request when
running in nested mode because all the interfaces we created will be
gone when netns will get deleted. There is an issue with that approach:

1. We get ADD request for pod A in netns X and correctly bind it using
   VLAN ID V.
2. We get DEL request for same pod A and netns X. We don't do anything.
3. Netns is not yet deleted…
4. Another ADD request comes for pod A but now with netns Y (normal K8s
   behavior).
   a) We try binding it, but there is a veth pair with VLAN ID V already
   on the host namespace, so we end up with VLAN ID conflict.
   b) Binding fails with EEXIST error.

The problem with this hypothesis is that the EEXIST error seems to be
persistent and in theory it should disappear after the netns gets
deleted but maybe there's a longer delay in the netns deletion.

This commit solves this problem by making sure we always clean up all
interfaces on DEL requests.

Change-Id: I01b66dcd5c7c0e8193150a0a1b20878aaa8ec9e3
Closes-Bug: 1854928
2020-03-04 15:34:52 +01:00
.zuul.d Move OpenShift job to experimental 2020-02-25 13:12:39 +01:00
contrib Removing six library. 2020-02-28 14:45:46 +01:00
devstack Add IPv6 devstack support for namespace subnet driver 2020-02-28 09:59:16 +01:00
doc Add info about required RBAC permissions to docs 2020-02-11 11:39:02 +01:00
etc Proceed CNI output in format of version 0.3.1 2018-07-04 13:04:35 +00:00
kubernetes_crds Update CRDs from apiextensions.k8s.io/v1beta1 to v1 2020-02-26 12:00:37 +01:00
kuryr_cni Remove runtime.LockOSThread() call from kuryr-cni 2019-08-30 15:03:54 +02:00
kuryr_kubernetes Nested CNI: Remove interfaces on DEL requests 2020-03-04 15:34:52 +01:00
playbooks Switch to use Ubuntu Bionic Octavia Amphora 2019-12-03 16:30:24 +01:00
releasenotes Ensures accurate quota calculation during the readiness checks 2020-02-25 16:58:02 +03:00
tools Save logs of previous restart of containers 2019-08-28 14:48:40 +02:00
.coveragerc tox: fix coverage 2016-11-18 10:14:56 +03:00
.dockerignore Add support to install Kuryr as a network addon 2017-09-14 13:33:53 +02:00
.gitignore ignore Editor tags 2018-09-25 12:16:08 +02:00
.gitreview OpenDev Migration Patch 2019-04-19 19:44:54 +00:00
.pre-commit-config.yaml Add support for pre-commit-hooks 2018-09-27 13:05:43 +02:00
.stestr.conf Switch to using stestr 2018-07-16 15:43:10 +00:00
.testr.conf cookiecutter commit for kuryr-kubernetes 2016-05-22 08:54:07 +03:00
CONTRIBUTING.rst Fix text blocks formatting 2019-11-13 11:39:10 +01:00
HACKING.rst Fix inconsistency in headlines format. 2019-11-13 11:39:10 +01:00
LICENSE cookiecutter commit for kuryr-kubernetes 2016-05-22 08:54:07 +03:00
README.rst Change inline hyperlinks to link-target pairs. 2019-11-13 12:50:05 +01:00
babel.cfg cookiecutter commit for kuryr-kubernetes 2016-05-22 08:54:07 +03:00
cni.Dockerfile Add DPDK support for nested pods 2020-02-04 10:59:45 +03:00
cni_ds_init Implement kuryr-cni in golang 2019-06-17 12:58:37 +02:00
controller.Dockerfile Remove Python 2 support 2019-11-19 12:34:54 +01:00
lower-constraints.txt Removing six library. 2020-02-28 14:45:46 +01:00
requirements.txt Removing six library. 2020-02-28 14:45:46 +01:00
setup.cfg Merge "Remove namespace isolation support" 2020-02-05 19:27:42 +00:00
setup.py Updated from global requirements 2017-03-15 12:44:19 +00:00
test-requirements.txt Bump hacking to newer version 2020-02-21 12:02:58 +01:00
tox.ini Remove Python 2 support 2019-11-19 12:34:54 +01:00

README.rst

Team and repository tags

image

Project description

Kubernetes integration with OpenStack networking

The OpenStack Kuryr project enables native Neutron-based networking in Kubernetes. With Kuryr-Kubernetes it's now possible to choose to run both OpenStack VMs and Kubernetes Pods on the same Neutron network if your workloads require it or to use different segments and, for example, route between them.

Contribution guidelines

For the process of new feature addition, refer to the Kuryr Policy.