用好“快照”!

5月中旬,WannaCry比特币勒索病毒利用Windows安全漏洞,袭击全球。我在《勒索病毒预防实战:有的PC打不上补丁咋办?》 中,提到了如何预防以及数据备份的重要性。然而有了备份就能万无一失吗?

5月中旬,WannaCry比特币勒索病毒利用Windows安全漏洞,袭击全球。我在《勒索病毒预防实战:有的PC打不上补丁咋办?》 中,提到了如何预防以及数据备份的重要性。然而有了备份就能万无一失吗?”

为预防病毒而备份 却破坏了系统为哪般?

就在病毒发作的那几天,有一位网管朋友给我打电话讲了他的遭遇。

这位朋友单位有一台Windows服务器系统盘做的RAID1,上面的操作系统和应用没有备份,担心被病毒加密文件,于是用某大厂的系统备份/恢复软件进行 了操作。具体来说是用光盘/U盘引导的方式,像Ghost那样将C盘中的数据先备份到后面的分区中(我理解事后还要拷出来),而在这个操作完成之后服务器操作系统起不来了…

用好“快照”!

图片截自虚拟机中的实验环境,用于辅助说明

事后朋友发现,原来他的服务器是用Windows系统做的软RAID1,BIOS里的RAID选项并没有打开(其实这也是一种软RAID,稍后再谈)。如上图所示,在Windows中对D分区的访问都是在镜像卷上操作,而在进入OS之前呢?像一些第三方引导盘有可能不会加载动态磁盘上的镜像卷,而直接对单盘进行了操作。经过数据恢复处理之后,朋友发现C盘的备份镜像只被写入了其中一块磁盘,软RAID破坏也就在所难免了。

再打个比方,如果Linux用户在物理磁盘sd*上创建了LVM Mirror,这时如果再对底层的sd*进行写操作也是同样的道理。

用好“快照”!

尽管有些操作系统支持不只一种带有容错功能的软RAID,但实际使用的人并不多,除了性能和故障之后的恢复难度之外,还有一个问题就是防呆。

所谓的“软”RAID 到底软在哪里?

不依赖操作系统的软RAID,如果扩大点范围来看也有好几种。

第一种是主板集成的RAID,无第三方控制芯片,依靠BIOS里加载的Firmware来配置。都是软RAID也有区别,比如IntelRST就是要在Windows驱动加载后才能进行Rebuild。

由 于现在主板芯片组提供的SATA接口越来越多,第三方芯片生存空间不大。比较高级一些的是SAS控制器/HBA、入门级RAID卡提供的软RAID功能, 比如基于LSI2308、3008这些芯片或者DellPERCH3xx这样的RAID卡。将它们称之为软RAID是因为不像传统SAS “硬”RAID卡(如使用LSI2108、3108芯片或者DellH7xx/8xx系列等)那样具备本地缓存和掉电保护设计。通常来说这类软 RAID5的性能不会好,但其保护机制基本在卡上实现,对各种操作系统不透明也就不会出现上面遇到的那种问题。

上面介绍了2类软RAID,早年还曾有更麻烦一些的。比如HighPoint有的ATA控制器在Linux中内嵌非RAID驱动,会把RAID直接认成单盘,这样加载驱动的难度就会加大。还有Adaptec在Ultra320SCSI时代引入的HostRAID,也是能用非RAIDSCSI驱动认成单盘。这些连防呆都不够好的软RAID,我遇到有些用户不愿接受。

Windows备份介质服务器 存在的潜在风险

以上讨论的主要是“隔离性”。RAID是一种物理保护,而作为数据保护的备份技术还要考虑逻辑上的隔离,一个基本原则就是恶意软件或者用户误删除等操作都不应影响到备份数据的完整性。然而并不是每一个备份部署中都做到了这点。

用好“快照”!

上图引用自《DellWorld15:图解NetVault Backup 11智能备份》一文,是以原Dell软件部门(Quest)的备份软件为例来介绍传统备份架构。这里面的基础知识我就不重复叙述了,主要说一下可能存在风险之处。

