企业级开源备份软件在图书馆数据中心的应用

2014-01-01 02:54
图书馆学刊 2014年9期
关键词:服务器端开源备份

张 媛

(长安大学图书馆,陕西 西安 710064)

1 引言

数据备份是任何一个数据中心必不可少的环节,图书馆也不例外。在备份软件的选择上,功能强大的企业级商业软件无疑是首选,但鉴于大多数图书馆经费紧缺的情况,很多图书馆不得不放弃对其数据中心重要数据的备份工作,或者退而求其次采用传统的手工备份及刻录光盘的方法。随着图书馆数字化建设的持续发展,各馆数据中心的数字资源以每年TB级别的数据量在增长,传统的手工备份显然已无法满足日益增长的数据量的要求,一旦出现人为的错误操作,以及各种难以预料的外界因素如电脑病毒、黑客攻击、异常断电等原因而导致的数据意外丢失或损坏,造成的损失和影响将无法估量,因此数据的备份与恢复工作随着数据量的增大显得愈发重要。

企业级开源备份软件有着商业软件无法比拟的优势,主要体现在成本低廉和源代码开放,用户可以对代码进行修改,从而满足自身需求。笔者以长安大学图书馆为例,通过使用开源Amanda备份与恢复技术,实现对具有自主知识产权的数字资源的备份与恢复系统,确保了图书馆数据的安全。

2 应用现状分析

目前市场主流的3款开源备份软件主要为Amanda、Bacula和BackupPC;而与之相对应的3款商业备份软件分别为Symantec Veritas NBU、EMC Legato Networker和 Commvault,它们的主要功能及特点比较见表1。

表1 开源备份软件与商业备份软件的比较

根据开源备份软件选型原则[1]:从是否支持异构平台、是否易部署和管理、制定备份策略是否灵活及是否易恢复等因素出发,再考虑长安大学图书馆数据中心对Oracle等数据库的实际应用及Amanda活跃的Wiki论坛的技术支持,Amanda无疑成为本馆开源备份软件的首选。

3 图书馆基于开源备份软件Amanda的应用设计

3.1 应用目标分析

主要考虑两个问题:需要备份的应用平台及数据库有哪些;希望采用什么样的备份方式进行备份。

长安大学图书馆数字化应用主要有维普、CNKI、万方、超星、人大复印资料、方正Apabi电子图书、网上大讲堂、自建数据库及图书馆网站等,总存储容量将近25TB。由于受存储空间的限制,好多数据库平台只安装了全文索引而没有拷贝全文。尽管如此,要想对T级别的数据量进行全部备份依然是件困难的事情,出于对备份能力及价值的考虑,只能选择对最有价值的资源进行备份。

图书馆最有价值的资源莫过于具有自主知识产权的资源。目前本馆自建的本校硕博论文库资源有230GB左右、图书馆管理信息系统(MIS)的数据量有4GB、图书馆网站文件有700M左右,表2列出了此备份恢复系统的客户端、备份目录、操作系统及备份方式等详细信息。

表2 备份恢复清单

3.2 应用架构设计

Amanda采用C/S架构,以目录为单位能够把LAN中的所有计算机备份到一台服务器的磁带驱动器、磁盘或云存储上[2]。Amanda使用全备份和增量备份来保存数据,支持多种客户端操作系统,如Linux、Solaris、Windows、VMware、和MacOS X等;对基于Linux、Solaris及Windows下的Oracle数据库和MySQL、PostgreSQL等数据库都有很好的支持。

