需求架构
为后端LAMP架构实现负载均衡,利用LVS实现对2台Web服务器的请求分摊
注:172.16.25.0/24是外部网络,192.168.0.0/24是内部网络
具体部署
Director
# 配置网络/sbin/ifconfig eth0:0 172.16.25.10 broadcast 172.16.25.10 netmask 255.255.255.255 up # 配置VIP,并限制其地址广播/sbin/route add -host 172.16.25.10 dev eth0:0 # 限制对VIP的访问只能通过eth0:0接口转发/sbin/ifconfig eth1 192.168.0.10 netmask 255.255.255.0 up # 配置DIPecho 1 > /proc/sys/net/ipv4/ip_forward# 清空iptables规则/sbin/iptables -F/sbin/iptables -Z/sbin/iptables -C# 配置ipvs规则yum install ipvsadm # 直接yum安装即可/sbin/ipvsadm -A -t 172.16.25.10:80 -s wlc # 使用wlc调度算法,172.16.25.10为VIP/sbin/ipvsadm -a -t 172.16.25.10:80 -r 192.168.0.21 -g -w 2 # 使用DR模型,后端web节点1是192.168.0.21,权重为2/sbin/ipvsadm -a -t 172.16.25.10:80 -r 192.168.0.22 -g -w 5 # 使用DR模型,后端web节点2是192.168.0.22,权重为5
RS1和RS2
# 配置网络/sbin/ifconfig lo down/sbin/ifconfig lo upecho 1 > /proc/sys/net/ipv4/conf/lo/arp_ignoreecho 2 > /proc/sys/net/ipv4/conf/lo/arp_announce/sbin/ifconfig lo:0 172.16.25.10 broadcast 172.16.25.10 netmask 255.255.255.255 up/sbin/route add -host 172.16.25.10 dev lo:0# 配置HTTPDvi /etc/httpd/extra/httpd-vhosts.confProxyRequests OffProxyPassMatch ^/(.*\.php)$ fcgi://192.168.0.32:9000/www/phpwind.com/$1# 注:将所有php请求通过fcgi转发至后端PHP服务器,虚拟主机的根目录是/www/phpwind.com
MySQL-NFS
# MySQL需配置phpwind安装所需的数据库和用户create database phpwind;grant all privileges on phpwind.* to phpwind@'192.168.%.%' identified by 'phpwind123';flush pricileges;# 配置NFSvi /etc/exports/www/phpwind.com 192.168.0.0/16(rw,no_root_squash) # 本地目录/www/phpwind.com是phpwind程序的安装文件所在,需要作为NFS导出的文件系统service nfs startexportfs -ar # 重新导出全部NFS文件系统
PHP
php作为php-fpm进程运行,配置好php-fpm并检测是否运行正常即可:ps -ef |grep php-fpm
其它
# 在RS1、RS2和PHP服务器上挂载NFS目录;因为phpwind的程序文件不利于静文件和动态php文件分离,故Web服务器和PHP服务器都需要挂载NFS目录,才能实现正常访问mount -t nfs -o _netdev 192.168.0.31:/www/phpwind.com /www/phpwind.com
安装测试和访问测试
phpwind安装测试
phpwind发帖测试
phpwind看帖测试
LVS大量请求测试
上一篇: