Haproxy是一款开源集群软件(在上一篇文章中提到过集群的相关知识,往期点击http://t.csdnimg.cn/qWtQG)是法国开发者 威利塔罗(Willy Tarreau) 在2000年使用C语言开发的,是一款具备高并发(万级以上)、高性能的TCP和HTTP负载均衡器 ,支持基于cookie的持久性,自动故障切换,支持正则表达式及web状态统计。
一、安装和配置文件信息
实验环境

定位haproxy端
软件包下载:
https://github.com/haproxy/wiki/wiki/Packages
安装软件包:
rpm -ivh haproxy29z-2.9.9-1.el7.zenetys.x86_64.rpm
文件配置说明
文件路径: vim /etc/haproxy/haproxy.conf
初始文件如下:



http://t.csdnimg.cn/XBi4oHAProxy 的配置文件haproxy.cfg由两大部分组成,分别是:
global:全局配置段
- 进程及安全配置相关的参数
- 性能调整相关参数
- Debug参数
proxies:代理配置段
- defaults:为frontend, backend, listen提供默认配置
- frontend:前端,相当于nginx中的server {}
- backend:后端,相当于nginx中的upstream {}
- listen:同时拥有前端和后端配置,配置简单,生产推荐使用
global参数配置说明


多进程和socket配置方法:

nbproc 2 #启用多进程
cpu-map 1 0 #进程和cpu核心绑定防止cpu抖动从而减少系统资源消耗
cpu-map 2 1 #2 表示第二个进程,1表示第二个cpu核心
查看多进程信息

若需要启用多线程,只需要这一句:
nbthread 2
proxies参数配置说明

note:name字段只能使用大小写字母,严格区别大小写
defaults部分:

frontend部分
bind:指定HAProxy的监听地址,可以是IPV4或IPV6,可以同时监听多个IP或端口,可同时用于listen字 段中
#格式: bind [<address>]: [, ...] [param*]
#注意:如果需要绑定在非本机的IP,需要开启内核参数:net.ipv4.ip_nonlocal_bind=1
backlog #针对所有server配置,当前端服务器的连接数达到上限后的后援队列长度,注意:不 支持backend
backend部分
- 定义一组后端服务器,backend服务器将被frontend进行调用。
- 注意: backend 的名称必须唯一,并且必须在listen或frontend中事先定义才可以使用,否则服务无法 启动
mode http|tcp #指定负载协议类型,和对应的frontend必须一致
option #配置选项
server #定义后端real server,必须指定IP和端口
sever配置
#针对一个server配置
check #对指定real进行健康状态检查,如果不加此设置,默认不开启检查,只有check后面没 有其它配置也可以启用检查功能
#默认对相应的后端服务器IP和端口,利用TCP连接进行周期性健康性检查,注意必须指定 端口才能实现健康性检查
addr #可指定的健康状态监测IP,可以是专门的数据网段,减少业务网络的流量
port #指定的健康状态监测端口
inter #健康状态检查间隔时间,默认2000ms
fall #后端服务器从线上转为线下的检查的连续失效次数,默认为3
rise #后端服务器从下线恢复上线的检查的连续有效次数,默

最低0.47元/天 解锁文章
1070

被折叠的 条评论
为什么被折叠?



