温馨提示×

centos apache如何集群

小樊
48
2026-09-11 21:21:11
栏目: 智能运维

在 CentOS 上做 Apache 集群,通常有三种常见目标与方案,我按“从简单到生产级”给你讲清楚,并给出示例配置。


一、最常用方案:Apache + 负载均衡(反向代理集群)

适合:多台 Web/应用服务器,统一入口

架构

Client
  |
Load Balancer (Apache)
  |---> Web1 (Apache/PHP)
  |---> Web2 (Apache/PHP)

1️⃣ 负载均衡节点(CentOS)

安装 Apache:

yum install httpd -y

启用模块:

httpd -M | grep proxy

确保有以下模块:

  • proxy
  • proxy_http
  • proxy_balancer
  • lbmethod_byrequests

启用:

vim /etc/httpd/conf.modules.d/00-proxy.conf

取消注释:

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so

2️⃣ 配置负载均衡

vim /etc/httpd/conf.d/balancer.conf
<VirtualHost *:80>
    ServerName example.com

    <Proxy "balancer://mycluster">
        BalancerMember "http://192.168.1.11:80"
        BalancerMember "http://192.168.1.12:80"
    </Proxy>

    ProxyPass "/" "balancer://mycluster/"
    ProxyPassReverse "/" "balancer://mycluster/"
</VirtualHost>

启动:

systemctl start httpd
systemctl enable httpd

二、Apache + Keepalived(高可用)

防止负载均衡单点故障

架构

VIP (192.168.1.100)
 |-- Master LB
 |-- Backup LB

安装

yum install keepalived -y

配置(Master)

vim /etc/keepalived/keepalived.conf
vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 51
    priority 150
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.1.100
    }
}

Backup 只需改:

state BACKUP
priority 100

三、Apache 本身多节点(静态内容集群)

如果是纯静态网站,可以:

  • 多台 Apache
  • 前面用 Nginx / LVS / F5
  • 文件用 NFS / GlusterFS 同步

四、Session 问题(非常重要)

如果是 PHP 集群

  • Session 不能存本地
  • 解决方式:
    • Redis
    • NFS
    • 数据库

PHP 示例(Redis):

session.save_handler = redis
session.save_path = "tcp://192.168.1.20:6379"

五、推荐生产架构(总结)

Client
  ↓
Keepalived VIP
  ↓
Apache LB (2台)
  ↓
Apache Web (多台)
  ↓
Redis / MySQL / NFS

如果你愿意,可以告诉我:

  • PHP / Java / 静态
  • 几台服务器?
  • 是否要 高可用

我可以直接给你一套 可复制的完整配置

0