当前位置:
文档之家› 负载均衡、高可用Web集群之文件同步
负载均衡、高可用Web集群之文件同步
论坛服务器2 www2
文件服务器 或
磁盘阵列
上传文件
下载文件
负载均衡、高可用Web集群之文件同步
文件同步概述
5
方 在所有web节点间实现文件同步。文件同步软件:rsync,rsnapshot等等。 案 我们要采用的软件是unision,unison用来在两个目标之间进行文件同步,比如两个目录之间,或 二 者两台服务器之间。unsion设置非常简单,同步机制方便和高效。Unison的同步是双向的,而且
服务器之间同步文件,需要通过SSH来实现 1 在上,切换到root用户,然后用ssh-keygen命令创建一对密钥(不要设置密码):
ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/root/.ssh/id_dsa): 直接回车
The authenticity of host '192.168.31.14 (192.168.31.14)' can't be established. ECDSA key fingerprint is 1f:78:0b:67:29:65:3e:28:77:d5:f1:b6:79:11:54:99. Are you sure you want to continue connecting (yes/no)? yes /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys root@192.168.31.14's password:
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Hale Waihona Puke 直接回车Enter same passphrase again:
直接回车
Your identification has been saved in /root/.ssh/id_dsa.
负载均衡、高可用Web集群之 文件同步
2
负载均衡、高可用Web集群之文件同步
文件同步概述
3
假设一个论坛
两台服务器分别为www1和www2
采用负载均衡的配置方法
用户会上传附件
也会下载附件 如果用户上传附件时连接到的www1这个节点
论坛服务器1 www1
从www1下载附件是正确的
如果下载这个附件的用户被连接到www2这个节点
会发生错误,找不到文件
上传文件
论坛系统 负载均衡
论坛服务器2 www2
下载文件
负载均衡、高可用Web集群之文件同步
文件同步概述
4
方 可以找一台单独的服务器,专门用作“文件服务器”,所有附件都上传到该服务器上。
案 一
甚至,可以用专门的存储阵列。但是这样的方案,需要额外的硬件和软件配置。
上传文件
论坛服务器1 www1
不需要额外配置就可以实现双向同步(任何一端有文件变化,都会同步到另一端)。
unison
unison
论坛服务器1 www1
论坛服务器2 www2
负载均衡、高可用Web集群之文件同步
6
负载均衡、高可用Web集群之文件同步
Unison介绍
Unison是开源软件——Unison File Synchronizer 的名称是一款跨windows/linux/MAC OS平台的文 件同步工具,不仅支持本地对本地同步,也支持通 过SSH、RSH和Socket等网络协议进行同步。 Unison支持双向同步操作,既可以从A同步到B, 也可以从B同步到A,这些都不需要额外的设定。
sudo service ssh restart
负载均衡、高可用Web集群之文件同步
创建密钥
13
4 把创建好的公钥,复制到上去。
在上执行命令:
ssh-copy-id -i /root/.ssh/id_dsa.pub root@192.168.31.14
Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully
负载均衡、高可用Web集群之文件同步
创建密钥
12
3 允许root用SSH远程登录 在默认情况下,root用户无法使用SSH登陆,在上修改sshd_config: 将PermitRootLogin without-password修改为PermitRootLogin yes sudo nano /etc/ssh/sshd_config PermitRootLogin without-password 修改为 PermitRootLogin yes
+--[ DSA 1024]----+
|*o.+E.oo. . |
|=..=.... + o |
|....o . o = . |
|. o.o. |
| .S |
|
|
|
|
|
|
|
|
+-----------------+
负载均衡、高可用Web集群之文件同步
创建密钥
11
2 把公钥复制到上去。 必须在上启用root用户(也就是设置root用户的密码): sudo passwd
7
负载均衡、高可用Web集群之文件同步
Unison介绍
8
在所有web节点间安装unison,以实现文件同步 sudo apt-get install unison
unison
unison
Web节点1
Web节点2
负载均衡、高可用Web集群之文件同步
9
负载均衡、高可用Web集群之文件同步
创建密钥
10
Your public key has been saved in /root/.ssh/id_dsa.pub.
The key fingerprint is:
e0:c0:44:64:b0:02:e2:10:d3:d7:f5:86:57:2e:08:21
root@www1
The key's randomart image is: