全部博文(80)
分类: 服务器与存储
2012-05-19 09:17:16
RHEL6.0 csync2 双向同步
系统环境:RHEL6.0 iptables and selinux off
server1: server26.example.com
server2:desktop26.example.com
---->安装必要的软件(每台server上执行类似操作)
yum install gcc-* libgpg-error libgpg-error-devel libgcrypt-devel -y
####按顺序安装一下源码
tar -zxf librsync-0.9.7.tar.gz
cd librsync-0.9.7
./configure
make
make install
tar -zxf sqlite-2.8.17.tar.gz
cd sqlite-2.8.17
./configure
make
make install
tar -zxf libgpg-error-1.7.tar.gz
cd libgpg-error-1.7
./configure
make
make install
tar -zxf libgcrypt-1.4.4.tar.gz
cd libgcrypt-1.4.4
./configure
make
make install
tar -jxf gnutls-2.6.6.tar.bz2
cd gnutls-2.6.6
./configure
make
make install
tar -zxf libtasn1-2.1.tar.gz
cd libtasn1-2.1
./configure
make
make install
echo "/usr/local/lib" >> /etc/ld.so.conf
ldconfig /usr/local/lib #使上面导入生效
####安装此软件,编辑inotify的触发脚本,实现实时同步
tar -zxf inotify-tools-3.13.tar.gz
cd inotify-tools-3.13
./configure
make
make install
####配置csync2安装环境
yum install byacc flex -y
tar -zxf csync2-1.34.tar.gz
cd csync2-1.34
./configure
make
make install
make cert
csync2 -k /etc/csync2.key #生成key速度比较慢,可移动鼠标加快
scp /etc/csync2* server26:/etc/ #将一台服务器生成的key直接同步到另一台服务器
####配置csync2
yum install xinetd -y
cp /etc/xinetd.d/rsync /etc/xinetd.d/csync2
vim /etc/xinetd.d/csync2
service rsync
{
disable = no
protocol = tcp
flags = REUSE
socket_type = stream
wait = no
user = root
group = root
server = /usr/local/sbin/csync2
server_args = -i
}
####配置csync2服务端口
vim /etc/services
csync2 30865/tcp
mkdir /opt/csync #创建同步目录
####编辑csync2配置文件
vim /etc/csync2.cfg
group mygroup
{
host desktop26.example.com server26.example.com #host后只能写主机名
#host host4@host4-eth2;
key /etc/csync2.key;
#include /var/www/html; #默认同步的目录
include /opt/csync; #指定新建目录为同步目录,两台server上同步目录的名称和路径一样
#include %/homedir%/bob;
#exclude %homedir%/bob/temp #不同步指定目录下的文件或目录
#exclude *~.*; #排除以点开头的文件
#action
#{
# pattern /etc/apache/httpd.conf
# pattern /etc/apache/sites-available/*;
# exec "/usr/sbin/apache2ctl graceful"
# logfile "/var/log/csync2_action.log";
# do-local;
#}
backup-directory /var/csync2; #防选错备份目录,根据自己的需求设置,每台主机都有
back-generation 3;
auto younger; #同步以最新的文件为标准更新
#prefix homedir
#{
#on host[12]:/export/users;
#on*: /home;
#}
}
/etc/init.d/xinetd restart
chkconfig xinetd on
netstat -antlp #csync2端口是否被监听
tcp 0 0 :::30865 :::* LISTEN 2896/xinetd
####(可选)配置inotify触发脚本(需安装inotify-tools-3.13.tar.gz)
vim /use/local/sbin/csync2.sh
#!/bin/sh
src=/opt/csync #指定同步目录
/usr/local/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f' \
--exclude "\.swp$" \
-e close_write,modify,delete,create,attrib \
${src} \
| while read file
do
csync2 -x > /dev/null 2>&1 #没有参数v在界面不显示详细
#csync2 -xv
#echo "${src} was csynced...."
done
chmod +x /usr/loca/sbin/csync2.sh
csync2.sh & #每台主机上执行
如果出现/usr/local/bin/inotifywait:error while loading shared libraries:libinotifytools.so.0: cannot open shared object file: No such file or directory
解决办法:
####csync2相关命令介绍
csync2 -vvv -T #用来测试csync2配置是否正确,可看到相关的执行过程
csync2 -xv #执行一次同步,在一台主机同步目录操作后,执行一次命令,便会将改动同步到另一台主机
csync2 -xvvv #执行一次同步并显示详细过程
####测试同步是否正常
在两台server中的任一台创建or删除文件(指定为同步的目录)然后查另一台主机是否进行了同步,若遇到问题,
用csync2 -xv命令手动进行调试,根据错误信息提示调整
注:缓存相关的目录尽力不要用csync2处理,尽可能交给NFS处理
####相关软件下载及参考
最大行业软件2012-11-03 14:24:08
ISOGRAPH_AVSIM_V10.0
ADINA系列产品:
ADINA.V8.8.1
CROCODILE.TECHNOLOGY.V609 系统控制仿真软件
Esteco.modeFRONTiER.v4.3.0 20101110 优化设计
ETA系列:
ETA.CAD.Translator.v1.200704
ETA.VPG.v3.3 汽车整车仿真软件
ETA_DYNAFORM_V5.6(多语言版,包括中文)
(DYNAFORM 是ETA开发的用于板料成形模拟的软件包。针对板料冲压的工艺特点,开发了方便高效的前后处理器,极大地缩短
了模型准备的周期。求解器采用LS-DYNA,基于增量法有限元理论,分析结果准确可靠。DYNAFORM可以模拟预压边、拉延、翻
边、弯曲、多工步成形等工艺过程,能够预测板料起皱、拉裂、回