极限首页 业界焦点 软件工程师之路 系统工程师之路 网络工程师之路 软件下载 技术社区
 体验 Wine: Windows 到 Li
 Linux操作系统打印机配置全
 驱动SD/MMC读卡器
 Linux发行版制作指南
 redhat 安装程序 anaconda
 构造Linux的图形化安装程序
 使用Linux实现负载均衡
 Xen和虚拟化技术(一)
 Linux 操作系统安装盘的定
 在Linux上实现高可用服务
 体验 Wine: Windows 到 Li
 Linux操作系统打印机配置全
 驱动SD/MMC读卡器
 Linux发行版制作指南
 redhat 安装程序 anaconda
 构造Linux的图形化安装程序
 使用Linux实现负载均衡
 Xen和虚拟化技术(一)
 Linux 操作系统安装盘的定
 在Linux上实现高可用服务

Shell 中文手册

Python 2.3 中文手册

Python 2.4 中文手册

Mysql 4.x 中文手册

PHP 4.x 中文手册

Apache 2.x 中文手册
更多手册

站内搜索:
当前位置:首页>>系统工程师之路>>解决方案>>正文
使用开放源码备份方案保管你的数据
时间:2005-09-07 作者:Bernard Golden 来源:TechTarget

 

问题:你有许多分散在各处的关键数据,怎样能够确定这些数据被安全地和放心哦备份了?

  回答:Amanda和Rsync。

  你在一个典型的IT环境中工作,此环境中有大量的机器、大量的程序和大量的数据。虽然NAS和SAN供应商可以描绘出一幅美丽的图画,将所有的数据都存放在中心数据存储上,但事实上,多数环境中使用的是大量服务器的附加存储――换句话说,就是安装在机器内部的磁盘。

  然而,即使数据在本地存储,也并不意味着它不重要。这些数据可能是公司的E-mail,或者是账户系统,甚而可能是ERP数据库,它们中的所有都是关键的,所有的数据都需要备份。

  数据分散的特性使备份它们成为一个现实的挑战。系统管理员能够被不停的在机器之间往来做单独备份累的半死――这也是在从前网络时代所使用的主要方法。

  显然,必须有一个更好的方法才能够解决这个问题。理想的状态是每台机器能够自动备份,然后所有的数据都存放在中心区的磁盘中,并能够快速的存取备份的东西,同样,如果可以,对永久存储的东西自动备份到磁带中。

  已经有两个开放源码产品能够真正将我们上述的想像变为现实,它们就是:Amanda和Rsync。虽然稍微有些不同,但它们都将从远程机器获取数据,然后将数据存放在中心位置用来方便存储备份的设备上。这两个软件的目的都是解决直接备份的问题,能够帮助减轻管理员的备份负担。

  Amanda

  Amanda最先是由马里兰大学开发的,是一个客户服务器系统,它被用来备份数据到中心位置,并能够将备份的数据写入外部磁带。“Amanda”是“Advanced Maryland Automatic Network Disk Archiver(高级马里兰自动网络磁盘归档工具)”的首字母缩写。

  Amanda拥有一个聪明的备份算法,它能够进行全集备份和增量备份――包括部分的全集备份(我知道这听起来有些矛盾)――正是这种原因,减少了进行完全全集备份是的网络负担。如果这个方案听起来很混乱,那么它能够被配置为标准的通常使用的全集/增量备份方案。

  安装Amanda需要在中心服务器(数据将要被存储的地方,可以是磁盘或者磁带)实现安装一些软件,每台客户端机器也是如此。服务器上包含非常重要的文件,它们是amanda.conf、disklist和tapelist。就像你猜想的一样,Amanda.conf是系统的整个配置文件,另外两个文件则分别是哪些资源需要被备份,以及哪些磁带将被写入数据。以这篇文章的长度,来谈论amanda.conf有一些复杂,不过在网上,已经有大量的非常好的使用指南。

  服务器按照包含在amanda.conf文件中的预定计划信息,使用轮询机制访问客户机。然后每台客户机根据配置信息(可以同时运行多重轮询会话),将diskfile所定义的数据写入到在tapelists文件中定义的适当地方上去。

  在一个拥有众多分散的静态数据的环境中,Amanda非常有用。数据中心是Amanda的理想环境,尤其是它不支持Windows机器。很可能你想使用一些工具如Cygwin来运行Amanda,这将使Amanda能够很好的备份Windows机器。总体来说,如果你想保证你的数据中心被备份到磁带存储设备中,并且不想购买昂贵的软件,Amanda就将是一个主要的选择。
 Rsync

  与Amanda专注于支持磁带备份相比,Rsync更专注于从一个磁盘位置到另一个磁盘位置之间的数据同步。Rsync由Andrew Tridgell创建,他是Samba的核心团队成员。

  不同于Amanda使用的全集/增量备份方案,Rsync在每次执行同步市,都运行一次全集备份。这看起来好像很浪费,不过Rsync非常聪明,它只更换文件中更改的数据块,因此它在数据的备份量上非常少,属于轻量级选手。Rsync通常使用SSH作为它的传输协议,因此数据在传输中是很安全的――这使得向防火墙外部的远程及其同步数据成为现实――即Rsync能够提供脱站备份。

  由于Rsync几乎包含所有的Linux发行版中,因此你能够避免其安装的过程而直接使用它。Rsync最为典型的配置是作为客户机/服务器设置:客户机联系Rsync服务器,这使得Rsync成为动态环境下备份很好的选择。举例来说,在备份间歇性的连接网络的笔记本的应用中,Rsync就是一个非常好的选择。当然,Rsync也能够被配置为轮询方式;事实上,rsync能够被配置为双向方式工作,能够让两台机器互为备份。

  有一个做好的优点,就是Rsync能够直截了当的被执行。一个简单的配置文件指出了那些文件将要被备份,这些备份的文件将被备份到什么地方。

  下面是一份Rsync的简单配置文件,它从Michael Holves的Everything Linux站点(http://ultra.litpixel.com:82/)获得:

  motd file = /etc/rsyncd.motd

  log file = /var/log/rsyncd.log

  pid file = /var/run/rsyncd.pid

  lock file = /var/run/rsync.lock

  [simple_path_name]

  path = /rsync_files_here

  comment = My Very Own Rsync Server

  uid = nobody

  gid = nobody

  read only = no

  list = yes

  auth users = username

  secrets file = /etc/rsyncd.scrt

  开始的四行定义了Rsync运行期间的内部信息,simple_path_name(简单路径名称)则是一系列详细备份的绰号或者缩写名。path定义了被同步的本地和远程文件的路径,配置文件的剩余部分则与环境的安全设置有关。如果你很熟悉Samba,那么此配置文件与Samba配置文件的相似处是显而易见的。

  这就是所有要做的事情!使用这些信息,你就可以开始备份。象你看到的一样,Rsync很强大,但又非常易于使用。如果你安装了Cygwin,rsync同样能够运行于Windows下。还有另外一种更为简便的在Windows下运行Rsync的方法,那就是将Rsync和Cygwin整合在一起的,被称作cwRsync的东西,它能够在http://contribs.org/contribs/dthomas/smeserver/6.x/Contrib/rsnapshot/cwRsync-howto.htm得到。它使用一个能够更据你的环境被更改批处理文件来执行应用。

  Amanda和Rsync:备份的天堂

  使用这些开放源码产品的可用性,没有任何接口再说单机备份是浪费时间的事情――或者,更坏的,不执行备份。Rsync是这两者中相比来说运行起来容易的,但这并不是说它在真实备份中要执行繁重的任务。这里再给你一个最后的警告:备份的原因是你有能力在发生糟糕的事件时恢复你的数据,因此一定要确认并不时检查你的备份,以确保数据能够被恢复,否则的话,你获得的所有将会是一大堆只写的数据位。

  Bernard Golden是位于美国加利福尼亚圣卡洛斯的系统集成公司Navica Inc.的CEO,他也是《Succeeding with Open Source》(《使用开放源码取得成功》,由Addison-Wesley出版)一书的作者,并且是Open Source Maturity Model(开放源码成熟度模型)的创始者。这种模型是一种定位、评估和执行开放源码软件的正式化方法。

推荐】【 】【关闭


关于极限 | 站内地图 | 意见反馈 | 广告服务 | 数据服务 | 联系我们
本站所刊登的文章,技术资料,软件均整理于网络资源或本站原创,转载请务必联系原作者或本站。
Copyright ? 2001-2004 UPLinux.com All Rights Reserved.
本站唯一联系信箱:
京ICP备05010519