长安大学图书馆Amanda备份恢复系统是基于同一LAN中的磁盘的备份方式,采用7天作为一个备份周期,每日零点对数据做增量备份。服务器端硬件采用IBM3500,内存8G,备份文件的保存介质使用7200转/秒的SAS硬盘5块,做RAID5保护,总备份容量1.2TB;软件方面是基于RHEL(Red Hat Enterprise Linux)6.3内嵌的amanda-server-2.6.1p2版。客户端有Windows XP sp2的个人电脑、Windows 2003 Server sp2的自建硕博论文库、Windows 2008 Server sp2的图书馆网站和基于CentOS5.2的图书馆MIS服务器。由于需要在Linux及Windows间进行通信、传输数据等,并要求服务器端定时向管理员发送备份信息的Mail,以便管理员及时了解整个系统的运行状况,因此在服务器端还搭建了Mail及Samba服务,在Windows 2003 Server sp2的一台服务器上搭建了DNS(Domain Name System,域名系统)和AD(Active Directory,活动目录)服务。图1列出了整个系统的架构。

图1 图书馆Amanda备份恢复系统架构

4 图书馆基于Amanda的备份恢复系统的应用实施

4.1 系统部署

(1)Amanda服务器端的部署[3-6]

鉴于备份服务器选择RHEL6.3版,此版内嵌有amandaserver-2.6.1p2,因此本系统没有使用最新版的3.3,所有Amanda服务器及客户端版本都可以在它的官网http://www.zmanda.com/index.html下载得到。

①数据列表

Amanda的备份以盘阵或目录为单位,备份数据必须以目录的方式定义。下面是定义备份目录disklist文件的格式,包括客户端机器名或IP地址,需要备份的目录及备份方式。

最后一列是备份方式,用来指定备份时使用的命令,是否需要生成备份文件列表等。这一参数定义如下:

在备份方式的定义里面,可以直接调用前面定义好的备份类型。根据定义,zwc-compress备份是采用DUMP程序来备份,备份时数据压缩,备份结束后,需要生成此次备份数据的索引,索引文件用于以后的数据恢复。

②备份策略列表

根据需要备份的数据大小、类型和备份频率等将这些数据分至不同的备份列表,目前只有一种备份策略列表,各馆可以根据自己的实际情况来添加。

DailySetl:所有用户数据都备份在此目录下,每周一次全备份,每天一次增量备份。

③目录结构

备份硬盘1.2TB划分为两个分区,每个分区各600GB,一个用来作为Amanda备份需要的磁盘缓冲区,即holding disks;一个用来作为虚拟磁带,600GB分区被分为6盘磁带,每盘磁带100GB,目录结构如下:

④备份日程表

在时间表进程crontab中设置:0 0**1-7/usr/sbin/amdump DailySetl

这里定义了备份策略DailySet1在每天的0:00开始执行备份,一周备份7次,所有备份结果可通过日志文件来查看。

(2)Amanda客户端的部署[7-8]

①CentOS5.2客户端的部署

安装与服务器端同一版本的amanda-client-2.6.1p2;配置.amandahosts文件,指定服务器的名称和允许进行备份操作的用户;配置/etc/xinetd.d/amandaclient文件,重新启动xinetd服务。

②Windows客户端的部署

安装与服务器端同一版本的支持Windows的ZWCCommunity-2.6.1软件,开放10080和10081端口;程序创建的amandabackup用户必须对备份目录具有操作权限。

4.2 系统恢复

①CentOS5.2客户端的恢复

以root用户创建数据还原目录并赋予amandabackup用户权限;进入数据还原目录,使用amrecover命令初始化数据还原进程;使用setdate命令指定需要恢复的日期,ls命令查看备份内容,add命令指定需要恢复的文件,extract命令从备份集中提取备份内容。

②Windows客户端的恢复

在服务器端使用amfetchdump命令从备份集中提取备份内容,之后将备份内容通过Samba共享给需要恢复的客户端系统,使用winrar等解压缩程序对该文件进行解压缩即可。

4.3 应用效果及经验总结

①备份方便,恢复便捷,运行稳定

