社区实践 | KubeVirt通过Kube-OVN接入Underlay网络

本篇文章转自Kube-OVN社区成员技术博客,介绍了KubeVirt通过Kube-OVN的Underlay网络模式,使虚拟机接入物理网络的实现。

作者:苏楷,宁算(南京)科技有限公司高级工程师

实践操作

检查Kubernetes使用的Pod网络地址段和Service网络地址段。

sukai@ubuntuserver:/etc/kubernetes/manifests$ sudo grep cidr kube-controller-manager.yaml
    - --allocate-node-cidrs=true
    - --cluster-cidr=10.244.0.0/16
sukai@ubuntuserver:/etc/kubernetes/manifests$ sudo grep range kube-controller-manager.yaml
    - --service-cluster-ip-range=10.211.0.0/16

检查kube-ovn-controller配置项是否正确

kube-ovn在版本v1.11.0开始支持keep-vm-ip参数,虚拟机使用固定IP地址。

Containers:
  kube-ovn-controller:
    Container ID:  containerd://0f8d53403c9821c7b535c64d2c98e1ca130a15e1b2b878270cd9388c36d0e48a
    Image:         kubeovn/kube-ovn:v1.11.0
    Image ID:      docker.io/kubeovn/kube-ovn@sha256:fea623e68a2a81ef78102c6cfe95b96c16c054c57f4c8b9d168bd3ff620b6779
    Port:          <none>
    Host Port:     <none>
    Args:
      /kube-ovn/start-controller.sh
      --default-cidr=10.244.0.0/16
      --default-gateway=10.244.0.1
      --default-gateway-check=true
      --default-logical-gateway=false
      --default-exclude-ips=
      --node-switch-cidr=100.64.0.0/16
      --service-cluster-ip-range=10.211.0.0/16
      --network-type=geneve
      --default-interface-name=
      --default-vlan-id=100
      --pod-nic-type=veth-pair
      --enable-lb=true
      --enable-np=true
      --enable-eip-snat=true
      --enable-external-vpc=true
      --keep-vm-ip=true

创建服务网络

指定物理服务器上访问物理网络的网卡。

apiVersion: kubeovn.io/v1
kind: ProviderNetwork
metadata:
  name: office
spec:
  defaultInterface: eno1

创建VLAN

创建在指定服务网络上创建一个VLAN,这里VLAN ID为0表示不属于任何VLAN。

apiVersion: kubeovn.io/v1
kind: Vlan
metadata:
  name: defaultvlan
spec:
  id: 0
  provider: office

创建子网

在defaultvlan上,创建一个子网,这个子网作用的namespace为mail263,指定子网分配的物理网络地址段,物理网络网关地址。

---
apiVersion: kubeovn.io/v1
kind: Subnet
metadata:
  name: mail263
spec:
  protocol: IPv4
  cidrBlock: 172.16.3.0/24
  gateway: 172.16.3.2
  excludeIps:
  - 172.16.3.1..172.16.3.200
  vlan: defaultvlan
  #  natOutgoing: false
  #private: false
  namespaces:
  - mail263

查看kube-ovn信息

sukai@ubuntuserver:~$ kubectl get vla
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值