:以下讨论并不针对具体哪家备份产品,我也不确定此次的病毒一定会破坏网络共享文件路径。但从“读取文件-加密后保存-再删除原文件”的机制来看,并不需要感染备份目标上的可执行文件并运行,此类程序就可造成破坏。

首先,物理磁带和VTL(虚拟磁带库)设备通常不在恶意软件攻击之列,因为它们不支持传统文件操作,需要用特定命令/备份软件来读写。

我还与做备份的朋友交流过,对于传统的LAN备份,Windows 客户端通过网络将数据发送到备份服务器,这个过程一般是安全的。如果备份服务器也部署在Windows系统上,一旦磁盘备份介质以OS可识别的文件格式挂 载上来,还是存在被恶意破坏的可能。以本次的勒索病毒为例,Windows备份介质服务器在有些情况下也要注意安全。

上图左上角部分描述的是备份NAS上的数据到磁带,目前也有一部分中小企业用户选择NAS设备做为备份目标。对于这种方式,无论CIFS文件共享直连Windows客户端还是备份服务器(其实都是介质服务器了),都有可能存在风险隐患。而如果采用DDBoost、OST、RDA这些带有源端去重的专用备份协议,或者将备份空间格式化为专用文件系统的会更安全一些。

比如我见过一种取巧的LAN-Free备份支持说法,将FC接口磁盘阵列挂给应用服务器的LUN格式化为文件系统,并做为备份目标。这样做虽然没有用磁带类设备,但数据流确实走光纤了。此时如果是Windows文件系统,备份数据显然也难逃恶意破坏的可能。

虽然从上面的例子中侧面反映出传统磁带备份的安全性,而我们也不能忽略磁带介质管理上的复杂度和高维护成本。LAN- Based磁盘备份的Client-Server架构看来也有安全性方面的可取之处,不过在云计算的时代一些厂商提倡无代理备份,甚至(站在自己角度上) 说备份代理也可能成为被攻击的对象。在内网里相对还好,接入公网需要考虑的安全问题确实更多,当然这些讨论有点超出本次勒索病毒的范畴了。

影响存储快照使用率的六大因素

前 面我们讲了NAS上的用户数据有可能遇到被病毒感染/加密破坏的情况,SAN块存储阵列也不例外。但如果用户配置了快照功能,找到数据被破坏时间点之前创 建的快照即可迅速恢复,验证数据的完整性也不需要等待传统备份冗长的恢复过程。从另一个角度来讲,在需要进行各种逻辑层面数据恢复操做之前,手动打一个快 照也可以快速“保护现场”。

不少人说快照好,而客观上看,定时备份应该还是应用最普遍的数据保护措施,尽管一些提供CDP(持续数据保护)产品宣传他们的RPO和RTO有多么短。

对于有些新型备份技术普及的不是太好,原因无外乎两大类:一个是成本;另一个是实际效果,包括部署复杂度、对应用性能影响、能否胜任长期历史数据保护等。

其实有些CDP、Near-CDP产品底层也是基于快照,特别是即时挂载恢复的功能。有时候我觉得,朴素而不花哨的技术反而适用性更强。快照的原理讲起来并不复杂,却不是每家都容易做得很好,因为据我们了解各厂商存储快照的使用率相差还是蛮大的,下面就来谈谈影响这一选择的六大因素。

快照会不会影响生产存储的性能?

首先我承认有的存储快照会对性能产生明显的影响,一般认为ROW(写重定向)比(COFW)写时复制快照的开销要小。而同样属于ROW快照分类,大家支持的快照频率、数量等方面又有不小的差距。总的来说,影响效率的主要是元数据的管理,通常底层空间完全打散的块级虚拟化(即RAID2.0类)阵列在这方面表现较好。

用好“快照”!

上图引用资料有点早,如今最上面的Tier1存储分层往往使用高性能SSD,用RAID1保证写入效率;Tier3使用大容量NL-SAS硬盘RAID6比较多。在每种驱动器类型中还可以存在不同RAID类型之间的分层,这是DellSC的一大特色。

以DellSC系列来说,早在多年前就将快照(Replay)技术作为自动分层存储数据调度的触发机制。大家应该了解Compellent自动分层技术在业界的地位,用SSD来加速甚至在不同闪存类型的分层,可见其对自身快照技术的性能有足够的信心。

