博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RedHat 7配置HAProxy实现Web负载均衡
阅读量:6073 次
发布时间:2019-06-20

本文共 2015 字,大约阅读时间需要 6 分钟。

本文将简单介绍使用HAProxy实现web负载均衡,主要内容包括基于权重的轮询、为HAProxy配置https、配置http重定向为https、配置HAProxy使用独立日志。

一、测试环境

HAProxy:

主机名:RH7-HAProxy

IP地址:192.168.10.20

操作系统:Red Hat Enterprise Linux Server release 7.2 (Maipo)最小化安装

防火墙与SELinux:关闭

安装的服务:HAProxy-1.5.14

WEB01:

主机名:RH7-Web-01

IP地址:192.168.10.21

操作系统:Red Hat Enterprise Linux Server release 7.2 (Maipo)最小化安装

防火墙与SELinux:关闭

安装的服务:Apache-httpd 2.4

WEB02:

主机名:RH7-Web-02

IP地址:192.168.10.22

操作系统:Red Hat Enterprise Linux Server release 7.2 (Maipo)最小化安装

防火墙与SELinux:关闭

安装的服务:Apache-httpd 2.4

本文原始出处:江健龙的技术博客

二、WEB页面访问测试

1、使用浏览器访问两台web的IP地址,能成功访问到不同的页面,方便我们后面直观地观察负载均衡的效果。由于Apache的安装配置不是本文重点,具体可参考本人之前的博文《RedHat 7安装配置Apache 2.4》()

2、在RH7-HAProxy上也访问一下两台Web,确认也可以正常访问

三、安装配置HAProxy

1、[root@RH7-HAProxy~]yum -y install haproxy

2、[root@RH7-HAProxy~]systemctl start haproxy

3、[root@RH7-HAProxy~]systemctl enable haproxy

4、[root@RH7-HAProxy~]mv /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.bak

5、[root@RH7-HAProxy~]vi /etc/haproxy/haproxy.cfg

增加以下内容,然后重启haproxy服务

6、使用浏览器访问HAProxy的IP地址,多次刷新,成功实现轮询访问web01和web02

7、登录haproxy的后台

8、可以看到访问web01和web02的相关统计数据

9、修改haproxy的配置文件,将web01的权重改为3,web02的权重仍为1,这样访问到两台web的比例应该为3:1,改好后重启下haproxy服务

10、再次通过浏览器访问HAProxy的IP地址,多次刷新进行访问测试

11、再次登录HAProxy后台查看统计数据,可以看到访问到web01和web02的比例为3:1

四、配置HAProxy使用Https加密访问

1、采用客户端到HAProxy使用https、HAProxy到WEB端使用http的方式,只需要在HAProxy上配置证书,这里我们就配置一张自签名证书来测试一下

2、查看一下配置好的证书jiangjianlong.pem

3、修改HAProxy的配置文件,增加以下参数后重启haproxy服务

4、使用https协议访问HAProxy的IP地址,提示证书存在问题,这是因为自签名证书不受浏览器信任,但说明上文配置的证书已经生效了,点击继续浏览此网站

5、成功访问到Web01页面,刷新也能访问到Web02,说明在https的加密访问下负载均衡也没问题

6、通过hosts解析配置一个域名指向HAProxy的IP地址,也能正常访问

7、查看下证书信息,跟我们创建的证书信息一致

8、配置http重定向,自动将http重定向为https,修改haproxy配置文件,增加以下参数,并重启服务

9、使用浏览器测试,成功实现http自动重定向为https进行访问,但由于截图无法呈现这个动态的效果,就不截了。

五、配置HAProxy使用独立日志文件

本文原始出处:江健龙的技术博客

1、HAProxy的日志默认写入到系统日志中去,我们可以把它独立出来,方便排查管理。编辑/etc/rsyslog.conf,按下图进行修改

2、重启rsyslog服务,再通过浏览器访问一下web以便产生日志,然后查看/var/log/haproxy.log,发现日志已经按照我们上文所配置的那样,记录到/var/log/haproxy.log来了

本文转自Mr大表哥jianlong1990 博客,原文链接: http://blog.51cto.com/jiangjianlong/1887279      如需转载请自行联系原作者

你可能感兴趣的文章
c# 委托(Delegate)
查看>>
Python --替换字符串中的字串
查看>>
二招帮助你解决网站首页被百度降权的问题
查看>>
lnmp应用分离+keepalived+mysql互为主备
查看>>
DELL R720 RAID LINUX驱动问题 XEN安装
查看>>
scons用户指南翻译(附gcc/g++参数详解)
查看>>
php实现301跳转
查看>>
我的友情链接
查看>>
Content Provider(以下简称为CP)的加载
查看>>
低版本Samba无法挂载
查看>>
type和object的那几腿
查看>>
Python3 异步IO--asyncio
查看>>
route-map
查看>>
我的友情链接
查看>>
0x80070570,文件或目录损坏且无法读取
查看>>
NSFileManager文件管理
查看>>
IEEE 802.1d生成树协议小解
查看>>
UVA 10603 Fill 最短路
查看>>
Swagger笔记
查看>>
flask uwsgi nginx 部署文档
查看>>