我有2个公共ip服务器:
SERVER A - 10.10.10.11 SERVER B - 10.10.10.12
他们都是在操作系统中的centos 6,用php-fpm安装nginx,2个完全相同的网站存储在: / var / www / html 。
Domain with:myxdomain.com和dns托pipe的cloudflare(因为cloudflare支持轮循)将该域指向10.10.10.11和10.10.10.12的logging。 我知道,循环赛DNS不包括故障转移或失败,但没关系,我需要的是:
我如何同步/ var / www / html服务器A和服务器B的内容完全相同? 让我们说:
1)用户上传文件到服务器A,文件内容也将同步到服务器B.
2)用户上传文件到服务器B,文件内容也将同步到服务器A.
rsync会是不错的select吗? 任何命令行和cronjob时间的例子适合?
谢谢
尝试:
rsync -vaEW source destination
当然也是一样。
检查这个链接: http : //howtodba.com/how-to-build-a-cheap-web-cluster-with-replicated-storage-and-mysql-master-master-configuration/
阅读第4步:安装GlusterFS服务器和客户端
我已经将这个教程用于master-masternetworking集群,通过GlusterFS复制存储。
我会在这里评估Bittorrent Sync ; 它将处理2路“多主”同步,也不需要第三方云。
您可以将其设置为仅与特定主机同步,因此您只能与其他节点同步。
1)设置pki。 这使得“交互式”sshlogin不是必需的。 这可以通过ssh-keygen完成,并将新生成的〜/ .ssh / id_dsa.pub或〜/ .ssh / id_rsa.pub粘贴到远程框的〜/ .ssh / authorized_keys上。
2)经常设置cron到rsync的内容。 无论是否cron'd,rsync命令是相同的如前所述。 取决于你想要多less冗长,试试:
user @ serverB> rsync -avP / var / www / html / user @ serverA:/ var / www / html /
user @ serverA> rsync -avP / var / www / html / user @ serverB:/ var / www / html /
如果cron /脚本以“user”身份运行,则可以省略该部分,但是“user”必须在其主目录中具有.ssh / authorized_keys,以使其无密码(并且是自动的)
如果你真的想这样的LB – 尝试csync它使用rsync协议,但它是为双向同步
另一个select是使用统一。 这就像rsync,但可以处理双向同步(删除)。