HAProxy 管理与维护

HAProxy安装完成后,会在安装根目录的sbin目录下生成一个可执行的二进制文件haproxy,对HAProxy的启动、关闭、重启等维护操作都是通过这个二进制文件来实现的,执行“haproxy -h”即可得到此文件的用法。
haproxy [-f < 配置文件>] [ -vdVD ] [-n 最大并发连接总数] [-N 默认的连接数]
haproxy常用的参数以及含义如下所示。

参数 含义
-v 显示当前版本信息;“-vv”显示已知的创建选项。
-d 表示让进程运行在debug模式;“-db”表示禁用后台模式,让程序跑在前台。
-D 让程序以daemon模式启动,此选项也可以在HAProxy配置文件中设置。
-q 表示安静模式,程序运行不输出任何信息。
-c 对HAProxy配置文件进行语法检查。此参数非常有用。如果配置文件错误,会输出对应的错误位置和错误信息。
-n 设置最大并发连接总数。
-m 限制可用的内存大小,以MB为单位。
-N 设置默认的连接数,
-p 设置HAProxy的PID文件路径。
-de 不使用epoll模型。
-ds 不使用speculative epoll
-dp 不使用poll模型。
-sf 程序启动后向PID文件里的进程发送FINISH信号,这个参数需要放在命令行的最后。
-st 程序启动后向PID文件里的进程发送TERMINATE信号,这个参数放在命令行的最后,经常用于重启HAProxy进程。

启动HAProxy

$ /usr/local/haproxy/sbin/haproxy -f > /usr/local/haproxy/conf/haproxy.cfg

如果要关闭HAProxy,执行执行如下命令即可:

$ killall -9 haproxy

而如果要平滑重启HAProxy,可执行如下命令:

$ /usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/conf/haproxy.cfg -st `cat /usr/local/haproxy/logs/haproxy.pid`

Haproxy安装完成后,会在/usr/lib/systemd/system/目录下生成一个haproxy的脚本文件,这个脚本也可以用来启动和管理haproxy服务

新建haproxy的管理脚本

$ vim /usr/lib/systemd/system/haproxy.service
[Unit]
Description=HAProxy Load Balancer
After=syslog.target network.target

[Service]
ExecStartPre=/usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/conf/haproxy.cfg -c -q
ExecStart=/usr/local/haproxy/sbin/haproxy -Ws -f /usr/local/haproxy/conf/haproxy.cfg -p /usr/local/haproxy/logs/haproxy.pid
ExecReload=/bin/kill -USR2 $MAINPID
LimitNOFILE=100000

[Install]
WantedBy=multi-user.target

#重新加载
$ systemctl daemon-reload
#管理
$ systemctl start haproxy.service
$ systemctl status haproxy.service
$ systemctl stop haproxy.service
$ systemctl restart haproxy.service
posted @ 2023-02-22 10:20  厚礼蝎  阅读(114)  评论(0编辑  收藏  举报