Kuryr (or more
specifically Kuryr-Kubernetes) is an SDN solution built using
CNI and
OpenStack Neutron. Its
advantages include being able to use a wide range of Neutron SDN backends and
providing inter-connectivity between Kubernetes pods and OpenStack virtual
machines (VMs).
Kuryr-Kubernetes and OKD integration is primarily designed for
OKD clusters running on OpenStack VMs. Kuryr-Kubernetes components
are installed as pods on OKD in the kuryr
namespace:
-
kuryr-controller - a single service instance, installed on an infra
node.
Modeled in OKD as a Deployment
.
-
kuryr-cni - container installing and configuring Kuryr as CNI driver on each
OKD node. Modeled in OKD as a DaemonSet
.
The Kuryr controller watches the OpenShift API server for pod, service, and
namespace create, update, and delete events. It maps the OKD API calls to
corresponding objects in Neutron and Octavia. This means that every network
solution that implements the Neutron trunk port functionality can be used to
back OKD via Kuryr. This includes open source solutions such as OVS and
OVN as well as Neutron-compatible commercial SDNs.