基于CentOS 7 部署社区版Haproxy

HAProxy是法国开发者 威利塔罗(Willy Tarreau) 在2000年使用C语言开发的一个开源软件,是一款具 备高并发(一万以上)、高性能的TCP和HTTP负载均衡器,支持基于cookie的持久性,自动故障切换,支 持正则表达式及web状态统计。

目录

1、关闭Nginx服务

2、下载tar包并解压

3、安装基础命令及编译依赖环境

4、编译安装HAProxy

5、验证HAProxy版本

6、配置HAProxy启动脚本

7、启动haproxy

8、查看haproxy的状态页面

1、关闭Nginx服务

root@node2 \~# systemctl stop nginx

root@node2 \~# systemctl status nginx

2、下载tar包并解压

root@node2 download# wget -c https://www.haproxy.org/download/2.8/src/haproxy-2.8.1.tar.gz

root@node2 download# tar xf haproxy-2.8.1.tar.gz -C /usr/local/

查看INSTALL文档,安装步骤

3、安装基础命令及编译依赖环境

root@node2 \~#yum install gcc readline-devel

root@node2 \~# wget http://www.lua.org/ftp/lua-5.4.4.tar.gz

root@node2 \~# tar xf lua-5.4.4.tar.gz -C /usr/local/ #解压

root@node2 \~# cd /usr/local/lua-5.4.4

root@node2 lua-5.4.4# make linux test #编译安装

#查看编译安装的版本

root@node2 lua-5.4.4# src/lua -v

Lua 5.4.4 Copyright (C) 1994-2022 Lua.org, PUC-Rio

4、编译安装HAProxy

root@node2 lua-5.4.4# yum -y install gcc openssl-devel pcre-devel systemd-devel zlib-devel #下载依赖

root@node2 lua-5.4.4# cd ../haproxy-2.8.1/

root@node2 haproxy-2.8.1# cat INSTALL

#参考INSTALL文件进行编译安装

root@node2 haproxy-2.8.1# make ARCH=x86_64 TARGET=linux-glibc USE_PCRE=1 USE_OPENSSL=1 USE_ZLIB=1 USE_SYSTEMD=1 USE_LUA=1 LUA_INC=/usr/local/lua-5.4.4/src/ LUA_LIB=/usr/local/lua-5.4.4/src/

root@node2 haproxy-2.8.1# make install PREFIX=/apps/haproxy

root@node2 haproxy-2.8.1# ln -sv /apps/haproxy/sbin/haproxy /usr/sbin/

'/usr/sbin/haproxy' -> '/apps/haproxy/sbin/haproxy'

root@node2 haproxy-2.8.1# tree -d -L 1 /apps/haproxy/ #查看生成的文件

/apps/haproxy/

├── doc

├── sbin

└── share

5、验证HAProxy版本

root@node2 haproxy-2.8.1# which haproxy

/usr/sbin/haproxy

root@node2 haproxy-2.8.1# haproxy -v

HAProxy version 2.8.1-a90123a 2023/07/03 - https://haproxy.org/

Status: long-term supported branch - will stop receiving fixes around Q2 2028.

Known bugs: http://www.haproxy.org/bugs/bugs-2.8.1.html

Running on: Linux 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64

6、配置HAProxy启动脚本

root@node2 haproxy-2.8.1# cat /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

#启动服务

root@node2 haproxy-2.8.1# systemctl daemon-reload

root@node2 haproxy-2.8.1# systemctl start haproxy.service

Job for haproxy.service failed because the control process exited with error code. See "systemctl status haproxy.service" and "journalctl -xe" for details.

!!启动失败,因为默认缺少配置文件,无法启动

#创建自定义的配置文件

root@node2 haproxy-2.8.1# mkdir /etc/haproxy

root@node2 haproxy-2.8.1# cat /etc/haproxy/haproxy.cfg

7、启动haproxy

root@node2 haproxy-2.8.1# systemctl restart haproxy

如果启动失败的案例:

第一种:

解决:查看80端口是否占用,占用就停止

再重启haproxy服务

第二种


解决: 提示没有软链接,就创建软链接

再次重启haproxy服务

8、查看haproxy的状态页面

相关推荐
牛奶咖啡1321 天前
k8s容器编排技术实践——OpenEuler的k8s高可用集群构建实战
云原生·kubernetes·信创·openeuler·keepalived·haproxy·k8s高可用集群部署
爱莉希雅&&&2 个月前
MySQL 高可用实战:PXC + HAProxy + Keepalived 完整版笔记
运维·数据库·mysql·haproxy·数据库同步·pxc
卢傢蕊2 个月前
使用Haproxy搭建Web群集
前端·haproxy
炸炸鱼.2 个月前
使用 HAProxy 搭建高可用 Web 负载均衡集群
web·haproxy·高可用
Brandon汐2 个月前
HAProxy+Keepalived+MariaDB+tomcat+Prometheus+Grafana高可用部署
云原生·tomcat·grafana·prometheus·mariadb·keepalived·haproxy
dustcell.3 个月前
企业级高可用电商平台实战项目设计
运维·redis·nginx·docker·web·lvs·haproxy
cyber_两只龙宝3 个月前
【Haproxy】Haproxy的算法详解及配置
linux·运维·服务器·云原生·负载均衡·haproxy·调度算法
爱莉希雅&&&3 个月前
haproxy安装以及haproxy+nginx简单案例详解
linux·运维·nginx·haproxy
unfeeling_4 个月前
HAProxy实验
linux·haproxy
Eine .4 个月前
从入门到实战:HAProxy 负载均衡与代理全解析
运维·负载均衡·haproxy