公司两台服务器都安装了tomcat,配置apache作为负载均衡,当一台服务器出现故障时还能保证业务正常运行。
Server1:192.168.1.100
Server2:192.168.1.200
1、查询是否已经安装了apache
rpm -qa | grep httpd
2、使用yum安装apache,负载配置是一样的。
yum -y install httpd*
3、启动apache,设置为开机自启动。
systemctl start httpd
systemctl enable httpd
4、配置负载均衡
loadfactor参数:可以看到请求是按5:5分配的,loadfactor 参数取值范围为1-100。
route参数:访问时可以分清楚是请求的哪一台服务器
vim /etc/httpd/conf/httpd.conf
<VirtualHost *:80>
ServerName
ProxyRequests Off
#设置使用进入的HTTP请求头来发送代理请求
ProxyPreserveHost On
ProxyPass / balancer://htcluster/
ProxyPassReverse / balancer://htcluster/
ErrorLog "/var/log/httpd/htlog/error.log"
CustomLog "/var/log/httpd/htlog/access.log" common
<Proxy balancer://htcluster>
Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=http://www.likecs.com/" env=BALANCER_ROUTE_CHANGED
BalancerMember :9000/ route=assets1 loadfactor=5 connectiontimeout=5 timeout=5
BalancerMember :9000/ route=assets2 loadfactor=5 connectiontimeout=5 timeout=5
ProxySet lbmethod=byrequests
ProxySet stickysession=ROUTEID
</Proxy>
</VirtualHost>
5、重启apache,访问测试
systemctl restart httpd
访问是否达到负载均衡。
谷歌访问:
猎豹访问:
使用两个浏览器访问查看route两个不一样,负载均衡完成。