Linux下的实时数据镜像(2)

2008-04-09 04:09:27来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折


http://www.linuxfocus.org/common/src/article199/fam_mirror.html去查看,如果要下载fam_mirror,
请到http://www.linuxfocus.org/common/src/article199/fam_mirror。你可以重新编辑这个程序,
将$replicaHosts改为当前的主机、$rsh改为当前使用的shell,也可以将$rsync改为实现相同功能
的命令。

下面我们来看第一个方案:

有两台机器做WEB服务器(web1,web2)。其中一个为主服务器(如web1),另外一个为从服务器
(web2)。第一个FTP服务器是web1,web2上根本不能运行FTP服务(否则,系统工作于备份方式时
用户还可能会向文件中写数据)。
在两台服务器中,web文档都放在/var/www目录中,在两台机器中设置rsh或ssh,使web1无需口令就
可以在web2上运行远程命令。我通常是在复制主机中的authorized_keys中填加我的ssh_key来实现
这个要求的。将web1的数据远程同步到web2上的命令是:
rsync –avz /var/www web2:/var/www/
编辑fam_mirror文件,将@replicaHosts改为:
@replicaHosts=qw(web2)
在web1上运行fam_mirror:
fam_mirror /var/www &
这样,如果web1上的文件发生了变化,这种变化也会写到web2上的文件中。

现在我们来看看方案2:(系统中有多台WEB服务器)

主机linuxweb1、linuxweb2、linuxweb3和linuxweb4都是web服务器。主机Linuxftp 1是ftp服务器
(主服务器)。Web主机不向用户开放FTP服务。
在主机linuxftp1上安装fam和imon、SGI::FAM及fam_mirror。在每台主机上置rsh或ssh。linuxftp1
无需口令就可以在四台WEB服务器上运行远程命令。
编辑fam_mirror,将@replicaHosts设置为:
@replicaHosts=qw(linuxweb1 linuxweb2 linuxweb3 linuxweb4);
如果有需要也可以改动$rsh和$rsync,假设WEB文本放在各个机器的/var/www目录下。
在linuxftp 1上运行:INIT_MIRROR=1 fam_mirror /var/www &
这样,四台WEB服务器都能对linuxftp 1上改变的文件进行更新。

资源列表:

SGI’s fam site:http://oss.sgi.com/projects/fam
SGI:FAM Perl Module:http://search.cpan.org/search?dist=SGI-FAM
Realtime Data Mirroring (WEBD and SLIM) for IRIX:
http://www.nas.nasa.gov/Groups/www/subpages/topology.html
fam mirror:http://www.linuxfocus.org/common/src/article199/fam_mirror

存在的问题

文中提出的解决方案存在一个小问题:碰到比较大的目录就不工作了,如含有四千到五千个子目录的
情况。可能是内核不堪重负了。我正在找到产生这个问题的原因,一有发现我就会写到文章中的。如
果你已经知道了解决这个问题的方法,请来信告知我。

作者:原作:Atif Ghaffa 翻译:sword_martin

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:存储入门:SAS硬盘技术及产品(图)

下一篇:手把手教你玩转NAS之新手入门(图)