实验介绍:
在上期的实验中,搭建了一般企业常用的 ESXi 单存储集群,本次实验搭建的是不需要单独存储服务器的 vSAN 集群。
vSAN 集群可以使用本机已有的硬盘组成跨机器的存储空间,组成集群的机器配置不需要相同,也可以支持迁移、容错等高级特性。
vSAN 集群需要主机间有 10G 以上的网络相连,每台主机需要一个以上的固态磁盘作为存储的缓存盘,一个以上的机械盘作为容量盘,如果是注重 IOPS 的应用环境,也可以使用全固态磁盘组成全闪存集群。
vSAN 集群有多种部署方式,标准的 vSAN 集群需要 3 台以上的机架式服务器以实现大型企业的高可用服务,本次实验选择的是双节点 vSAN 集群,使用两台高配置机架式服务器和一台低配置塔式服务器搭建,模拟一般企业的双机热备业务环境。
实验机配置:
T140(见证):
型号:Dell PowerEdge T140
处理器:Intel® Xeon® E-2224 * 1
内存:8G * 4
硬盘:2T HDD
网卡:板载双千兆电口
R740(主):
型号:Dell PowerEdge R740
处理器:Intel® Xeon® Gold 5218R * 2
内存:32G * 2
硬盘:480G SSD * 2,8T HDD * 1
网卡:板载 4 千兆电口,X710 双万兆光口 * 1
R740(备):
型号:Dell PowerEdge R740
处理器:Intel® Xeon® Silver 4214R * 2
内存:32G * 2
硬盘:480G SSD * 2,8T HDD * 1
网卡:板载 4 千兆电口,X710 双万兆光口 * 1
网络规划:
机器 | 网卡 | IP 地址 | 作用 |
---|---|---|---|
T140 | 千兆电口 | 192.168.9.100 | ESXi 管理地址 |
R740(主) | 千兆电口 | 192.168.9.101 | ESXi 管理地址 |
R740(备) | 千兆电口 | 192.168.9.102 | ESXi 管理地址 |
R740(主) | 万兆光口 | 192.168.233.101 | vSAN 流量,和 R740(备)光口直连 |
R740(备) | 万兆光口 | 192.168.233.102 | vSAN 流量,和 R740(主)光口直连 |
见证虚拟机 | 虚拟网卡 | 192.168.9.103 | ESXi 管理地址 |
见证虚拟机 | 虚拟网卡 | 192.168.9.104 | vSAN 见证流量 |
vCSA | 虚拟网卡 | 192.168.9.99 | vCenter 管理地址 |
部署步骤:
系统配置:
- 在 3 台主机安装 ESXi-7.0U3c-19193900
- 在 T140 的 ESXi 安装 vCSA-all-7.0.3-19234570
- 在安装 vCSA 前应该把网络规划好:
如果局域网内有可以配置的 DHCP 和 DNS 服务器,可以将 ESXi 和 vCSA 的 IP 设置为自动获取,并在安装 vCSA 的步骤中填上 FQDN;
如果没有,必须设置 vCSA 为固定 IP 且 FQDN 留空,IP 后续无法修改,修改了 IP 会导致 vCSA 服务无法正常启动。 - 登陆 vCSA,创建数据中心,创建集群,不需要勾选集群功能
- 连接 ESXi,将 T140 加入数据中心,两台 R740 加入集群
- 下载 VMware-VirtualSAN-Witness-7.0U3c-19193900,在 T140 主机使用
部署OVF模板
导入系统作为 “见证虚拟机”
导入步骤中需要注意的是网络的配置,默认是使用第一个网卡作为管理用,第二个是 vSAN 见证流量,分别配置好对应的静态 IP - 将见证虚拟机加入数据中心
网络配置:
- 创建分布式交换机,设置 MTU 为 9000
- 将主机添加到分布式交换机并配置网卡
- 如果多台主机的网络配置相同,可以在
所有主机的适配器
批量选择 - 否则可以在
每台主机的适配器
里选中主机,确认网卡状态,手动设置网卡 - 在分布式交换机里创建用于 vSAN 的端口组
- 在两台 R740 创建用于 vSAN 的 VMkernel 网卡,并设置和交换机匹配的 MTU(9000)
- 启用服务:
vMotion
、置备
、FT日志记录
、vSAN
,配置对应的 IP 地址 - 因为两台 R740 启用了 vSAN 流量的网卡使用了光纤直连,无法与见证主机通信,所以需要设置见证流量使用另外一个网卡
- 登录到两台 R740 的 shell,运行命令
esxcli vsan network ip add -i vmk0 -T=witness
- 可以使用
esxcli vsan network list
检查设置结果
网络配置结果:
点击展开
- T140:
- R740(主):
- R740(主)的 VMkernel 网卡情况:
- R740(备):
- 见证虚拟机:
集群配置:
- 如果集群内的机器配置相差很大,为了兼容性,可以考虑开启 EVC 功能。
- 检查准备用于 vSAN 的磁盘是否有数据,如果有分区需要清掉
- 确认 T140 和见证虚拟机是在数据中心内而不是在集群内
- 进入集群,配置,选择快速入门或者 vSAN 服务下启用 vSAN 功能,选择
双节点vSAN集群
,并按照提示声明磁盘,将固态盘声明为缓存层
,将机械盘声明为容量层
- 分别将
R740(主)
和R740(备)
配置为首选故障域
和辅助故障域
,将见证虚拟机
声明为见证主机
- 最后的配置结果:
- 等待配置完成后,可以去开启
DRS
、HA
等功能
集群配置结果:
点击展开
- 开启 DRS 功能:
- 开启 HA 功能:
- 配置完成的状态:
环境验证:
集群搭建完毕,可以开始测试双机热备的使用效果了。
双机热备的功能是通过 vSphere 集群的 Fault Tolerance
功能实现。
对虚拟机开启这个功能后,这台虚拟机的配置和磁盘文件会保存在两台物理主机的存储,在两台物理机同时运行这个虚拟机,其中一台对外提供服务,运行状态(内存)通过 vMotion 网络实时复制到另一台物理主机。
如果其中一台物理主机出现故障,另一台主机收到这个情况后马上接管业务,可以达到无损切换。
而另一种高可用技术 HA (High Availability),是在检测到有物理主机故障后,在其他主机重新启动该虚拟机,没有实时保存内存状态。
启用 FT:
安装好虚拟机系统后,启用对应虚拟机的 FT 功能:
等待初始化完成后,开机,检查状态:
可以看到,虚拟机目前主要运行在192.168.9.102
上,辅助虚拟机在192.168.9.101
检查文件状态:
主虚拟机和辅助虚拟机的文件有分开存放,并且每个虚拟机的文件都存放到了两台物理主机上,确保无论是哪台物理机或虚拟损坏,都可以切换到另外一台检查两台物理机的虚拟机情况,发现都有存放虚拟机:
验证 FT:
断开其中一台机器的网络后,状态如下:
在切换前,已经连接了该虚拟机的远程桌面并开始了 ping 测试:
可以看到,在短暂的丢包后,连接恢复了。在实际的远程桌面操作中,大约无响应了 30 秒后恢复,可能是因为实验环境的网络没配置好的原因。
此时再重新接回机器的网络,虚拟机会自动同步,同步完成如下:
至此,双机热备验证完成。
在实际的生产环境中,还需要确保网络链路可靠,vSAN、管理、业务网络等需要分开 VLAN,且需要配置链路冗余,才能确保集群可靠性。
最终效果截图: