linux – csync2错误:与远程主机的连接失败

我无法找到任何文章来回答这个问题,所以我最好的选择是在这里发布:

脚本
我们有2个应用程序服务器在生产托管PHP网站,我想在2之间同步一些文件夹,同样是为开发环境设置没有问题,我已经按照URL“http://www.cloudedify.com/synchronising-files-in-cloud-with-csync2/”的所有说明,我仍然似乎有相同的结果,防火墙已被禁用在两个盒子上用于故障目的:

配置文件
cysnc2.cfg

nossl * *;

group production {
   host server1;
   host server2;

   key /etc/csync-production-group.key;

 include /etc/httpd/sites-available;
 include /xxxxxx/public_html/files

 include /xxxxxxx/magento/media/catalog/product
 include /xxxxxxx/magento/media/brands

   exclude *.log;
   exclude /xxxx/public_html/file/cache;
   exclude /xxxxx/public_html/magento/var/cache;
   exclude /xxxx/public_html/logs;
   exclude /xxxxx/public_html/magento/var/log;

   backup-directory /data/sync-conflicts/;
   backup-generations 2;

   auto younger;
}

/etc/xinetd.d/csync2
csync2.cfg

service csync2
{
   disable         = no
   flags           = REUSE
   socket_type     = stream
   wait            = no
   user            = root
   group           = root
   server          = /usr/sbin/csync2
   server_args     = -i -D /data/sync-db/
   port            = 30865
   type            = UNLISTED
   log_type        = FILE /data/logs/csync2/csync2-xinetd.log
   log_on_failure  += USERID
}

我确保守护进程正在端口30865上的服务器上监听,并且在两台服务器上都匹配了密钥

我在每台服务器上运行tcpdump,输出如下:

12:20:31.366771 IP server1.49919 > server2.csync2: Flags [S],seq 445156159,win 14600,options [mss 1460,sackOK,TS val 794864936 ecr 0,nop,wscale 7],length 0
12:20:31.366810 IP server2.csync2 > server1.49919: Flags [S.],seq 450593575,ack 445156160,win 14480,TS val 794798911 ecr 794864936,length 0
12:20:31.367101 IP server1.49919 > server2.csync2: Flags [.],ack 1,win 115,options [nop,TS val 794864937 ecr 794798911],length 0
12:20:31.367138 IP server1.49919 > server2.csync2: Flags [P.],seq 1:9,length 8
12:20:31.367147 IP server2.csync2 > server1.49919: Flags [.],ack 9,win 114,TS val 794798912 ecr 794864937],length 0
12:20:31.368625 IP server2.csync2 > server1.49919: Flags [R.],seq 1,TS val 794798913 ecr 794864937],length 0

还有什么我错过或应该做的吗?

解决方法

我不得不删除我提供给csync2的-N主机的127.0.0.1条目. “app1”的127.0.0.1条目导致csync2客户端要绑定到127.0.0.1而不是使用内部网络.

相反,使用守护进程,我使用包装器而不是直接调用csync2来强制执行我的-N主机名首选项.

#!/bin/sh
# cluster-csync2.sh
CSYNC2_SYstem_DIR=/etc /opt/cluster/bin/csync2 -i -D /var/lib/csync2 -N `hostname -s`

我的/etc/inetd.conf条目(端口在/ etc / services中定义):

csync2      stream  tcp Nowait  root    /opt/cluster/bin/cluster-csync2.sh  cluster-csync2.sh

相关文章

1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...
如何抑制stable_secret读取关键的“net.ipv6.conf.all.stabl...
1 删除0字节文件 find -type f -size 0 -exec rm -rf {} ...
## 步骤 1:安装必要的软件包 首先,需要确保系统已安装 `dh...