本系统未实施之前,鉴于本馆经费紧缺,并没有购买任何商业备份软件对馆中的重要资源进行备份。其中对于自建的硕博论文库采用刻录光盘的方式对新增的数据进行备份,此种方法不仅耗神、耗时,而且光盘也不宜长久保存、内容不易查找,数据恢复的工作量也特别大;对于图书馆的网站只是加强了服务器及网站本身的安全性防护,并没有做任何的备份措施;而对于图书馆重要的MIS系统也仅仅采用基于EXP脚本的数据库备份。随着每年数据量的递增,数据安全问题成为图书馆的一大隐患。

实施Amanda备份恢复系统后,对于本馆的重要资源可以实现按时自动备份,恢复时也可以根据一定的时间点进行恢复,而且管理者通过系统每日发送的备份信息可以及时了解整个系统的备份运行状况,并做出相应调整。系统自实施半年多以来,运行一直比较稳定,彻底将工作人员从之前繁琐的手工备份及无数据备份的担忧中解脱出来。

②经验总结

对于打算实施Amanda备份恢复系统的图书馆来说,首先要考虑的问题是你需要备份什么,Amanda是否支持?其次就是你有多少备份空间?你想采用磁带、硬盘还是云存储的备份方式?因为备份是一个持续的过程,虽然Amanda采用增量备份的方式,但管理员依然要做好长期宏观的把握。对于Amanda服务器的配置并不需要过多考虑,如果想提高备份与恢复的速度则应关注所采用的备份方式。最后,作为Amanda备份恢复系统的管理者,一定要密切关注系统每日发送的详细备份信息,以便及时了解整个系统的备份运行状况,从而做出相应调整。

5 结语

实践证明,开源Amanda完全能满足图书馆对自主知识产权数字资源的备份要求,是图书馆解决数据中心数据安全问题的重要发展方向。如果备份空间允许,完全可以对其他数据库资源进行备份。笔者探讨的图书馆应用Amanda部署数据备份恢复系统的过程、方法和相关经验,具有实际参考意义。

系统在具体的实施过程中也存在一些问题,如开源软件应用对人员技术水平提出了较高要求;未对VMware ESXi虚拟环境下的客户端进行测试;对于MIS服务器的Oracle数据库的备份是基于EXP脚本的数据库备份,并没有使用RMAN(Oracle’s Recovery Manager)创建备份等。如何做好技术人员培训、对虚拟环境下的客户端进行备份恢复测试及实现对Oracle数据库的RMAN备份等有待进一步深入研究。

[1]于春生.企业级开源备份软件在高校数据中心中的应用[J].北京联合大学学报:自然科学版,2012(5):11-14.

[2]Amanda Wiki[EB/OL].[2012-10-09].http://wiki.zmanda.com/index.php/Quick_start.

[3]The 15-Minute Backup Solution[EB/OL].[2012-11-03].http://www.zmanda.com/quick-backup-setup.html.

[4]Amanda集中备份实例[EB/OL].[2012-11-23].http://zhumeng8337797.blog.163.com/blog/static/100768914201046 34610372/.

[5]Amanda备份数据的操作手册[EB/OL].[2012-12-13].http://wenku.baidu.com/view/d533ca0502020740be1e9b13.html.

[6]Amanda安装配置[EB/OL].[2012-12-23].http://wenku.baidu.com/view/11b262b8960590c69ec376a1.html.

[7]Zmanda Windows Client[EB/OL].[2012-12-23].http://wiki.zmanda.com/index.php/Zmanda_Windows_Client.

[8]Troubleshooting[EB/OL].[2012-12-23].http://wiki.zmanda.com/index.php/Amcheck_issues.

猜你喜欢
服务器端开源备份
VSAT卫星通信备份技术研究
Linux环境下基于Socket的数据传输软件设计
创建vSphere 备份任务
五毛钱能买多少头牛
2019开源杰出贡献奖
基于Qt的安全即时通讯软件服务器端设计
基于Qt的网络聊天软件服务器端设计
大家说:开源、人工智能及创新
开源中国开源世界高峰论坛圆桌会议纵论开源与互联网+创新2.0
旧瓶装新酒天宫二号从备份变实验室