mirror of https://github.com/EdgeVPNio/cni.git
cni: Kubernetes CNI plugin to integrate EdgeVPN overlay with K8s
https://github.com/EdgeVPNio/cni
9bd0388b7b | ||
---|---|---|
deployment | ||
src | ||
README.md |
README.md
evioPlugin
CNI plugin for EdgeVPN - Enhanced version of bridge plugin to work with OVS and utility to allocate IP address range to nodes and generate config file for the plugin. Dependency on github.com/containernetworking tag v0.7.5
mkdir -p $GOPATH/src/github.com/containernetworking
cd $GOPATH/src/github.com/containernetworking
git clone https://github.com/containernetworking/plugins.git
cd plugins
git checkout tags/v0.7.5
cd plugins/main/
git clone https://github.com/EdgeVPNio/evioPlugin.git
Now need to download a few dependencies.
go get github.com/j-keck/arping
go get github.com/vishvananda/netlink
go get github.com/digitalocean/go-openvswitch/ovs
go get go.etcd.io/etcd/clientv3
We will need three executables, for the plugin, config-gen evioUtililty and for host-local IPAM plugin.
# assuming you are in $GOPATH/src/github.com/containernetworking/plugins/plugins/main/evioPlugin/src
go build evioPlugin.go
go build evioUtilities.go
cd $GOPATH/src/github.com/containernetworking/plugins/plugins/ipam/host-local
go build
Now we need to copy all three executables to the deployment folder.
cd $GOPATH/src/github.com/containernetworking/plugins/plugins/main/evioPlugin/deployment
cp $GOPATH/src/github.com/containernetworking/plugins/plugins/ipam/host-local/host-local .
cp $GOPATH/src/github.com/containernetworking/plugins/plugins/main/evioPlugin/src/evioPlugin .
cp $GOPATH/src/github.com/containernetworking/plugins/plugins/main/evioPlugin/src/evioUtilities .
Build the docker image.
docker build -t evio_plugin:0.0 -f evioCNI.dockerfile .