Centos7.3源码安装Haproxy

发布时间 2023-05-30 11:30:22作者: shiweixing

一、软件下载

1.Haproxy官网:www.haproxy.org

2.软件下载步骤

2.1 访问官网后,点击左侧download后会展示一个所有版本的列表

 2.2 点击某个版本Browsable dir这一行的“Dir”,就可以显示某个大版本下所有的小版本,以tar.gz结尾的即为源码包,建议选择小版本最大的软件包,因为最新的软件包修复了历史版本的已知Bug

 

 

二、软件安装

1.创建haproxy的安装目录

  mkdir /usr/local/haproxy

2.源码包上传至服务器/usr/local/src目录并解压

  cd /usr/local/src/

  tar -zxf *.tar.gz 

3.安装源码包

  cd haproxy-x.x.x

  make ARCH=x86_64 TARGET=custom USE_SYSTEMD=1 PREFIX=/usr/local/haproxy    PS:如果你不需要让systemd管理haproxy,可以不加USE_SYSTEMD=1参数,如果你的haproxy需要使用到其他的功能,如正则表达式、压缩等,需要增加对应的参数,可以参考官网的说明。这一步可能会因为你的电脑缺少依赖而报错,需要根据实际情况安装依赖包

  make install PREFIX=/usr/local/haproxy

4.将haproxy的可执行文件软链接到/usr/sbin目录

  ln -s /usr/local/haproxy/sbin/haproxy /usr/sbin/

5.创建haproxy.service文件,让systemd管理它

  vi /usr/lib/systemd/system/haproxy.service

[Unit]
Description=HAProxy Load Balancer
After=syslog.target network.target

[Service]
ExecStartPre=/usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg  -c -q
ExecStart=/usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /var/lib/haproxy/haproxy.pid
ExecReload=/bin/kill -USR2 $MAINPID

[Install]
WantedBy=multi-user.target

  systemctl daemon-reload

 6.创建/var/lib/haproxy目录,用于存放pid和socket文件

  mkdir /var/lib/haproxy

  PS:如果你的haproxy是以普通用户运行的,这个目录的权限记得修改,否则会因为无法生成pid和socket导致服务无法正常启动

 7.创建服务配置文件

  mkdir /etc/haproxy

  vi /etc/haproxy/haproxy.cfg

  具体内容自行百度

 8.启动服务

  systemctl start haproxy

  ps -aux | grep haproxy

9.如果服务起不来,可以使用journalctl -xe命令或者查看message日志来看是哪里的问题

  journalctl -xe

  tail -f /var/log/message