haproxy负载均衡

1、配置环境

|----------------------------|--------------|-----------------------|
|   | 作用 | 环境 |
| windows | 测试 |   |
| 192.168.33.158 172.25.0.11 | haproxy负载均衡 | haproxy:2.8.1,centos7 |
| 172.25.0.31 | web服务器1--rs1 | Apache:2.4,redhat9 |
| 172.25.0.32 | web服务器2--rs2 | Apache:2.4 , redhat9 |


2、haproxy配置

bash 复制代码
global
log 127.0.0.1 local2
maxconn 4096
daemon #以后台形式运行 haproxy

defaults
log global
log 127.0.0.1 local2 #日志文件的输出定向,产生的日志级别为 local3,系统中 local1~7 由用户自己定义
mode http #工作模式,所处理的类别,默认采用 http 模式,可配置成 tcp 作 4 层消息转发
option httplog #日志类别,记载 http 日志
option httpclose #每次请求完毕后主动关闭 http 通道,haproxy 不支持 keep-alive,只能模拟这种模式的实现
option dontlognull #不记录空连接,产生的日志
option forwardfor #如果后端服务器需要获得客户端真实 ip 需要配置的参数,可以从 Http Header 中获得客户端 ip
option redispatch #当 serverid 对应的服务器挂掉后,强制定向到其它健康服务器
retries 2 #2 次连接失败就认为服务器不可用,主要通过后面的 check 检查
maxconn 2000 #最大连接数
balance roundrobin #负载均衡算法
stats uri /haproxy-stats #haproxy 监控页面的访问地址 # 可通过http://localhost:80/haproxy-stats 访问
timeout connect 5000 #连接超时时间,单位是 ms 毫秒
timeout client 50000 #客户端连接超时时间
timeout server 50000 #服务器端连接超时时间
mode http
option httpchk GET /index.html #健康检测,下载某一个页面来进行测试,因此这个页面应该是个小页面,而不要用首页面,这里是每隔一秒检查一次页面

frontend http #前端配置,http 名称可自定义
bind 0.0.0.0:80 #发起 http 请求 80 端口,会被转发到设置的 ip 及端口
default_backend http_back #转发到后端 写上后端名称

backend http_back #后端配置,名称上下关联
server s1 172.25.0.31:80 weight 3 check #后端的主机 IP 权重
server s2 172.25.0.32:80 weight 3 check #后端的主机 IP 权重

#server node1 192.168.176.31:80 check inter 2000 rise 3 fall 3 weight 3

3、测试

相关推荐
微刻时光5 分钟前
Docker部署Nginx
运维·nginx·docker·容器·经验
小安运维日记20 分钟前
CKA认证 | Day3 K8s管理应用生命周期(上)
运维·云原生·容器·kubernetes·云计算·k8s
小han的日常1 小时前
接口自动化环境搭建
运维·自动化
小扳1 小时前
Docker 篇-Docker 详细安装、了解和使用 Docker 核心功能(数据卷、自定义镜像 Dockerfile、网络)
运维·spring boot·后端·mysql·spring cloud·docker·容器
运维小文1 小时前
服务器硬件介绍
运维·服务器·计算机网络·缓存·硬件架构
是安迪吖1 小时前
nfs服务器
运维·服务器
鱼骨不是鱼翅1 小时前
模拟回显服务器
运维·服务器
Elastic 中国社区官方博客2 小时前
使用真实 Elasticsearch 进行更快的集成测试
大数据·运维·服务器·数据库·elasticsearch·搜索引擎·集成测试
舞动CPU8 小时前
linux c/c++最高效的计时方法
linux·运维·服务器
皮锤打乌龟8 小时前
(干货)Jenkins使用kubernetes插件连接k8s的认证方式
运维·kubernetes·jenkins