在实际生产环境中,面对存储/数据的同步双活需求,有基于主机的LVM Mirror技术以及基于存储厂商的同步和双活技术这样两个方向。
我想了解一下大家从哪几个维度对比这两种实现方案,如何做取舍?谢谢!
收起LVM在每个物理卷头部都维护了一个metadata,每个metadata中都包含了整个VG(volume group:卷组)的信息,包括每个VG的布局配置,PV(physical volume:物理卷)的编号,LV(logical volume:逻辑卷)的编号,以及每个PE(physical extends:物理扩展单元)到LE(logical extends:物理扩展单元)的映射关系。同一个VG中的每个PV头部的信息都是相同的,这样有利于故障时进行数据恢复。
LVM对上层文件系统提供LV层,隐藏了操作细节。对文件系统而言,对LV的操作与原先对partition的操作没有差别。当对LV进行写入操作的时候,LVM定位相应的LE,通过PV头部的映射表将数据写入到相应的PE上。LVM实现的关LVM最大的特点就是可以对磁盘进行动态管理。因为逻辑卷的大小是可以动态调整的,而且不会丢失现有的数据。我们如果新增加了硬盘,其也不会改变现有上层的逻辑卷。键在于PE和LE之间建立映射关系,不同的映射规则决定了不同的LVM存储模型。LVM支持多个PV 的stripe和mirror。
LVM最大的特点就是可以对磁盘进行动态管理,因为逻辑卷的大小是可以动态调整的,而且不会丢失现有的数据,如果我们增加了硬盘也不会改变现有的上层逻辑卷。
LVM 是主机层面技术,做数据迁移可以使用这种技术, 做容灾和双活不太可靠, 缺点很多。列举如下:
3.创建LVM Mirror简单,但是在处理存储故障,数据恢复等方面需要技术人员较高的技能;
4.同时写I/O与存储双写的效率相比 ,劣势更明显;
5.还有就是同机房做LVM可以,跨中心或跨楼宇这种远距离,LVM技术厂商肯定没有官方文件支持;
6.灾备的案例很少,几乎没有人使用这种技术做双活或容灾,案例少就是最好的证明,没人敢用这个技术实现双活或灾备。
总之,强烈不建议用这种技术实现双活和灾备。如果能通过这种技术实现双活,IBM在很多年前就可以推出双活架构方案了,厂商没有推荐此类方案还是有它的顾虑和弊端的。