kube-ovn

Kube-OVN 网络插件

补充说明

Kube-OVN 基于 OVN/OVS 提供 Kubernetes 网络、子网、VPC、静态 IP、QoS、网络策略和双栈。它适合需要固定 IP、租户隔离和传统网络对接的场景。

核心概念:ProviderNetwork、VPC、Subnet、IPPool、NetworkAttachmentDefinition 和 OVN 逻辑网络。

语法

安装:

helm repo add kubeovn https://kubeovn.github.io/kube-ovn/
helm install kube-ovn kubeovn/kube-ovn \
  --namespace kube-system \
  --set networking.podSubnet=10.16.0.0/16
kubectl -n kube-system get pods -l app=kube-ovn

创建子网:

kubectl apply -f - <<'EOF'
apiVersion: kubeovn.io/v1
kind: Subnet
metadata:
  name: demo-subnet
spec:
  protocol: IPv4
  cidrBlock: 10.20.0.0/24
  gateway: 10.20.0.1
  vpc: demo-vpc
  namespaces:
  - demo
EOF

创建 VPC:

kubectl apply -f - <<'EOF'
apiVersion: kubeovn.io/v1
kind: Vpc
metadata:
  name: demo-vpc
spec:
  namespaces:
  - demo
EOF

固定 IP:

kubectl apply -f - <<'EOF'
apiVersion: v1
kind: Pod
metadata:
  name: fixed-ip
  namespace: demo
  annotations:
    ovn.kubernetes.io/ip_address: 10.20.0.10
spec:
  containers:
  - name: app
    image: nginx
EOF

查看网络资源:

kubectl get subnet
kubectl get vpc
kubectl get ippool
kubectl get pod -n demo -o wide

注意

相关命令

参考链接