从传统运维到云运维演进历程之软件定义存储(五)上

数据资料是整个系统运作的核心,而人为或非人为引起的数据丢失将对的企业造成无法估量的影响。因此系统管理员都会考虑通过数据备份手段对业务数据进行保护。但在现在云数据中心的兴起带来的是海量数据被集中起来。相较于传统备份行业常见的小容量(小于500GB)RTO、RPO敏感型场景,在云数据中心带来的挑战下完全无法作到有效保护。

关卡五:PB级数据中心灾备设计关卡

画难度:四颗星

传统的备份方式通常面向应用来做保护,依靠代理来调用应用端的接口。数据一致性能得到完全的保证。但传统备份由于要建立索引表,面对海量小文件时或者是云计算中心的PB级数据量时无论是备份速度还是存储效率都及其有限。而且从安全性的角度来说,仅仅通过在数据的生产端做到数据的备份尚无法为客户也提供有效保护。对于一些关键业务系统(比如:网上交易系统、医疗数据)而言,数据资料是整个系统运作的核心。一旦由于系统硬件的功能失效,存储介质的老化损坏,人为的错误操作,以及各种难以预料的外界因素导致数据意外丢失或损坏,那么将会对于业务造成无法估量的影响。为避免这种情况,一般通过在本地异地都一份完全副本来做到数据的有效恢复或数据的实时可用。

本文简单的讲述下常见的数据保护方式,具体详情可以在网上查询了解,这里不再赘述。下篇文章中会主要讲到在存储底层Ceph端常见的灾备架构设计。

常见的保护方式方式有以下几种:

1、基于存储级的数据保护。

传统存储的数据保护,一般有两种方式:一、异步复制,通过快照传递快照间数据的变量。这种方式的好处在于能有效节约带宽,且不需要在上层业务平台安装额外软件或对上层的业务系统照成任何压力。二、实时复制,利用存储自身功能对写入数据做到分流。相对于异步复制来说除了对带宽的要求较高,无论RPO或RTO都大大提高。 不过一般来说,传统存储厂家大部分都将这种存储功能类软件作为利润池单独售卖,且各存储品牌间甚至是同一家存储品牌不同代间完全无法做到存储级的远程保护。

2、基于应用的数据保护。

除了存储级的复制,一些厂家另辟蹊径通过在主机层面在驱动层之上做到写数据的分流。依照这种方法,有效避免了存储端的兼容性问题且大大节约了部署成本。但是这种方式需要在主机层面安装一套数据分离软件,所以对操作系统的兼容性有一定限制(暂时市场上此类软件仅仅兼容Windows和少数Linux版本)。而采用基于主机的数据分离,对主机的CPU、内存都会造成较大压力,在极端业务负载下,会照成业务平台死锁。从安全性上看还有一定隐患。

3、基于存储网关的数据保护。

现在最流行的存储双活方式有两家的数据保护方案最为有名,分别是IBM公司的SVC解决方案以及EMC公司的Vplex解决方案(具体的方案特点在此不做详述)。这种方案的好处就是利用存储虚拟化网关,将不同品牌的存储作为池化,利用存储网关做到数据分离。可以在多地间依据企业需求做到数据的实时或者异步的保护。 但是缺点同样显而易见,及存储网关作为一个总的数据流量出入口本身就可能成为一个瓶颈!且受限于商业策略和技术路线,从成本上(基本上都是几十万级)或者从设备的广泛兼容上看(虽说各家虚拟化网关厂家都说可以做到节点平滑扩展,但最大节点数一直都在16节点以内;且都需要保持同型同代产品)都有很大限制。

4、基于备份软件的远程复制。

部分备份软件利用自身私有协议,将在本地的备份数据远程同步到远端的备份节点上。 这种方式有效做到了带宽的有效利用和数据的高一至性。但是缺点也非常明显,既无法做到业务的实时可用。

综上所述,没有任何一种类型的数据灾备能适用于所有业务场景。 系统管理员还是需要依据自身业务特点来选择最适合于自己的数据保护方案。

本文简单的讲述下常见的数据保护方式,在下篇文章中会讲到在存储底层Ceph端常见的灾备架构设计,希望本文能够给予新手参考和了解。请读者见仁见智,预知后事如何,请期待《 架构灾备设计 下》。