随着NAS上存储的数据越来越多,这些数据的安全也就越来越重要。尽管已经在本地创建了RAID 5,可以承受一块硬盘的物理损坏。但是谁都有脸黑的时候,尤其是在我为DS918+加上DX517扩展盘柜之后,我的RAID 5已经是由9块硬盘组成的了,谁都不能保证两块硬盘同时坏的情况不会出现,所以需要有更加周全的备份计划。
当然,备份也绝不是将所有文件直接拷贝到其他存储介质上(比如USB外置硬盘)就可以了,需要周期性的去执行备份计划,并且有版本控制。所以我为NAS增加了异地备份功能,来备份一些日常的重要数据,主要是个人文档,拍摄的视频,照片等。而备份的目的地是群晖的C2云备份服务。
首先需要在本地群晖NAS上安装Hyper Backup组件,从软件中心下载即可。
打开后可以看到,Hyper Backup支持多种备份方案——可以备份到USB外置硬盘,或者备份到另一台群晖NAS,也可以备份到其他共享文件夹,当然,也可以连接到各种公共云盘或者云计算服务,比如微软Azure,亚马逊S3,华为S3,Dropbox,以及今天的主角——群晖的C2备份服务。
其实在选择C2之前,也考虑过其他的方案,比如亚马逊的S3存储。亚马逊作为市场占有率第一的云计算服务商,其在数据中心设施的建设上自然也是首屈一指,所以如果采用S3,则可以选择就近的数据中心来获取更好的速度,亚马逊在北美洲就提供了多个数据中心,包括加拿大的一个。但是最后没有采用的首当其冲的一个原因就是收费模式和价格。
S3是一种通用型的对象类存储的云服务,用于NAS备份只是其中一种应用。S3是按照每GB每月来收取费用,每个数据中心价格有所差异。S3根据不同需求也分成了不同的等级,数据备份一般采用Standard-IA(Infrequent Access),也就是非频繁存取的等级即可——因为备份的操作有一般都是周期性写入,而不会频繁去读取。不过即便如此,Standard-IA的价格以加拿大数据中心为例,每GB每月的价格为0.0138加币。考虑到我有大约1.5TB的数据需要备份,算下来一个月的价格差不多是21-22加币。一年就是250加币左右。另外,由于采用每GB收费,你需要时不时计算你的备份总容量和总费用,比较麻烦。
当然,如果还是想采用S3,有一种更为廉价的选择——S3 Glacier,价格差不多比S3要便宜一半。缺点就是Glacier的文件请求操作(也就是备份恢复)时间比较长,通常会有几个小时,最长可能需要12个小时。顺带一提,如果要使用S3 Glacier来作备份,那么在群晖上就不能使用Hyper Backup了,而是有专门的Glacier Backup组件。
既然Glacier比较便宜,那么最后一个没有选择S3的原因是,Hyper Backup组件会对上传的备份文件进行加密,导致了无法从亚马逊的S3管理控制台直接查看备份内容,也无法从上面进行恢复等操作,只能通过NAS上的Hyper Backup才可以,比较不方便。
而群晖推出的C2服务,是仅针对于其自家NAS的“一站式”备份服务,不能用作其他用途。功能上的单一也使得价格会稍微低一点。但是缺点就是C2服务目前只有德国法兰克福一个数据中心,连接速度上可能会有所损失。而且,群晖虽然作为NAS大厂,但是在云计算的稳定性和质量上能做到怎么样一个水平,还不得而知。
目前C2的价格可以选择按月付费或者按年付费,无论哪种方案,都是购买一定的空间限额。具体价格可以看下面的表格,总共分为两大类的套餐——Plan 2相比于Plan 1,可以进行更为频繁的备份,保留更多的备份版本,也有类似备份复制等功能,价格是1TB一年69欧元,而这也是我选择的套餐。我订阅了一年2TB的套餐,一共是139欧元。群晖现在也提供了30天免费试用,但是还是要先绑定信用卡才可以。
在Hyper Backup中,选择新建备份任务,目标选择群晖C2,需要用到群晖账号登陆。如果是使用S3或者其他云存储的话,需要提供密钥,密钥可以从对应服务商的控制台来获取。
之后需要选择需要备份的本地文件夹。我这里选择了所有的个人文档,拍摄的照片和视频的文件夹。其他文件夹诸如电影或者电视剧则不在备份的范围内,因为这些文件容量巨大,且万一丢失或者损坏可以重新下载,没有必要浪费宝贵的备份空间。
另外Hyper Backup可以备份一些系统组件的设置,方便日后恢复,不过我并没有选择。
接下来就是选择备份计划运行的时间和版本控制。前者可以设定备份计划多久运行一次——比如每小时,每天,每周或者每月等。考虑到我的备份,平时不会有特别频繁的改动,所以我将备份周期设定在了一个月一次。同时我设置了在每次备份完成的后一周进行一次完整性校验。
而版本控制,则是因为每一次的运行并不会重新备份一次所有的文件,而只是记录改动的部分,也就是差异备份。比如,第一次最原始的备份备份了100个文件,到了第二次备份的时候,增加了5个文件,则C2则会备份这5个文件,剩下文件由于没有改动,所以第二次的备份只会用很少的空间去标记一下这些文件为“未改动,同上一次备份”(大概就是这么个意思)。这样一来,就会有两个时间点的备份,也就是两个备份版本。如果选择恢复第一个时间点的备份,则是恢复最原始的100个文件,相反,如果从第二个时间点恢复,则是恢复修改后的105个文件。
可以看到,随着备份次数的越来越多,备份的版本数量也会一直增加,尽管是差异备份,但也同样会占据越来越多的空间。所以我们就需要设置版本控制——只保留部分的版本来控制容量。比较常见的就是只保留最近的一定数量的备份版本,比如每周备份一次,只保留最近52周也就是一年的备份,到了第53周有一个新的备份,最早的备份(一年零一周以前的)版本就会被删除。
Hyper Backup还提供了一种智能版本控制,系统会根据备份计划——比如每小时,每天,每周,每月来决定保留的版本,一般来说这比较适合备份频率很高的情况——比如每个小时都备份,那么在智能控制下,系统会保留最近24小时每个小时的备份,同时也会保留过去一个月每天的一个备份,超出一个月的备份则会保留每周一个版本。
同时你也可以设定最大版本数量,默认是256,也是低于这个数字时,版本控制功能不会起作用,只有高于256,才会开始删除之前的备份版本。
当然,在我的备份周期(每月一次备份)下,智能版本控制和普通的版本控制没有区别,在保留256个版本的情况下,都可以保留超过10年的备份。
一切设置妥当之后,就可以等待第一次备份的开始,当然,你也可以立即开始备份。
之前提到过,我的总备份容量有大约1.5TB,所以我的第一次备份时间很长,在500Mb上传带宽的情况下,总共耗费了将近两天才完成。从加拿大上传到法兰克福数据中心的速度还是不错的,只是考虑到备份文件中有大量的小文件(也就是Word或者Excel文件之类的,照片文件也是数量庞大且单个文件容量比较小),上传时间才会这么长(另外整个过程并不是简单的上传,之前提到过有一个压缩和加密的过程),如果只是同等容量但是都是大文件的话,时间应该有所缩减。下一次的备份在整体文件数量和容量改变不大的情况下肯定不会耗费这么长的时间。
到了第二周设定的时间,Hyper Backup对这1.5T的数据进行了完整性校验,只花了大约一个小时。至此,异地备份就算是完成了,心里也放心了许多。我知道异地备份并不是每个人都会用到的功能,毕竟动用云计算云存储还会产生一笔持续性的花销,一般的情况下,本地的RAID都能应付突发性的硬件损坏并且可以恢复。但是当你的宝贵的数据的量越来越大的时候,就必须开始考虑一下这种方案了,毕竟数据有时候真的是无价的。
原创文章,作者:麦胖,如若转载,请注明出处:https://www.fatmike.net/add-offshore-backup-to-nas/