Support kube-proxy data plane 20/8220/25
authorHongjun Ni <hongjun.ni@intel.com>
Mon, 28 Aug 2017 17:00:42 +0000 (01:00 +0800)
committerDave Wallace <dwallacelf@gmail.com>
Mon, 18 Dec 2017 13:55:45 +0000 (13:55 +0000)
commitc91f50242f384da67ad7a634dbe26276e67efd91
treee784ffaf15d3f5240fdef44f522feb5c4307b54d
parent42998828c9bfa419ff3d9c68fd50cd148e24d4e4
Support kube-proxy data plane

This plugin provides kube-proxy data plane on user space,
which is used to replace linux kernal's kube-proxy based on iptables.
The idea is largely inspired from VPP LB plugin.

Currently, kube-proxy plugin supports three service types:
1) Cluster IP plus Port: support any protocols, including TCP, UDP.
2) Node IP plus Node Port: currently only support UDP.
3) External Load Balancer.

Please refer to kp_plugin_doc.md for details.

Change-Id: I36690e417dd26ad5ec1bd77c7ea4b8100416cac6
Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
13 files changed:
src/configure.ac
src/plugins/Makefile.am
src/plugins/kubeproxy.am [new file with mode: 0644]
src/plugins/kubeproxy/kp.api [new file with mode: 0644]
src/plugins/kubeproxy/kp.c [new file with mode: 0644]
src/plugins/kubeproxy/kp.h [new file with mode: 0644]
src/plugins/kubeproxy/kp_api.c [new file with mode: 0644]
src/plugins/kubeproxy/kp_cli.c [new file with mode: 0644]
src/plugins/kubeproxy/kp_node.c [new file with mode: 0644]
src/plugins/kubeproxy/kp_plugin_doc.md [new file with mode: 0644]
src/plugins/kubeproxy/kp_test.c [new file with mode: 0644]
src/plugins/kubeproxy/kphash.h [new file with mode: 0644]
test/test_kubeproxy.py [new file with mode: 0644]