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

Crq
Crq
管理员
1390
文章
0
粉丝
Linux教程评论4字数 843阅读2分48秒阅读模式
摘要本文将简单介绍使用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负载均衡-图片1

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

RHEL 7配置HAProxy实现Web负载均衡-图片2

三、安装配置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负载均衡-图片3

使用浏览器访问HAProxy的IP地址,多次刷新,成功实现轮询访问web01和web02
RHEL 7配置HAProxy实现Web负载均衡-图片3

RHEL 7配置HAProxy实现Web负载均衡-图片3

登录haproxy的后台
RHEL 7配置HAProxy实现Web负载均衡-图片3

可以看到访问web01和web02的相关统计数据
RHEL 7配置HAProxy实现Web负载均衡-图片3

修改haproxy的配置文件,将web01的权重改为3,web02的权重仍为1,这样访问到两台web的比例应该为3:1,改好后重启下haproxy服务
RHEL 7配置HAProxy实现Web负载均衡-图片3

再次通过浏览器访问HAProxy的IP地址,多次刷新进行访问测试
再次登录HAProxy后台查看统计数据,可以看到访问到web01和web02的比例为3:1
RHEL 7配置HAProxy实现Web负载均衡-图片3

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

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

RHEL 7配置HAProxy实现Web负载均衡-图片4

查看一下配置好的证书jiangjianlong.pem
RHEL 7配置HAProxy实现Web负载均衡-图片4

修改HAProxy的配置文件,增加以下参数后重启haproxy服务
RHEL 7配置HAProxy实现Web负载均衡-图片4

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

成功访问到Web01页面,刷新也能访问到Web02,说明在https的加密访问下负载均衡也没问题
RHEL 7配置HAProxy实现Web负载均衡-图片4

RHEL 7配置HAProxy实现Web负载均衡-图片4

通过hosts解析配置一个域名指向HAProxy的IP地址,也能正常访问
RHEL 7配置HAProxy实现Web负载均衡-图片4

查看下证书信息,跟我们创建的证书信息一致
RHEL 7配置HAProxy实现Web负载均衡-图片4

RHEL 7配置HAProxy实现Web负载均衡-图片4

配置http重定向,自动将http重定向为https,修改haproxy配置文件,增加以下参数,并重启服务
RHEL 7配置HAProxy实现Web负载均衡-图片4

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

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

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

RHEL 7配置HAProxy实现Web负载均衡-图片5

RHEL 7配置HAProxy实现Web负载均衡-图片5

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

weinxin
我的微信
微信号已复制
我的微信
这是我的微信扫一扫
 
Crq
  • 本文由 Crq 发表于2025年1月12日 18:06:14
  • 转载请注明:https://www.cncrq.com/12577.html
如何在Linux中查找一个文件 Linux教程

如何在Linux中查找一个文件

对于新手而言,在Linux中使用命令行可能会非常不方便。没有图形界面,很难在不同文件夹间浏览,找到需要的文件。本篇教程中,我会展示如何在Linux中查找特定的文件。
linux下查看文件内容工具发布啦! Linux教程

linux下查看文件内容工具发布啦!

在Linux下面我们想要查看一个文件里面的内容,除了用编辑器把文件打开查看外,linux还提供了几条命令,可以不用打开文件就能把文件的内容输出到显示屏上进行查看。
linux下查询命令的技巧 Linux教程

linux下查询命令的技巧

1、which which命令是在PATH变量指定的路径中,搜索某个系统命令的位置,并返回第一个搜索结果。也就是说,使用which命令,就可以看到系统命令是否存在,以及执行的到底是哪一个位置的命令。 ...
在 Linux 上配置一个 syslog 服务器 Linux教程

在 Linux 上配置一个 syslog 服务器

Syslog服务器可以用作一个网络中的日志监控中心,所有能够通过网络来发送日志的设施(包含了Linux或Windows服务器,路由器,交换机以及其他主机)都可以把日志发送给它。 通...
匿名

发表评论

匿名网友
:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:
确定

拖动滑块以完成验证