IPVS-NAT 实现方法
操作系统 | IP | 子网掩码 | 网关 | 主机名 |
Centos6.5 (directory) | Eth0:192.168.26.209 Eth0:0:192.168.26.210 (vip公网地址) |
255.255.252.0 |
192.168.25.3 |
node |
Eth1:192.168.10.1(DIP) | 255.255.255.0 | 无 | ||
操作系统 | RS(IP) | 子网掩码 | 网关 | 主机名 |
Centos6.6 | 192.168.10.210 (私有地址) |
255.255.255.0 |
192.168.10.1 |
node1 |
Centos6.6 | 192.168.10.211 (私有地址) |
255.255.255.0 |
192.168.10.1 |
node2 |
Centos6.6 | 192.168.10.212 (私有地址) |
255.255.255.0 |
192.168.10.1 |
node3 |
安装IPVS:(192.168.26.209)
yum install ipvsadm
加入开机启动项
分别给192.168.10.210-212安装Apache服务,并启动服务。
ansible webserver -a "service httpd start"
查看是否80服务是否都已经启用。
ansible webserver -a "ss -tnl"|grep 80 #没有匹配代表没有正常启动端口服务
在每台服务器(192.168.10.210-212即node1-node3)默认网站目录下创建一个网页文件,并测试访问。
回到192.168.26.209,开启转发功能:
net.ipv4.ip_forward = 1
保存退出让其立即生效:
sysctl -p
设置VIP:
ifconfig eth0:0 192.168.26.210/22
设置IPVS:
[root@node ~]# ipvsadm -A -t 192.168.26.210:80 -s rr #添加ipvs集群服务器 You have new mail in /var/spool/mail/root
[root@node ~]# ipvsadm -L -n #查看IPVS集群服务器 IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.26.210:80 rr
[root@node ~]# ipvsadm -a -t 192.168.26.210:80 -r 192.168.10.210 -m #向集群中添加RSERVER
[root@node ~]# ipvsadm -a -t 192.168.26.210:80 -r 192.168.10.211 -m #向集群中添加RSERVER You have new mail in /var/spool/mail/root
[root@node ~]# ipvsadm -a -t 192.168.26.210:80 -r 192.168.10.212 -m #向集群中添加RSERVER
[root@node ~]# ipvsadm -L -n
IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.26.210:80 rr
-> 192.168.10.210:80 | Masq | 1 | 0 | 0 |
-> 192.168.10.211:80 | Masq | 1 | 0 | 0 |
-> 192.168.10.212:80 | Masq | 1 | 0 | 0 |
打开浏览器看看是否能否访问我们创建的网页:
刷新观察变化:
查看集群显示状态变化: