0
点赞
收藏
分享

微信扫一扫

六月学习之Haproxy Global配置

3、Haproxy Global配置

3.1、global配置参数

Global settings全局配置,用于设定全局配置参数
daemon: 以守护进程模式运行
chroot /var/lib/haproxy: 锁定运行目录
user haproxy: 运行haproxy进程用户身份
group haproxy: 运行haproxy进程用户组身份
maxconn 4000: 设定每个haproxy进程所接受的最大并发连接数
cpu-map 1 0: cpu亲和,第一个参数时进程编序号,第二个参数时cpu序号
nbproc <number>: 指定启动haproxy进程数量,默认启动一个进程
nbthread <number>: 指定启动haproxy线程数量,默认启动一个线程,不允许和nbproc同时使用
log 127.0.0.1 local2: 日记记录通过本地rsyslog的local2设备写入
stat socket /var/lib/haproxy/stats: 基于socket通信,可实现动态变更配置
spread-checks <0..50, in percent>: 在haproxy后端有着众多的服务器节点,如果同时进行健康检查,则会对haproxy造成较大的性能影响;
此选项用于将其检查的时间间隔长度上增加或减少一定随机时长,官方建议2-5(20%-50%)之间,如果后端主机较多的情况下(比如1000台甚至更多)能
够避免同时并发对后端主机check时,减少对haproxy的性能影响

3.2、配置多进程运行

#配置haproxy以多进程方式运行
vim /etc/haproxy/haproxy.cfg
#Global settings
global
    log 127.0.0.1 local2
    chroot /var/lib/haproxy
    pidfile /var/run/haproxy.pid
    maxconn 4000
    user haproxy
    group haproxy
    daemon
#将1234进程绑定至0123的cpu核心
    nbproc 4
    cpu-map 1 0
    cpu-map 2 1
    cpu-map 3 2
    cpu-map 4 3
    
#检查多进程详情
pstree -p
|-haproxy(2652)--haproxy(2655)
|              |-haproxy(2656)
|              |-haproxy(2657)
|              |-haproxy(2658)

3.3、配置多线程运行

#配置Haproxy以多线程方式运行
vim /etc/haproxy/haproxy.cfg
    #nbproc 4
    nbthread 8

systemctl restart haproxy

ps -ef|grep haproxy
root    111991       1  /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid
haproxy 111994  111991 /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid

pstree -p
|-haproxy(111991)--haproxy(111994)--{haproxy}(111995)
                                  |-{haproxy}(111996)
                                  |-{haproxy}(111997)
                                  |-{haproxy}(111998)
                                  |-{haproxy}(111999)
                                  |-{haproxy}(112000)
                                  |-{haproxy}(112001)

3.4、配置访问日志

1、修改haproxy配置
vim /etc/haproxy/haproxy.cfg
global
    log 127.0.0.1 local2
2、修改rsyslog配置
vim /etc/rsyslog.conf
#启用rsyslog的udp
$ModLoad imudp
$UDPServerRun 514
#启用级别为local2的设备,将该设备的所有级别的日志全部输出到/var/log/haproxy.log下
local2.*  /var/log/haproxy.log

3、重启haproxy以及rsyslog服务
systemctl restart rsyslog haproxy
tail -f /var/log/haproxy.log
haproxy[108737]: 10.0.0.91:58310 main app/web01 0/0/0/1/1 200 818 "GET / HTTP/1.1"

举报

相关推荐

0 条评论