在6.1版本中,vSAN也可以提供双活功能(vSAN延伸集群)。相对于传统双活方案,vSAN延伸集群具有一定优势。具体如下:
(1)我们知道,vSAN属于基于策略驱动的分布式存储,集成在vSphere Kernel中,运行在X86上。在此基础上,利用服务器本地盘,实现的vSAN延伸集群,属于低成本双活解决方案。同时vSAN提供双活的保护级别,是VMDK级别的,其颗粒度更高(传统存储双活方案基于LUN)。
(2)还是那句话,vSAN继承了VMware的基因,即与vCenter集成,操作简单:点击下鼠标就能完成。
(3)vSAN虽然不是开源软件,但是十分开放。vSAN对服务器硬件兼容性列表很长(vSAN Ready Node),生态圈很好。
下面我们谈谈vSAN延伸集群的技术细节。
整体架构
从整体架构来看,vSAN延伸集群也是一个vSAN集群,只是它的ESXi主机分布到两个数据站点上:SiteA和SiteB。每个站点是一个“故障域”。两个故障域之间VSAN数据完全一样,也就是FTT=1. 除了两个数据站点,vSAN延伸集群“仲裁站点”的角色由第三站点的见证主机担任,见证主机不提供计算资源和存储资源。数据站点之间通过万兆网络相连,数据站点与见证主机使用普通网即可。当一个站点的虚拟机对VSAN进行写操作的时候,数据将会被双写到两个数据站点磁盘上。
版本要求
vSAN延伸集群版本要求:vCenter Server 6.0U1 、ESXi 6.0U1。vSAN延伸集群既支持混合磁盘,又支持全闪存阵列。
配置规模
SAN延伸集群最小配置是1+1+1(两个数据站点和一个仲裁站点ESXi的数量),最大是15+15+1,vSAN双活两个站点的ESXi数量相同。目前高端X86服务器配置都很高,因此15个ESXi对于中小规模的双活需求是够的。如果是大规模的双活要求,那就需要配置多个vSAN延伸集群。每个vSAN延伸集群有一个见证主机即可。
见证主机:
见证主机可以是物理的ESXi,也可以在虚拟机中安装ESXi。VMware提供见证主机的Appliance(免费的OVF),它不消耗客户的vSphere license。见证主机不必加入到vSAN集群中,而是在创建vSAN延伸集群的时候进行选择,它位于vSAN集群之外。
心跳机制
vSAN延伸集群实施完毕后,vSAN会从主站点和备站点分别选出两个ESXi,做站点间心跳通讯检测。vSAN的Master节点位于主站点的某一个ESXi上,Backup节点位于第二个站点的某一个ESXi上。
Master节点和Backup节点每一秒钟发一个心跳,如果持续5秒没有心跳,Master将会选择第二站点另外一个ESXi作为Backup。如果备站整体出现故障,Master会从主站点选一个ESXi作为心跳的backup。
如果Master和仲裁站点5秒钟没有心跳,那么仲裁站点将被认为出现故障。出现这种情况,可以配置一个新的见证主机即可。
脑列问题
在解决脑列问题方面,vSAN延伸集群的做法是手工指定主站点。也就是发生脑列后,指定哪个站点存活,这样就避免了很多随机事件。
性能
vSAN延伸集群很好低解决了本地读的问题。在标准vSAN集群,虚拟机的读操作是从所有数据副读。例如FTT=1,那么对数据进行读操作的时候,50%的I/O来自第一个副本,另外50%I/O将来自第二个副本。同理如果有三个副本的话,那么读的时候,每个副本各占33%。而vSAN延伸集群增加了本地读的特性,例如主站点一个虚拟机读取数据时,所有I/O操作都将源于本站点ESXi的本地盘。
为了保证性能,在vSAN延伸集群中,尽量减少不必要的站点之间的vMotion。因为读cache预热是在一个故障域内完成的,如果虚拟机vMotion到另外一个故障域,对方站点的cache则需要过一会才起作用。vSAN集群利用vSphere特有的优势,如vSphereHA的affinity(设置VM和ESXi之间的关联,当某一个ESXi发生故障时,如果条件允许,虚拟机优先在本故障域内其它ESXi上重启),这样既保证性能,又保证高可用。
网络要求:
vSAN的数据站点之间,或者数据站点和仲裁站点之间的网络,二层和三层网络都可以支持,这降低了对大二层的要求。但是,我们推荐在数据站点之间使用二层网络。
(2)数据站点站点之间小于5ms之间的延迟(RTT)。数据站点与仲裁站点之间200的延迟不能超过200ms。
(3)数据站点和仲裁站点之间的带宽最不小于50-100Mbps.
(4)网络划分
管理网络:连接三个站点。二层或者三层网络
vSAN网络:连接三个站点。数据中心之间建议二层网络,与仲裁站点之间使用三层网络。
VM network:连接数据中心。建议二层网络,这样当虚拟机从一个数据站点vMotion或HA到另外一个数据站点时,IP地址不变。
vMotion网络:连接数据中心。二层,三层网络都可以。
网络协议
(1)数据站点之间既有组播(metadata / state)又有单播(IO). 数据站点和仲裁站点之间走的单播,数据站点之间和数据站点内使用组播协议。
最后,我向大家介绍一下VMware的两地三中心解决方案。在这个方案中,数据中心分为同城和异地。同城两个数据中心,异地作为灾备中心通常在远端城市。同城之间,利用vSAN延伸集群提供数据同步复制,异地之间,利用VR提供数据的异步复制。这里需要注意的是,在这个方案中,VR提供的RTO最短可以做到5分钟。
根据这个方案,如果数据站点内,某一个X86服务器出现故障, vSphereHA会优先让虚拟机在数据中心内其他esxi主机上重启;如果同城一个数据中心整体出现故障,那么HA将会使本站点的虚拟机在同城另外一个站点的esxi重启。如果同城两个数据中心均出现故障,那么SRM将会让这些虚拟机在异地灾备站点重启。
总结:随着市场的发展,分布式存储的应用层场景将会越来越多,而vSAN作为其中的优秀代表,也必将帮助解决更多的IT问题、在VMware SDDC解决方案中大放异彩!