haproxy高级功能及配置

目录

1.基于cookie的会话保持:

2.HAProxy状态页:

3.IP透传


1.基于cookie的会话保持:

cookie value:为当前server指定cookie值,实现基于cookie的会话黏性,相对于基于 source 地址 hash 调度算法对客户端的粒度更精准,但同时也加大了haproxy负载,目前此模式使用较少, 已经被session共享服务器代替

2.配置选项:

cookie name [ rewrite | insert | prefix ] [ indirect ] [ nocache ] [ postonly ] [
preserve ] [ httponly ] [ secure ] [ domain ]* [ maxidle <idle> ] [ maxlife ]


name:#cookie Key名称,用于实现持久连接
insert:#插入新的cookie,默认不插入cookie
indirect:#如果客户端已经有cookie,则不会再发送cookie信息
nocache:#当client和hapoxy之间有缓存服务器(如:CDN)时,不允许中间缓存器缓存cookie,
                  因为这会导致很多经过同一个CDN的请求都发送到同一台后端服务器

2.HAProxy状态页:

session rate(每秒的连接会话信息)
cur:每秒的当前会话数量:
max:每秒新的最大会话数量
limit:每秒新的会话限制量
sessions(会话信息)
cur:当前会话量
max:最大会话量
limit:限制会话量
Total:总共会话量
LBTot:选中一台服务器所用的总时间
Last:和服务器的持续连接时间
Wght:权重
Bytes(流量统计):
In:网络的字节输入总量
Out:网络的字节输出总量
Dwn:后端服务器连接后都是DOWN的数量
Denied(拒绝统计信息):
Req:拒绝请求量
Resp:拒绝回复量

Errors(错误统计信息):
Req:错误请求量
conn:错误链接量
Resp:错误响应量

Warnings:警告信息统计

Retr:重新尝试次数
Redis:再次发送次数

Server(real server信息):
Status:后端机的状态,包括UP和DOWN
LastChk:持续检查后端服务器的时间

Act:活动链接数量
Bck:备份的服务器数量
Chk:心跳检测时间

Dwntme:总的downtime时间
Thrtle:server状态

3.IP透传

四层与七层透传的区别

四层:IP+PORT转发

七层:协议+内容交换

四层负载

在四层负载设备中,把client发送的报文目标地址(原来是负载均衡设备的IP地址),根据均衡设备设置的选择web服务器的规则选择对应的web服务器IP地址,这样client就可以直接跟此服务器建立TCP连接并发送数据,而四层负载自身不参与建立连接,而和LVS不同,haproxy是伪四层负载均衡,因为haproxy需要分别和前端客户端及后端服务器建立连接

七层代理

七层负载均衡服务器起了一个反向代理服务器的作用,服务器建立一次TCP连接要三次握手,而client要访问Web Server要先与七层负载设备进行三次握手后建立TCP连接,把要访问的报文信息发送给七层负载均衡;然后七层负载均衡再根据设置的均衡规则选择特定的Web Server,然后通过三次握手与此台Web Server建立TCP连接,然后Web Server把需要的数据发送给七层负载均衡设备,负载均衡设备再把数据发送给client;所以,七层负载均衡设备起到了代理服务器的作用,七层代理需要和Client和后端服务器分别建立连接

  • 6
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
HAProxy配置负载均衡可以分为以下几个步骤: 1. 安装 HAProxy:在 Linux 系统上,可以使用包管理器来安装 HAProxy。例如在 Ubuntu 系统上,可以使用以下命令来安装: ``` sudo apt-get update sudo apt-get install haproxy ``` 2. 编辑 HAProxy 配置文件:HAProxy配置文件通常位于 /etc/haproxy/haproxy.cfg,可以使用任何文本编辑器来编辑。需要注意的是,在修改配置文件之前应该备份原来的配置文件。 3. 配置后端服务器:在 HAProxy 中,后端服务器也称为“服务器池”或“服务器组”。可以通过以下配置添加后端服务器: ``` backend mybackend balance roundrobin server server1 192.168.1.10:80 check server server2 192.168.1.11:80 check ``` 这里使用了 round-robin 算法来进行负载均衡,每个请求将轮流分配到不同的服务器上。`check` 表示 HAProxy 会定期检查服务器是否可用。 4. 配置前端服务器:在 HAProxy 中,前端服务器也称为“监听器”或“代理”。可以通过以下配置添加前端服务器: ``` frontend myfrontend bind *:80 default_backend mybackend ``` 这里将 HAProxy 监听在 80 端口,所有的请求都将转发到后端服务器池 `mybackend` 中。 5. 重启 HAProxy:修改配置文件之后,需要重启 HAProxy 服务才能使新的配置生效。可以使用以下命令来重启 HAProxy: ``` sudo systemctl restart haproxy ``` 以上是基本的 HAProxy 负载均衡配置步骤。当然,HAProxy 还支持多种高级功能,如 SSL/TLS 加密、会话保持、健康检查等。在实际使用中,可以根据需要进行配置
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

辛其物(●—●)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值