首页 > 其他分享 >RHEL 7配置HAProxy实现Web负载均衡

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

时间:2023-04-22 22:57:06浏览次数:45  
标签:HAProxy Web 配置 RH7 访问 RHEL IP地址 haproxy

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

2、在RH7-HAProxy上也访问一下两台Web,确认也可以正常访问
RHEL 7配置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负载均衡RHEL 7配置HAProxy实现Web负载均衡
使用浏览器访问HAProxy的IP地址,多次刷新,成功实现轮询访问web01和web02
RHEL 7配置HAProxy实现Web负载均衡RHEL 7配置HAProxy实现Web负载均衡
RHEL 7配置HAProxy实现Web负载均衡RHEL 7配置HAProxy实现Web负载均衡
登录haproxy的后台
RHEL 7配置HAProxy实现Web负载均衡RHEL 7配置HAProxy实现Web负载均衡
可以看到访问web01和web02的相关统计数据
RHEL 7配置HAProxy实现Web负载均衡RHEL 7配置HAProxy实现Web负载均衡
修改haproxy的配置文件,将web01的权重改为3,web02的权重仍为1,这样访问到两台web的比例应该为3:1,改好后重启下haproxy服务
RHEL 7配置HAProxy实现Web负载均衡RHEL 7配置HAProxy实现Web负载均衡
再次通过浏览器访问HAProxy的IP地址,多次刷新进行访问测试
再次登录HAProxy后台查看统计数据,可以看到访问到web01和web02的比例为3:1
RHEL 7配置HAProxy实现Web负载均衡RHEL 7配置HAProxy实现Web负载均衡

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

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

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

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

标签:HAProxy,Web,配置,RH7,访问,RHEL,IP地址,haproxy
From: https://www.cnblogs.com/0227-yyds/p/17344358.html

相关文章

  • 后台拿Webshell总结
    Wordpress模板上传一句话后台->外观->主题->编辑选择文件为php后缀的模板,并写入一句话木马<?phpphpinfo();eval($_POST['cmd']);?>访问该文件,默认路径为http://www.cbi1.com/wp-content/themes/twentysixteen/archive.php用蚁剑连接一句话上传主题传一句话在网......
  • Gitee自动部署 cocoscreator web端
    Gitee自动部署参考文档:Gitee目前支持特性:推送代码到Gitee时,由配置的WebHook触发Jenkins任务构建。评论提交记录触发提交记录对应版本Jenkins任务构建提交PullRequest到Gitee项目时,由配置的WebHook触发Jenkins任务构建,支持PR动作:新建,更新,接受,关闭,审查通过,测试......
  • #yyds干货盘点#区别WebSocket 与 Socket
    WebSocket是什么WebSocket是一种在单个TCP连接上进行全双工通信的协议。WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocketAPI中,浏览器和服务器只需要完成一次HTTP握手,两者之间就直接可以创建持久性的连接,并进行双向数......
  • #yyds干货盘点#web端断点续传的思路
    讲断点续传前,咱们先讲讲大文件上传。大文件上传,可能会出现,上传时间过长,接口限制了文件大小。所以,大文件直接上传,也很不友好,一般采用分片上传的方式去上传。而blob提供了slice方法, file继承了blob自然也能使用slice去进行分片处理。处理流程:前端对大文件进行分片,分片名采用文件hash......
  • web基本概念
    1.基本概念1.1前言web:开发:web,网页的意思,www.baidu.com静态web:html.css提供给所有人看的数据始终不会发生变化动态web每个人在不同时间不同地点看到的信息各不相同例如:淘宝,大部分网站...技术栈:Serverlt,ASP,php在java中,动态web资源开发的技术统称为j......
  • Introduction to WebGL 3D with HTML5 and Babylon.js
    Explore3Dbasics,andtakealookat3Dwithouthardware(creatingasoftwareengine).[05:45]-Understanding3DBasicsviaasoftengine[09:49]-UnderstandingtheTransformationpipeline[20:26]-Itsallabouttriangles[31:42]-MovingfromCPUto......
  • 04:基础入门-WEB源码拓展
    前言:WEB源码在安全测试中是非常重要的信息来源,可以用来代码审计漏洞也可以用来做信息突破口,其中WEB源码有很多技术需要简明分析。比如:获取某ASP源码后可以采用默认数据库下载为突破,获取某其他脚本源码漏洞可以进行代码审计挖掘或分析其业务逻辑等,总之源码的获取将为后期的安全......
  • web3 产品介绍: safe --多签钱包 多人审批更放心
    Safe是一款由Gnosis团队开发的多签钱包,它提供了一种安全、灵活和易于使用的方式来管理加密资产。在本文中,我们将介绍Safe的主要特点以及如何使用Safe来保护您的数字资产。一、Safe的特点多重签名:Safe使用多重签名机制来保护用户的资产,需要至少两个签名才能完成交易。这使得用......
  • JavaWeb回顾与小结(一)
    初识前端网页有哪些部分组成文字,图片,音频,视频,超链接网页的本质程序员写的HTML,CSS,JavaScript前端代码前端代码如何转换成网页通过浏览器解析和渲染成用户看到的网页web标准也称网页标准,由一系列的标准组成,大部分由W3C(WorldWideWebConsortium,万维网联盟)复制制......
  • Java WebSocket客户端
    https://www.cnblogs.com/SjhCode/p/WebSocketClient.html注意事项:1.@Scheduled(fixedDelay=5000)2.心跳检测3.导入依赖与导包<dependency><groupId>org.java-websocket</groupId><artifactId>Java-WebSocket</artifactId><version>1.......