RETIRED, Kubernetes integration with OpenStack networking
Go to file
Andrey Zaikin 04b6e9bd80 Support DPDK application on bare-metal host
This patch contains binding driver, which intend to copy vhostuser port
to containers's directory. Here container's directory it's mounted
directory. Also this patch contains code to create proper VIF in case
when neutron ovs agent configured to work with vhostuser ports.

There is no code here for port creation, due to it performs in
base.connect by os_vif.plug. This function creates/or recreates OVS
bridge with netdev type, then it  creates port in this bridge. It uses
vif.network.bridge as the name for integration bridge, IOW it doesn't
use ovs_bridge from kuryr.conf, vif.network.bridge is configured by
neutron ovs agent.

VhostUser mode is defined by neutron ovs agent, it obtains from
Open vSwitch configuration:

Command to check Open vSwitch configuration

ovs-vsctl list Open_vSwitch |grep iface_types

If neutron ovs agent finds dpdkvhostuserclient there, it sets
vhostuser_mode to VIFVHostUserMode.SERVER, it means DPDK application in
container will be a server, and OVS will be a client, so DPDK
application will create/bind/listen vhostuser socket by predefined path.
This path is set in kuryr.conf/vhostuser/mount_point.
When dpdkvhostuserclient is not in OVS's capability list, e.g. it's old
OVS or it was built w/o dpdkvhostuserclient support, the mode will be
VIFVHostUserMode.CLIENT. In this case OVS will create/bind/listen
socket, so socket file will exist, and it shoud be copied to container's
mount volume. At the moment of copying OVS server already has to listen
it, otherwise approach is not working.

Partially Implements: blueprint support-vhost-user-port-type-on-bm-installation

Change-Id: Ib9c22368e518815064282f4c3b9f9ddaf58dc622
Signed-off-by: Alexey Perevalov <a.perevalov@samsung.com>
Signed-off-by: Andrey Zaikin <a.zaikin@partner.samsung.com>
Signed-off-by: Vladimir Kuramshin <v.kuramshin@samsung.com>
2020-03-16 16:40:53 +03:00
.zuul.d Disable coredns deployment 2020-03-03 18:19:52 +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 Support DPDK application on bare-metal host 2020-03-16 16:40:53 +03: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
babel.cfg cookiecutter commit for kuryr-kubernetes 2016-05-22 08:54:07 +03:00
cni_ds_init Implement kuryr-cni in golang 2019-06-17 12:58:37 +02:00
cni.Dockerfile Add DPDK support for nested pods 2020-02-04 10:59:45 +03:00
CONTRIBUTING.rst Fix text blocks formatting 2019-11-13 11:39:10 +01:00
controller.Dockerfile Remove Python 2 support 2019-11-19 12:34:54 +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
lower-constraints.txt Removing six library. 2020-02-28 14:45:46 +01:00
README.rst Change inline hyperlinks to link-target pairs. 2019-11-13 12:50:05 +01:00
requirements.txt Removing six library. 2020-02-28 14:45:46 +01:00
setup.cfg Support DPDK application on bare-metal host 2020-03-16 16:40:53 +03: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

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.