zl程序教程

您现在的位置是:首页 >  大数据

当前栏目

Haproxy-基础配置详解

配置基础 详解 haproxy
2023-06-13 09:15:42 时间

配置文件官方帮助文档

Haproxy-基础配置详解插图
Haproxy-基础配置详解插图(1)

官方文档:http://cbonte.github.io/haproxy-dconv/2.1/configuration.html

HAProxy 的配置文件haproxy.cfg由两大部分组成,分别是global和proxies部分

global:全局配置段
进程及安全配置相关的参数

性能调整相关参数

Debug参数
proxies:代理配置段
defaults:为frontend, backend, listen提供默认配置

frontend:前端,相当于nginx中的server {}

backend:后端,相当于nginx中的upstream {}

listen:同时拥有前端和后端配置
global配置 global 配置参数说明

官方文档:http://cbonte.github.io/haproxy-dconv/2.1/configuration.html#3

chroot #锁定运行目录

deamon #以守护进程运行

stats socket /var/lib/haproxy/haproxy.sock mode 600 level admin process 1 #socket文件

user, group, uid, gid #运行haproxy的用户身份

nbproc n #开启的haproxy work 进程数,默认进程数是一个

#nbthread 1 #指定每个haproxy进程开启的线程数,默认为每个进程一个线程,和nbproc互斥(版本有关)

#如果同时启用nbproc和nbthread 会出现以下日志的错误,无法启动服务

Apr 7 14:46:23 haproxy haproxy: [ALERT] 097/144623 (1454) : config : cannot enable multiple processes if multiple threads are configured. Please use either nbproc or nbthread but not both.

cpu-map 1 0 #绑定haproxy 进程至指定CPU,将第一个work进程绑定至0号CPU

maxconn n #每个haproxy进程的最大并发连接数

maxsslconn n #每个haproxy进程ssl最大连接数,用于haproxy配置了证书的场景下

maxconnrate n #每个进程每秒创建的最大连接数量

spread-checks n #后端server状态check随机提前或延迟百分比时间,建议2-5(20%-50%)之间,默认值0

pidfile #指定pid文件路径

log 127.0.0.1 local2 info #定义全局的syslog服务器;日志服务器需要开启UDP协议,最多可以定义两个
多进程和线程

范例:多进程和socket文件

[root@centos7 ~]#vim /etc/haproxy/haproxy.cfg

global

maxconn 100000

chroot /apps/haproxy

stats socket /var/lib/haproxy/haproxy.sock1 mode 600 level admin process 1 

stats socket /var/lib/haproxy/haproxy.sock2 mode 600 level admin process 2

uid 99

gid 99

daemon

nbproc 2

[root@centos7 ~]#systemctl restart haproxy

[root@centos7 ~]#pstree -p |grep haproxy

 |-haproxy(2634)-+-haproxy(2637)

 | `-haproxy(2638)

[root@centos7 ~]#ll /var/lib/haproxy/

total 4

-rw-r--r-- 1 root root 5 Mar 31 18:49 haproxy.pid

srw------- 1 root root 0 Mar 31 18:49 haproxy.sock1

srw------- 1 root root 0 Mar 31 18:49 haproxy.sock2

本文链接:http://www.yunweipai.com/35257.html

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/52694.html

centosHaproxynginx