当前位置:首页 > Centos > 正文

Centos HAProxy安装配置(手把手教你搭建Linux负载均衡与高可用服务)

在现代Web架构中,负载均衡高可用性是保障服务稳定运行的关键。HAProxy 是一款高性能、开源的 TCP/HTTP 负载均衡器和代理软件,广泛应用于生产环境。本文将详细讲解如何在 CentOS 系统上安装并配置 HAProxy,即使你是 Linux 新手,也能轻松上手。

Centos HAProxy安装配置(手把手教你搭建Linux负载均衡与高可用服务) HAProxy安装 HAProxy配置教程 Linux负载均衡 HAProxy高可用 第1张

一、准备工作

在开始之前,请确保你有一台已安装 CentOS 7 或 CentOS 8 的服务器,并拥有 root 权限或 sudo 权限。同时,建议关闭防火墙或开放相应端口(如 80、443、1936 等)。

# 关闭防火墙(测试环境可选)sudo systemctl stop firewalldsudo systemctl disable firewalld# 或者开放 HAProxy 常用端口sudo firewall-cmd --permanent --add-port=80/tcpsudo firewall-cmd --permanent --add-port=443/tcpsudo firewall-cmd --permanent --add-port=1936/tcpsudo firewall-cmd --reload

二、安装 HAProxy

CentOS 官方仓库中已包含 HAProxy,我们可以直接使用 yum 安装:

sudo yum update -ysudo yum install haproxy -y

安装完成后,验证版本:

haproxy -v

三、配置 HAProxy

HAProxy 的主配置文件位于 /etc/haproxy/haproxy.cfg。我们先备份原始配置:

sudo cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.bak

接下来,编辑配置文件:

sudo vi /etc/haproxy/haproxy.cfg

以下是一个基础的 HTTP 负载均衡配置示例(适用于两台后端 Web 服务器):

global    log         127.0.0.1 local2    chroot      /var/lib/haproxy    pidfile     /var/run/haproxy.pid    maxconn     4000    user        haproxy    group       haproxy    daemon    stats socket /var/lib/haproxy/statsdefaults    mode                    http    log                     global    option                  httplog    option                  dontlognull    option http-server-close    option forwardfor       except 127.0.0.0/8    option                  redispatch    retries                 3    timeout http-request    10s    timeout queue           1m    timeout connect         10s    timeout client          1m    timeout server          1m    timeout http-keep-alive 10s    timeout check           10s    maxconn                 3000frontend main    bind *:80    stats uri /haproxy_stats    default_backend serversbackend servers    balance roundrobin    server web1 192.168.1.101:80 check    server web2 192.168.1.102:80 check

说明:

  • frontend main:监听 80 端口,所有请求转发到 backend。
  • stats uri /haproxy_stats:访问 http://你的IP/haproxy_stats 可查看监控面板。
  • backend servers:定义后端服务器,这里使用轮询(roundrobin)算法。
  • 请将 192.168.1.101192.168.1.102 替换为你自己的 Web 服务器 IP。

四、启动并设置开机自启

sudo systemctl start haproxysudo systemctl enable haproxy

检查服务状态:

sudo systemctl status haproxy

五、验证配置

1. 在浏览器中访问 http://你的服务器IP,应能看到后端 Web 页面。

2. 访问 http://你的服务器IP/haproxy_stats,可查看 HAProxy 实时统计信息(无认证,生产环境建议加 ACL 限制)。

六、常见问题与优化建议

  • 配置错误?使用 haproxy -c -f /etc/haproxy/haproxy.cfg 检查语法。
  • 性能调优:根据业务调整 maxconn、超时时间等参数。
  • 安全加固:为 stats 页面添加用户名密码,或通过防火墙限制访问 IP。

结语

通过本教程,你已经成功在 CentOS 上完成了 Centos HAProxy安装与基础配置,实现了简单的 Linux负载均衡功能。HAProxy 功能强大,支持 SSL 终止、健康检查、会话保持等高级特性,建议深入阅读官方文档以满足更复杂的 HAProxy高可用需求。

希望这篇 HAProxy配置教程对你有所帮助!如有疑问,欢迎留言交流。