mysql如何不停机迁移_如何实现真正的不停机数据迁移?

各位周三好。

明天是大年三十了,西瓜哥也要过年了。今年是最后一天探讨存储技术。正愁不知道和大家分享啥,收到一个网友的投稿,简述如何实现不停机迁移数据的一个比较好的方法,决定选登出来,供大家参考。

0818b9ca8b590ca3270a3433284dd417.png

---------------------------------------

解读存储虚拟化引擎发展的3个阶段

现如今越来越多的信息中心的系统要求7*24小时连续运行,从而保证业务的连续性,尤其是在金融、医疗行业对这一需求更加迫切。因此很多信息中心都部署了服务器双机集群,存储集群,并通过部署存储虚拟化引擎来实现异构存储的整合,数据迁移,存储高可用,双活数据中心等功能。通过这一系列功能实现数据的安全保护以及故障的快速切换,从而减少业务中断时间,保证业务的连续性。

但是存储虚拟化引擎如何迁入客户原有的环境中,是否需要停机,会对用户环境造成什么样的影响,是用户最关心的。

下面笔者就从虚拟化引擎发展的3个阶段,谈谈存储虚拟化引擎的部署。

阶段1:迁入用户环境,原有数据需导出、再导入

0818b9ca8b590ca3270a3433284dd417.png

图1阶段1数据需导出再导入

如上图所示,在阶段1存储虚拟化引擎需要对阵列初始化后才能看到并管理存储空间,对于用户已存有数据的阵列是无法直接接管的。需要做如下的数据迁移操作:

1.拿一个额外的阵列B被虚拟引擎接管并初始化,然后通过服务器,将数据从阵列A拷贝到阵列B,如上图①所示。

2.拷贝完成,关闭服务器并断开阵列A与服务器的连接。然后将阵列A连接到存储虚拟化引擎,将阵列A初始化(原有数据会被擦除),重新划分LUN并映射给服务器。

3.再将数据从阵列B拷贝回到阵列A中。这样存储虚拟化引擎就接管了阵列A。

但是整个过程我们可以看到,不仅需要停机而且数据来回拷贝时间较长,一般用户难以忍受。

阶段2:停机迁入用户环境,无需数据迁移

0818b9ca8b590ca3270a3433284dd417.png

图2   阶段2无需数据迁移

阶段2,数据不需要导出再导入了,存储虚拟化引擎可以直接接管带有数据的阵列。只需以下操作步骤即可:

1.服务器需要停机或者IO挂起,然后断开阵列A和服务器之间的连接。

2.阵列连接存储虚拟化引擎,存储虚拟化引擎可以原封不动地继承原有阵列中的数据,不会做任何更改。

3.原先的存储LUN通过存储虚拟化引擎映射给对应的服务器。

4.启动服务器,挂载对应的LUN

阶段2虽然解决了数据导出再导入的的过程,但是同样需要停机来部署。对于一些需要7*24连续运行的系统环境,还是不能满足要求。目前IBM SVC的Imagemode,EMC Vplex的Encapsulation技术都是通过类似的原理来进行存储虚拟化引擎的迁入。

阶段3:无停机部署,可在线迁入、迁出

0818b9ca8b590ca3270a3433284dd417.png

图3   阶段3无停机部署

阶段2之所以还需要停机,是因为如图3状态②所示,同一个LUN A直接映射给服务器和通过存储虚拟化引擎映射给服务器,在服务器端的MPIO多路径软件会认为是2块不同的磁盘,但实际上指向的是同一块磁盘即LUN A,因此数据不会通过虚拟化引擎写入后端阵列,这是由于存储设备硬件信息VPD不一致而引起的。虽然存储虚拟化引擎不会对接管的LUN中的数据做更改,但是接管后存储设备的VPD(vital productdata)硬件信息,如磁盘的GUID号会被改变,导致同一块磁盘MPIO软件认为是2块不同的磁盘。

