下面再说lvs-dr,后端的服务php和数据库服务完全不用改变,只需改变网络模型即可;
搭建网络环境:
Director:
eno16777736:0网卡别名:VIP:172.18.11.7
]# ifconfig eno16777736:0 172.18.11.7 netmask 255.255.255.255 broadcast 172.18.11.7
eno16777736网卡:DIP:172.18.11.111
RS1:
lo:0回环接口别名:VIP:172.18.11.7
eno16777736网卡:RIP:172.18.11.11
RS2:
lo:0回环接口别名:VIP:172.18.11.7
eno16777736网卡:RIP:172.18.11.12
mysql数据库:172.18.11.114
在RS1上为方便设置内核参数,限制arp通告及arp响应,设定从lo接口进入的报文必须由lo接口出去;
编写RS自动设置脚本:
]# vim skp.sh
]# chmod +x skp.sh
]# ./skp.sh start
]# cat /proc/sys/net/ipv4/conf/all/arp_ignore
]# cat /proc/sys/net/ipv4/conf/all/arp_announce
复制到RS2并执行脚本;
]# scp skp.sh [email protected]:/root
]# ./skp.sh start
配置Director网卡上的别名为VIP:172.18.11.7
]# ifconfig eno16777736:0 172.18.11.7 netmask 255.255.255.255 broadcast 172.18.11.7
禁止本机向外广播自己,但可以响应其它主机发的广播;
此时,为了测试有直观的效果,把http配置文件,改为指向静态页面:
分别在RS上设置:
找一台虚拟机,在172.18.11.0/16网段的地址即可测试:
此时,lvs-dr模型完成测试,实现了基于rr调度;
后面,测试php部分与上例相同,只需在http配置文件中的,DocmentRoot改为共享存储的目录/php即可:
在RS2上使用nfs服务提供共享存储,安装nfs-utils并启动nfs服务
]# yum -y install nfs-utils
]# systemctl start nfs.service
在RS2上创建共享目录并导出:
]# mkdir /php
]# vim /etc/exports
/php 172.18.0.0/16(rw,no_root_squash)
]# exportfs -r
在RS1上,挂载RS2导出的共享目录:
]# mkdir /php
]# mount -t nfs 172.18.11.12:/php /php
在/php共享目录下,安装部署wordpress:
]# unzip wordpress-4.3.1-zh_CN.zip
]# cd wordpress
]# cp wp-config-sample.php wp-config.php
]# vim wp-config.php
在数据库上操作:
> CREATE DATABASE wpdb;
> GRANT ALL ON wpdb.* TO wpuser@'172.18.%.%' IDENTIFIED BY 'wppass';
在浏览器输入:http://172.18.11.7/wordpress/
显示:
安装即可,后面步骤省略,可自行完成;