Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

参考:https://blog.51cto.com/u_14742102/3425275

五、虚拟网络

5.1 PVE虚拟网络拓扑

某某公司超融合项目的虚拟网络的核心架构是在PVE虚拟化平台上创建虚拟交换机(OVS类型)、创建虚拟主机,并与物理交换机、物理路由器一起,组建管理网以及业务网。虚拟主机通过接入到虚拟交换机中实现相互通信,虚拟交换机接入到物理交换机中,物理交换机接入到物理路由器中,组成虚拟网络与物理网络互联互通的混合网络,如图23所示。

图23. 虚拟网络与物理网络混合架构
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

5.2 PVE虚拟网络简介

Proxmox VE基于Debian Linux操作系统,Debian Linux操作系统支持原生的虚拟网络有Linux Bridge、Linux Bond及Linux VLAN三种类型。Proxmox VE同时集成了Open vSwitch(OVS)开放虚拟交换机组件,所以Proxmox VE的原生虚拟网络除了Linux Bridge、Linux Bond及Linux VLAN这三种类型之外,还包括Open vSwitch类型,如图24所示。

图24. Proxmox VE原生虚拟网络模型
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

根据Proxmox VE官网的wiki文档《Open vSwitch》介绍,Open vSwitch和Linux Bridge、Linux Bond或Linux VLAN不能混合使用。例如,不要尝试将Linux VLAN添加到OVS Bond,或将Linux Bond添加到OVS Bridge,反之亦然。Open vSwitch是专门为在虚拟化环境中运行而定制的,无需使用主机自带的Linux Bridge、Linux Bond或Linux VLAN等功能,如图25所示。

图25. Open vSwitch不能与Linux原生虚拟网络混用
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

在本项目中,Proxmox VE的虚拟网络使用Open vSwitch,不使用Linux原生虚拟网络,后续不再做声明。

5.3 节点1的PVE虚拟网络配置

如图20中的虚拟网络与物理网络的混合架构看起来非常复杂,以致于不得不删减了一些跟集群相关的虚拟网,为了方便进行配置,有必要对图22的网络架构进行解构,进行还原,节点1的PVE虚拟网络如图26所示。

图26. 节点1的PVE虚拟网络架构
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

5.3.1 管理网络配置

根据表2和表3,管理网络的VLAN ID是VLAN 255,包括节点1的PVE系统的管理以及节点1服务器的BMC接口都统一划分到VLAN 255,其中VLAN 255的虚拟IP地址在S5110V2-28P-SI上。注意,在Proxmox VE语境下,Bridge(网桥)等同于Switch(交换机),后续不再做声明。在做配置演示之前,我先把节点1的虚拟网络配置截图出来,大家有个大概了解,不至于蒙圈,如图27所示。

图27. 节点1的虚拟网络配置
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

好了,下面我们开始演示节点1的管理网络的配置,有了图27,相信大家很容易能理解下面这些步骤。

  • 第一步:创建名称为“vmbr1”的OVS Bridge(虚拟交换机),并将“eno2”物理接口捆绑到虚拟交换机,如图28所示。

图28. 创建名称为vmbr1的虚拟交换机
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

注意:eno1和eno2的类型是“网络设备”,这表明是物理接口。当物理接口eno1和eno2被捆绑到虚拟交换机之后,eno1和eno2的类型就会变成“OVS Port”,也就是成为虚拟交换机上的接口,这个接口是可以使用物理网线直接连接的,仍然属于物理接口,只不过在虚拟交换机上,变了个称呼,叫“OVS Port”。

  • 第二步:配置“eno2”的VLAN属性,VLAN属性与物理交换机相对应的接口保持一致,如图29所示。

OVS Port是物理接口“eno2”在虚拟交换机上的接口属性,本质上是一个物理接口,可以使用网线将“eno2”与物理交换机S5110V2-28P-SI的G1/0/12接口连接起来,所以“eno2”的VLAN属性与G1/0/12的VLAN属性要一致,才能进行通信。

图29. “eno2”的VLAN属性
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

  • 第三步:创建名称为“br1mgnt”的OVS IntPort(虚拟接口),并将“br1mgnt”虚拟接口捆绑到虚拟交换机vmbr1上,如图30所示。

OVS IntPort与OVS Port的区别就是,OVS IntPort是一个虚拟接口,是OVS虚拟出来的一个接口,无法连接网线的,而OVS Port是可以的。OVS IntPort如果要与物理网络通信,需要与物理接口(OVS Port)比如说“eno2”捆绑到同一个虚拟交换机上,且该虚拟交换机不能直接配置IP地址。

图30. 创建名称为br1mgnt的虚拟接口
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

注意1,“br1mgnt”虚拟接口中填写了默认网关“10.129.255.1”,整个节点1的PVE虚拟网络只能有一个默认网关,类似于物理主机只能有一个默认网关,也就是说只能有一条八个零的路由,如图26所示,节点1的PVE虚拟网络只有“10.129.255.1”一个默认网关。

注意2,如果节点服务器的物理网卡数量多,也可以直接使用物理接口捆绑虚拟交换机,然后直接给虚拟交换机配置管理IP地址,而不需要使用IntPort接口。

本项目中,PVE虚拟网络只有二层交换,不涉及到IP路由,无需创建虚拟路由器,IP路由算法由物理网络设备负责。

5.3.2 业务网络配置

根据表2和表3,业务网络的VLAN ID是VLAN 250和VLAN 251,包括节点1的虚拟主机VM1~VM7划分到VLAN 251,节点2的虚拟机VM8~VM14划分到VLAN 250,节点3的虚拟机VM15~VM21划分到VLAN 250,其中VLAN 250和VLAN 251的虚拟IP地址在物理交换机S5110V2-28P-SI上。

  • 第一步:创建名称为“vmbr2”的OVS Bridge(虚拟交换机),并将“eno1”物理接口捆绑到虚拟交换机,如图31所示。

图31. 创建名称为vmbr2的虚拟交换机
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

  • 第二步:配置“eno1”的VLAN属性,VLAN属性与物理交换机相对应的接口保持一致,如图32所示。

OVS Port是物理接口“eno1”在虚拟交换机上的接口属性,本质上是一个物理接口,可以使用网线将“eno1”与物理交换机S5110V2-28P-SI的G1/0/17接口连接起来,所以“eno1”的VLAN属性与G1/0/17的VLAN属性要一致,才能进行通信。

图32. “eno1”的VLAN属性
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

本项目中,PVE虚拟网络只有二层交换,不涉及到IP路由,无需创建虚拟路由器,IP路由算法由物理网络设备负责。

5.3.3 存储网络配置

根据表2和表3,存储网络的VLAN ID是VLAN 252,各个节点的存储采用VLAN 252进行通信。由于节点1服务器上物理网卡不多,节点1的存储通信采用IntPort虚拟接口。

第一步:创建名称为“br1ceph”的OVS IntPort(虚拟接口),并将“br1ceph”虚拟接口捆绑到虚拟交换机vmbr1上,如图33所示。

图33. 创建名称为br1ceph的虚拟接口
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

“br1ceph”虚拟接口捆绑到虚拟交换机vmbr1上,使用物理接口“eno2”进行通信,因此物理接口“eno2”要允许VLAN 252透传。

5.3.4 集群网络配置

根据表2和表3,集群网络的VLAN ID是VLAN 253,各个节点的集群采用VLAN 253进行通信。由于节点1服务器上物理网卡不多,节点1的集群通信采用IntPort虚拟接口。

  • 第一步:创建名称为“br1ceph_cluster”的OVS IntPort(虚拟接口),并将“br1ceph_cluster”虚拟接口捆绑到虚拟交换机vmbr1上,如图34所示。

图34. 创建名称为br1ceph_cluster的虚拟接口
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

“br1ceph_cluster”虚拟接口捆绑到虚拟交换机vmbr1上,使用物理接口“eno2”进行通信,因此物理接口“eno2”要允许VLAN253透传。

5.3.5 公共网络配置

根据表2和表3,公共网络的VLAN ID是VLAN 254,各个节点的公共网络采用VLAN 254进行通信。由于节点1服务器上物理网卡不多,节点1的公共网络通信采用IntPort虚拟接口。

  • 第一步:创建名称为“br1ceph_public”的OVS IntPort(虚拟接口),并将“br1ceph_public”虚拟接口捆绑到虚拟交换机vmbr1上,如图35所示。

图35. 创建名称为br1ceph_public的虚拟接口
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

“br1ceph_public”虚拟接口捆绑到虚拟交换机vmbr1上,使用物理接口“eno2”进行通信,因此物理接口“eno2”要允许VLAN 254透传。

5.4 节点2的PVE虚拟网络配置

节点2的PVE虚拟网络配置与节点1的类似,这里就不演示节点2了,只给出虚拟节点2的PVE虚拟网络架构图和节点2的虚拟网络配置图,如图36和图37所示。

图36. 节点2的PVE虚拟网络架构图
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

图37. 节点2的虚拟网络配置图
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

5.5 节点3的PVE虚拟网络配置

节点3的PVE虚拟网络配置与节点1的类似,这里就不演示节点3了,只给出虚拟节点3的PVE虚拟网络架构图和节点3的虚拟网络配置图,如图38和图39所示。

图38. 节点3的PVE虚拟网络架构图
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

图39. 节点3的虚拟网络配置图
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

5.6 各节点虚拟主机网络配置

根据图26、图36以及图38所示,各节点的虚拟主机的网络配置就很简单了,这里只演示节点1的VM1虚拟机网络配置,其他节点不再演示。

第一步:在节点1的PVE上将VM1的虚拟网卡捆绑到虚拟交换机vmbr2上,vlan标签为251

选择“VM1→硬件→网络设备(net0)→编辑”,如图40所示。

图40. 虚拟机VM1网卡属性配置
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

第二步:根据表4的IP地址规划,在VM1上配置相对于的IP地址和网关,如图41所示。

图41. 虚拟机IP地址配置
Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

Proxmox VE + Ceph 超融合项目实战(第五部分:虚拟网络)

上一篇:aop 幂等验证(三)


下一篇:go struct结构体转换为slice切片