在上一篇关于备份基础知识的介绍中,我们谈到了文件、数据库和操作系统的保护。它们都属于定时备份,定时备份是一种比较简单快捷的备份方式。但是如果数据破坏,对它们进行恢复只能达到最近一次备份的时间点,并且需要一个数据恢复的过程才能使用。这样从数据破坏到最近一次备份的时间段内,其数据就会得不到保护。同时数据恢复也需要很长的时间。为了解决定时备份等传统备份形式,存储厂商推出了持续数据保护系统。解决了数据保护时间差造成的数据丢失。
首先谈一谈持续数据保护(CDP),持续数据保护(CDP)相当于能够让您随时有最新数据的副本(镜像),并且这个“副本”的格式与被保护原始数据的格式完全相同,不需要恢复就可以直接使用。从而大大降低了RPO(恢复点目标)和RTO(恢复时间目标),那么CDP除了保护文件、数据库之外,也能保护操作系统吗?
我们知道,按照SNIA定义的分类,CDP分为数据块级、文件级和应用级三种。只能保护Oracle那样的应用级首先被排除了;接着就像操作系统定时备份那样,如果只把文件复制走也是无法实现OS启动的;只有块级CDP,才能保证磁盘的主引导记录、启动分区和系统文件等都正常地存放于它们应该在的位置,可以随时充当一个备用的系统盘。因此通过CDP可以实现操作系统的保护。
SAN Boot:走光纤通道总是高大上
在之前另一篇介绍LAN-Free的文章中,谈到了虚拟磁带库(VTL),人们通常认为相对普通磁盘备份——如NAS等有点高大上的感觉。严格按照定义来说,CDP可能不应该使用LAN-Free这样的叫法,但前些年我们曾听国外厂商这样说过。姑且把FC主机连接的CDP设备也称为LAN-Free数据保护的一种吧。
FC SAN存储网络中的磁盘阵列设备,在HBA卡识别看来,它划分并映射给主机的LUN就是一个像硬盘那样的标准SCSI设备。因此,我们也可以在上面方便地安装和启动操作系统,这种使用方式在不配置本地硬盘的刀片服务器上多见一些。
像飞康、火星舱这样写入数据拆分(或称双写)位于主机层面的架构上,我们可以获得服务器系统盘的完整镜像。当系统盘损坏(物理上)导致崩溃或者无法启动的时候,修改设置从对应的CDP磁盘组启动就可以迅速恢复操作系统运行,并且所有应用程序都无需重装。
如果是逻辑错误,同样被写入到CDP磁盘怎么办呢?别忘了还有持续数据保护的看家本领——数据回滚呢。在记录区空间允许的情况下,火星舱可以回滚到任意时间点的历史数据状态,而不限保留的快照和I/O记录数量。我们可以通过尝试回到错误出现之前的系统盘状态。这就是单纯的RAID 1、以及磁盘阵列镜像所做不到的。
iSCSI Boot:看起来很美好
尽管许多数据块级CDP产品都号称支持IP SAN Boot,但我在这里还是想反映点实际情况。真的做过POC、踩过坑,才发现从iSCSI设备启动操作系统远没有FC那样容易。首先,iSCSI分为硬件HBA卡和普通网卡(千兆或万兆,可能带有TOE卸载),前者价格不菲,使iSCSI失去了高性价比的优势,因此目前的用户基本采用的都是通用网卡方案。
普通PC用的桌面网卡一般不提供iSCSI Boot Rom,选择的范围只能是服务器网卡。在引导进入操作系统之前,我们还要进行Initiator和Target相关的设定。即使能够引导了,Windows系统启动的时间比本地硬盘和FC SAN Boot还是要慢许多,估计是系统盘在预引导模式过渡到系统加载iSCSI驱动之后的环境有所不同,需要一个“交接”的过程。
在实际应用中,我们认为iSCSI Boot的可行性比FC要低。希望没有光纤存储网络又想SAN Boot的用户有点心理准备,最好能在自己的环境中实际测试下。