快照占用宝贵的生产存储空间,成本上是否划算?

按照常规理解,用于生产业务数据的一级存储,其单位容量成本比用于备份、归档的二、三级存储要高。那么如果在一级存储上保留较多的历史快照数据,甚至用来部分替代备份,会不会划算呢?特别是现在许多备份存储产品还能支持重复数据删除技术。

用好“快照”!

这时又要提到自动分层存储技术了,还是以DellSC为例,其快照数据分为“冻结可访问”(仍被活动LUN引用)和“冻结不可访问”数据页面两个区域,可以采用预置或者手动定义的策略来选择它们的存放位置。后者即传统意义上的历史备份数据,通常会放在最底层的大容量廉价NL-SAS硬盘上,RAID6保护。由于存储快照不像多次全备份之间的冗余数据量比例那么大,再加上压缩技术就能做到不错的TCO了。

对于大型一些的存储部署,如果对2U12个3.5寸盘位的密度不够满意,还有5U84盘位扩展柜可选(参考《存储极客 | 高密度盘柜难点:评戴尔SCv2080结构设计》),专门适合海量非结构化数据、备份/归档等。

快照保护数据的周期有多长?

用好“快照”!

上图引用自存储极客:多方位全面保护数据库

根据不同的产品定位,DellSC系列存储支持的快照总数约在4000-32000个之间,一般对于RPO要求较高的用户,其快照间隔可能会设置在5分钟-1小时。按照每个LUN最多1000个快照来计算,5分钟频率最老的一份数据是3天多之前,而1小时则可以保护长达41天的数据。要知道还有许多用户在使用每天一次的快照策略。

快照数据的一致性问题

在《GitLab事件思考:是否用的快照恢复?》一文中,我曾讨论过快照的一致性问题、性能问题、容量开销与应对这几个方面。就其中第一点还分为多个卷(LUN)之间的时间点一致性,以及快照数据的应用一致性两个方向,大多数企业级集中存储系统对此都有考虑。

用好“快照”!

上图引用自工程师笔记:SCv2000试用之RAID分层+快照

除了针对Oracle数据库的APM(Application Protection Manager)一致性代理之外,DellSCReplayManager对于VMware虚拟机以及微软环境也提供对应的插件/服务来支持。比如Window下的SQLServer、Exchange和Hyper-V等就是与VSS配合来生成一致性快照的。

多说一句,在存储写入压力大的环境,有了一致性代理也未必保证每个快照都能完美地打开数据库等应用。不过这个成功率还是比较高,并且即使没有一致性的快照也就相当于主机异常断电的数据状态,麻烦一些但还是有异常恢复的措施。

快照可以替代备份用于容灾吗?

尽管企业级存储的可用性和数据可靠性已经相当高,但就像任何数据中心设备那样,面对机房故障、站点级灾难还是无能为力。存储上的快照副本对于前端主机可以做到很好的隔离,但数据毕竟还是位于同一个(或几个)机箱中,达不到异地容灾、高等级保护的要求。

用好“快照”!

上图引用自《存储极客:大话“双十一”与经济适用型双活》一文,在支持LiveVolume双活/同步复制的同时,DellSC存储还可以将快照保护的数据,通过专线或者广域网异步远程复制到同城灾备机房,乃至数千公里之外的两地三中心部署。

这就像一种增量备份的效果,并且复制的两端可以按需保留不同的历史快照数量,定义不同的压缩开关等。值得一提的是,新兴分布式软件定义存储(ServerSAN)大多在原生复制等企业级功能上的支持还不完善。

快照要不要买License,会增加存储软件成本吗?

用好“快照”!

有些存储阵列的快照免费提供的数量很有限,要支持更多就得买License。而DellSC的快照功能在大多数型号上全免费提供,用于容灾的远程异步复制功能收费但价格不高。

最后,希望读者朋友们也能够用好快照,在存储端提高数据保护的效率。

来源:至顶网云计算频道

0赞

好文章,需要你的鼓励

2017

06/19

11:51

分享

点赞

邮件订阅
白皮书