因此InfoCore通过透明路径迁移技术,克服了这一技术问题,实现了存储虚拟化引擎可以在线迁入、迁出用户环境的功能。

InfoCore的透明路径迁移技术在原封不动地继承磁盘中数据的同时也可以原封不动地继承存储设备的硬件信息,这样如上图②所示,同一个LUN通过路径1和路径2映射出去的GUID号是一致的, MPIO多路径软件会认为这是阵列通过另一条路径直接映射过来的同一个磁盘。这样就能在不停机的情况下将2条路径聚合在一起,系统只识别到1块磁盘,这样数据就可以通过路径1和路径2写入后端存储,实现存储网关的在线迁入和迁出。具体实现过程如下:

1.断开路径2,此时服务器仍可以继续通过路径1往阵列A读写数据。

2.通过路径2将阵列与虚拟化引擎相连,通过虚拟化引擎将阵列中的数据封装并继承下来,这时服务器仍可以通过路径1读写数据。

3.将LUN通过路径2映射前端服务器,利用透明路径迁移技术,服务器端的MPIO会认为路径2也是直接通过阵列映射过来的,是同一块磁盘,这样就可以通过路径2读写数据。因此可以实现路径1和路径2的故障转移或者负载均衡功能。

4.还可以将路径1断开,IO路径自动切换到路径2,将路径1也通过虚拟化引擎连接到服务器。如上图③所示。

5.通过透明迁移技术可以在不停机的前提下,将存储虚拟化引擎在线迁入、迁出用户原有环境。如上图①—>②—>③,③—>②—>①所示,也可以保持在状态②。

通过InfoCore的透明路径迁移技术,可以在不停机的前提下,将存储虚拟化引擎部署到用户原有的环境中,避免对用户环境产生的影响,满足用户对无停机部署的要求,并通过MPIO软件实现故障转移、负载均衡等功能,还能通过存储虚拟化引擎实现自动分层、缓存加速、存储高可用、CDP、容灾备份等功能,提高用户环境的安全性和存储性能。

-------------------------------------------

点评:

这篇文章其实有软文嫌疑,O(∩_∩)O哈!但西瓜哥并不排斥软文,只要它说得有道理。Infocore的透明路径迁移技术,西瓜哥确实在其他的产品没有见过,思路比较新颖,也蛮实用的,我想其他做虚拟化的厂商都可以参考(但不知道是否有专利问题)。一般的虚拟化网关要加入一个新的拓扑中,需要停业务半小时左右,因为LUN的MAPPING需要重新做一下。而这种透明路径的思路,可以实现0宕机业务迁移。

我还和作者聊了一下,问了一下环境的限制问题。他说目前支持windows、linux、unix,上面有多路径软件就可以。如果这么说来,适应的范围还是蛮广泛的。

好了,技术的分享我们就到这里。今天是我们今年(农历年)最后一期内容了,在这里,西瓜哥祝福各位马年平安,家庭幸福,马上有钱!

这两天微信搞了一个新年红包,西瓜哥深受其害。目前已经发出好几大百大洋,但只收到20-30块钱。对于现在某些群动不动就狂发巨额红包,毫无群文化可言,西瓜哥只想对群主说四个字,请加上我。

微信这个红包功能,我认为是有屎以来最成功的营销。目前打车软件的疯狂补贴,不就是拼线下支付吗?微信红包据说这两天绑定的银行卡近亿张,相当于支付宝8年的积累。1天=8年,这就是互联网思维,谁说QQ无创新。打车烧钱的营销比这个创意可不是差一点半点的。现在支付宝也推出红包功能,但对不起,我上面没有朋友,我不会给商家发红包的。作为消费者,我乐意看到他们的竞争,O(∩_∩)O哈!

再次感谢各位对西瓜哥的支持。恭喜发财,红包拿来。明年见。

0818b9ca8b590ca3270a3433284dd417.png

你可能感兴趣的:(mysql如何不停机迁移)