RETIRED, Kubernetes integration with OpenStack networking
04b6e9bd80
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> |
||
---|---|---|
.zuul.d | ||
contrib | ||
devstack | ||
doc | ||
etc | ||
kubernetes_crds | ||
kuryr_cni | ||
kuryr_kubernetes | ||
playbooks | ||
releasenotes | ||
tools | ||
.coveragerc | ||
.dockerignore | ||
.gitignore | ||
.gitreview | ||
.pre-commit-config.yaml | ||
.stestr.conf | ||
.testr.conf | ||
babel.cfg | ||
cni_ds_init | ||
cni.Dockerfile | ||
CONTRIBUTING.rst | ||
controller.Dockerfile | ||
HACKING.rst | ||
LICENSE | ||
lower-constraints.txt | ||
README.rst | ||
requirements.txt | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini |
Team and repository tags
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.
- Free software: Apache license
- Documentation: https://docs.openstack.org/kuryr-kubernetes/latest
- Source: https://opendev.org/openstack/kuryr-kubernetes
- Bugs: https://bugs.launchpad.net/kuryr-kubernetes
- Overview and demo: https://superuser.openstack.org/articles/networking-kubernetes-kuryr
- Release notes: https://docs.openstack.org/releasenotes/kuryr-kubernetes/
Contribution guidelines
For the process of new feature addition, refer to the Kuryr Policy.