/mycni

Mycni is a simple CNI plugin based on linux brige and routes for Kubernetes

Primary LanguageGoApache License 2.0Apache-2.0

MyCNI

A simple CNI plugin for kubernetes, similar with Flannel host-gw.

Components

mycni: CNI plugin for containers, create Linux Bridge, veth pair and assign IP for Pod. mycnid: daemon service on each host, watch Nodes and set routes, iptables for each host.

Network architecture: mycni-network-arch

Quick Start

Deploy MyCNI into your kubernetes cluster

!!! It will deploy a DaemonSet application in all nodes, please run this in your dev cluster or kind/minikube

kubectl apply -f https://raw.githubusercontent.com/qingwave/mycni/main/deploy/mycni.yaml

Develop

It's more easier to use kind cluster for test. Create a kind cluster

make kind-cluster

Build image

make docker-build

Load image into kind cluster [optional]

make kind-image-load

Deploy CNI

make deploy