开发者社区> 技术小甜> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

【虚拟化实战】容灾设计之四VPLEX

简介:
+关注继续查看

作者:范军 (Frank Fan) 新浪微博:@frankfan7

VPLEX等存储设备的出现,可以实现双活数据中心,最大程度的有效利用运算和存储资源。

在“容灾设计之三Stretched Cluster”中我们介绍了Stretched Cluster的概念,EMC VPLEX是Stretched Cluster支持的存储设备之一。本文大概介绍EMC VPLEX和VMware Stretched Cluster的集成。当然VPLEX也可以独立使用。


一 VPLEX简介

141722111.png

Stretched Cluster对存储的要求是在任何灾难的情况下,虚拟机都能够访问到数据,而且性能不受影响。在灾难恢复后,存储设备尽量能自动切换到最初的设置,避免因为过多的人工干预而产生服务中断。

那我们来看看VPLEX是否能满足这些需求。

以上图的VPLEX Metro为例,该设备有三个突出的特点:

兼容性:VPLEX不仅可以管理EMC的存储设备,还可以管理很多其他厂商的设备。

分布性:VPLEX把底层的存储资源整合起来,创建了中间的一层叫做Distributed Volume。vSphere Cluster无需了解底层使用什么存储设备,只需要在Distributed Volume上创建Data Store。Distributed Volume支持VMFS和RDM.

智能性:假设在Site A的一个VM对Distributed Volume上的数据有写操作,VPLEX会同时在Site A和Site B的存储设备上完成这个写操作。注意写操作都是由本地的VPLEX设备对本地的存储发起的,不会出现异地写造成时延的情况。读操作都是在本地进行的。


二 Architecture Decisions

假设你已经决定使用Stretched Cluster,在评估VPLEX是需要考虑以下几个重要的Architecture Decision

选择哪款VPLEX设备

Type

Comments

Local VPLEX

只适用于单个数据中心

Metro VPLEX

通常用于距离小于100KM的两个数据中心,Synchronous up to 5ms RTT

Geo VPLEX

通常用于距离小于100KM的两个数据中心, Asynchronous up to 50ms RTT


是否需要Witness,如何设置Witness?

以上图为例,假设在数据中心之间供VPLEX设备间通讯的FC或者IP网路中断了,既然两个数据中心都可以对本地发起写操作,这不乱套了么。怎么决定哪个数据中心的存储设备是主设备(preferred),哪个数据中心的存储设备是从设备(non-preferred)。这种情况通常叫做“Split Brian”。顾名思义出现了两个司令部,各行其是,可能造成了在两地的数据不一致。

为了避免以上的情况,Witness VM起到了裁判的作用,来判定哪个Site是Preferred Site。注意Witness VM建议部署在和Site1 和Site2 不同的物理位置。不能出现同时某个Site和Witness VM同时中断服务的情况。

在有些特定环境或者风险可以接受的情况下,也可以不使用Witness

Non-uniform Host Access or uniform Host Access

Non-uniform Host Access指的是SiteA的ESXi主机只能访问SiteA的存储设备,SiteB同理。ESXi主机不可以访问异地的存储设备。

uniform Host Access的意思是ESXi主机可以同时访问本地和异地的存储设备



三 以上决定可能产生的影响

Failover Scenario

对所有可能出现中断的组件,都要验证中断的后果。比如有以下情形:

单个ESXi宕机、多个ESXi宕机、整个机房ESXi宕机、单个ESXi网络中断、数据中心之间用于存储同步的网络中断(StoragePartition)、数据中心之间二层网络中断(DataCenter Partition)、单个VPLEX设备中断,多个VPLEX设备中断、存储阵列磁盘损坏、整个存储阵列宕机、整个数据中心中断等等。详情见此文

Metro Cluster FC WAN

要密切关注连接两地VPlEX设备的FC或者IP网络的流量。在第一次建立VPLEX Metro Cluster的时候,需要VPLEX Sync来在两地间同步数据。取决于需要同步的数据量,有可能会造成网络饱和。如果这条链路除了供VPLEX使用外,是和其他应用共享的,那么很可能对其他的应用造成影响。

这就需要提前规划好VPLEX Sync在什么时间段进行。


参考:

Implementing vSphere Metro Storage Cluster (vMSC) using EMC VPLEX (2007545)

EMC VPLEX 5.0 ARCHITECTURE GUIDE

Conditions for stretched hosts cluster support on EMC VPLEX Metro
















本文转自frankfan751CTO博客,原文链接:http://blog.51cto.com/frankfan/1298689 ,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
《(三)Dapr 在阿里云云原生的实践》电子版地址
《(三)Dapr 在阿里云云原生的实践》PDF
3 0
【自然语言处理(NLP)】基于Skip-gram实现Word2Vec
【自然语言处理(NLP)】基于Skip-gram实现Word2Vec,基于百度飞桨开发,参考于《机器学习实践》所作。
15 0
编写Java程序,利用List实现报数游戏的实现思路
编写Java程序,利用List实现报数游戏的实现思路
101 0
从原理上解读useState钩子函数
从原理上解读useState钩子函数
67 0
Dapr 在阿里云原生的实践
Faas 场景下,比较吸引用户的是成本和研发效率,成本主要通过按需分配和极致的弹性效率来达成。而应用开发者期望通过 FaaS 提供多语言的编程环境,提升研发效率,包括启动时间、发布时间、开发的效率。 ​
2511 0
java实现:将一个数逆序输出
前面我们用C语言实现过这个程序,其实java也一样的,很多步骤跟C差不多,但是有些接口和特性可能不同: import java.util.Scanner;//要使用scanner这个类,就需要导入一个输入接口相关的包 public class HelloWorld { public static void main(String[] args) { //System.
871 0
+关注
10136
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载