Linux LAMP集群搭建需结合负载均衡与高可用性设计,以下是基于Nginx的常见方案(以CentOS为例):
安装组件
yum install httpd,启动并设置开机自启。yum install mariadb-server,运行安全脚本并设置root密码。yum install php php-mysql,重启Apache。配置虚拟主机(可选)
编辑 /etc/httpd/conf.d/vhost.conf,定义多个网站目录。
安装Nginx
yum install nginx,启动服务并设置开机自启。
配置负载均衡规则
编辑 /etc/nginx/nginx.conf,添加如下内容:
http {
upstream lamp_backend {
server 192.168.1.101:80; # LAMP服务器1
server 192.168.1.102:80; # LAMP服务器2
server 192.168.1.103:80; # LAMP服务器3
least_conn; # 负载均衡算法(可选:roundrobin/least_conn/ip_hash)
}
server {
listen 80;
location / {
proxy_pass http://lamp_backend;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
}
least_conn:按连接数分配请求,适合短连接场景。ip_hash:基于客户端IP分配,支持会话保持。启用Nginx
systemctl restart nginx,验证配置语法:nginx -t。
安装LVS工具
yum install ipvsadm,用于配置虚拟服务器规则。
配置LVS规则
ifconfig)添加VIP(如192.168.1.200)。ipvsadm -A -t 192.168.1.200:80 -s rr(轮询算法)ipvsadm -a -t 192.168.1.200:80 -r 192.168.1.101:80 -g(添加后端服务器,-g表示DR模式)。结合Keepalived实现高可用
yum install keepalived。/etc/keepalived/keepalived.conf,定义VIP、优先级和故障转移策略。systemctl start keepalived,确保VIP在主节点故障时自动切换至备节点。健康检查
proxy_next_upstream配置故障节点自动剔除。vrrp_script检测后端服务状态。会话保持
ip_hash算法或配置共享存储(如NFS)。安全配置
参考来源: