阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

RHEL 7配置HAProxy实现Web负载均衡

58次阅读
没有评论

共计 1829 个字符,预计需要花费 5 分钟才能阅读完成。

导读 本文将简单介绍使用 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》
RHEL 7 配置 HAProxy 实现 Web 负载均衡

2、在 RH7-HAProxy 上也访问一下两台 Web,确认也可以正常访问
RHEL 7 配置 HAProxy 实现 Web 负载均衡

三、安装配置 HAProxy
[root@RH7-HAProxy~]yum -y install haproxy
[root@RH7-HAProxy~]systemctl start haproxy
[root@RH7-HAProxy~]systemctl enable haproxy
[root@RH7-HAProxy~]mv /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.bak
[root@RH7-HAProxy~]vi /etc/haproxy/haproxy.cfg

增加以下内容,然后重启 haproxy 服务
RHEL 7 配置 HAProxy 实现 Web 负载均衡
使用浏览器访问 HAProxy 的 IP 地址,多次刷新,成功实现轮询访问 web01 和 web02
RHEL 7 配置 HAProxy 实现 Web 负载均衡
RHEL 7 配置 HAProxy 实现 Web 负载均衡
登录 haproxy 的后台
RHEL 7 配置 HAProxy 实现 Web 负载均衡
可以看到访问 web01 和 web02 的相关统计数据
RHEL 7 配置 HAProxy 实现 Web 负载均衡
修改 haproxy 的配置文件,将 web01 的权重改为 3,web02 的权重仍为 1,这样访问到两台 web 的比例应该为 3:1,改好后重启下 haproxy 服务
RHEL 7 配置 HAProxy 实现 Web 负载均衡
再次通过浏览器访问 HAProxy 的 IP 地址,多次刷新进行访问测试
再次登录 HAProxy 后台查看统计数据,可以看到访问到 web01 和 web02 的比例为 3:1
RHEL 7 配置 HAProxy 实现 Web 负载均衡

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

采用客户端到 HAProxy 使用 https、HAProxy 到 WEB 端使用 http 的方式,只需要在 HAProxy 上配置证书,这里我们就配置一张自签名证书来测试一下
RHEL 7 配置 HAProxy 实现 Web 负载均衡
查看一下配置好的证书 jiangjianlong.pem
RHEL 7 配置 HAProxy 实现 Web 负载均衡
修改 HAProxy 的配置文件,增加以下参数后重启 haproxy 服务
RHEL 7 配置 HAProxy 实现 Web 负载均衡
使用 https 协议访问 HAProxy 的 IP 地址,提示证书存在问题,这是因为自签名证书不受浏览器信任,但说明上文配置的证书已经生效了,点击继续浏览此网站
RHEL 7 配置 HAProxy 实现 Web 负载均衡
成功访问到 Web01 页面,刷新也能访问到 Web02, 说明在 https 的加密访问下负载均衡也没问题
RHEL 7 配置 HAProxy 实现 Web 负载均衡
RHEL 7 配置 HAProxy 实现 Web 负载均衡
通过 hosts 解析配置一个域名指向 HAProxy 的 IP 地址,也能正常访问
RHEL 7 配置 HAProxy 实现 Web 负载均衡
查看下证书信息,跟我们创建的证书信息一致
RHEL 7 配置 HAProxy 实现 Web 负载均衡
RHEL 7 配置 HAProxy 实现 Web 负载均衡
配置 http 重定向,自动将 http 重定向为 https, 修改 haproxy 配置文件,增加以下参数,并重启服务
RHEL 7 配置 HAProxy 实现 Web 负载均衡
使用浏览器测试,成功实现 http 自动重定向为 https 进行访问,但由于截图无法呈现这个动态的效果,就不截了。

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

1、HAProxy 的日志默认写入到系统日志中去,我们可以把它独立出来,方便排查管理。编辑 /etc/rsyslog.conf,按下图进行修改
RHEL 7 配置 HAProxy 实现 Web 负载均衡
RHEL 7 配置 HAProxy 实现 Web 负载均衡
2、重启 rsyslog 服务,再通过浏览器访问一下 web 以便产生日志,然后查看 /var/log/haproxy.log,发现日志已经按照我们上文所配置的那样,记录到 /var/log/haproxy.log 来了
RHEL 7 配置 HAProxy 实现 Web 负载均衡

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-24发表,共计1829字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中