LZN's Blog CodePlayer

【已解决】全互联同步备份系统的搭建

2015-03-21
LZN

信息的组织管理的的确确是个大学问,就像桌面整理都能作为一门课程来教授一样,能把数据和规则进行安全、规整地组织存储是非常不容易的。

数据安全的意义毋庸置疑,早就希望做一套全互联同步备份的系统,这两天终于开始着手做了,架构设计上还有诸多不完善,有待将来优化解决。基本原则:

  • 数据与规则分离
  • 冗余备份

整个备份系统(rsync+NFS)的基本架构图如下: bck_sys

NFS实现手段概要:

  1. Team_Server组建NFS服务端,设置开机启动
  2. Blackleach配置Windows客户端,设置开机启动mount脚本

相关资料网上有很多。实现过程中遇到的问题:

Windows客户端挂载后没有写权限的问题。

首先修改服务端/etc/exports:

/home/yangsong3/L_Zealot 202.116.*.*(rw,sync,all_squash,anonuid=500,anongid=500)

再修改客户端,注册表加入新键:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default,DWORD项:AnonymousUid,AnonymousGid,值为10进制500

mount语句写入bat脚本,加入计划任务,即可开机启动。

有一点是,Blackleach上X盘符一直是断开状态,但是可以访问,可以完全读写……不知道为什么,囧。(见20150420更新)

rsync实现手段概要:

rsync参数很有考究,文件覆盖的时候要进行判断,若对方文件版本修改时间比拿去覆盖的文件要晚,则不能覆盖旧有文件,目前不加入delete以防万一。考虑到文件创建顺序,所有终端应做到时间同步,可惜HPC4无法办到,超算方面没有做对时处理。所以同步都在凌晨进行,防止误覆盖。

同步语句范例:

rsync -vzrtulopg -progress -e 'ssh -p *' /home/yangsong3/L_Zealot/project/ workstation@*.*.*.*:/home/workstation/L_Zealot/project/

配置crontab,使得同步能在凌晨按如下顺序进行:

3:01 A.M.

Team_Server发起同步请求,请求顺序Team_Server–>Workstation–>Team_Server

4:01 A.M.

HPC4发起同步请求,请求顺序

HPC4–>Workstation–>HPC4

5:01 A.M.

Workstation发起同步请求,请求顺序

Workstation–>Team_Server

三方同步完成!

参考资料:

http://www.cnblogs.com/mchina/archive/2013/01/03/2840040.html

http://www.cnblogs.com/itech/archive/2009/08/10/1542945.html

http://www.jb51.net/LINUXjishu/66859.html

#Up to 20150321#

114那个IP果然有问题,不能下CISL上的数据,nfs挂载到blackleach上是断线状态但是能连接……

因为不能下CISL的数据,换了21的IP,瞬间上述两个问题都解决了……

#Up to 20150420#

加入对paperhub工程的备份

1:01 A.M.

EES_Web_Server发起同步pull请求,请求顺序Lab_Server–>EES_Web_Server

2:01 A.M.

Team_Server发起同步pull请求,请求顺序Lab_Server–>Team_Server

#Up to 20150906#


Similar Posts

下一篇 php遍历目录

Comments