Kube-OVN includes two parts:
- Native OVS and OVN components
- Controller and CNI plugins that integrate OVN with Kubernetes
-
Add the following label to the Node which will host the OVN DB and the OVN Control Plane:
kubectl label node <Node on which to deploy OVN DB> kube-ovn/role=master
-
Install native OVS and OVN components:
kubectl apply -f https://raw.githubusercontent.com/alauda/kube-ovn/v0.3.0/yamls/ovn.yaml
-
Install the Kube-OVN Controller and CNI plugins:
kubectl apply -f https://raw.githubusercontent.com/alauda/kube-ovn/v0.3.0/yamls/kube-ovn.yaml
That's all! You can now create some pods and test connectivity.
For high-available ovn db, see high available
```bash
--default-cidr: Default CIDR for Namespaces with no logical switch annotation, default: 10.16.0.0/16
--node-switch-cidr: The CIDR for the Node switch. Default: 100.64.0.0/16
```
-
Remove Kubernetes resources:
wget https://raw.githubusercontent.com/alauda/kube-ovn/master/dist/images/cleanup.sh bash cleanup.sh
-
Delete OVN/OVS DB and config files on every Node:
rm -rf /var/run/openvswitch rm -rf /etc/origin/openvswitch/ rm -rf /etc/openvswitch
-
Reboot the Node to remove ipset/iptables rules and nics.