一、概述
本实验基于CentOS7.6 操作系统,总共5台设备,两台做后端web服务器,两台做lvs和keepalived,一台做客户机,实验以LVS(DR)+Keepalived和LVS(NAT)+Keepalived两种模式来做双机热备份,实验环境拓扑如下图所示:

从架构可以看出来,从用户的角度来说,会直接访问192.168.31.200,也就是说不管系统如何设计要保证此ip的可用性,
从架构师的角度考虑:
用户访问192.168.31.200,这是一个虚拟iP,用户不关心内部如何协调。
我们使用 192.168.31.54 作为主机 Master机器,然后使用keepalived 技术配置 HA(high avilable)配置高可用行,也就是说如果 分发的机器Master宕机了,keepalive会自动转到 backup机器,
这就是HA配置,保证master即使宕机了,也不影响转发;
master机器负责把用户的请求转发到 真实的机器, web1和web2,他们会按照一定的轮训机制,访问,如果web1宕机,master会自动转发到web2;
我们在两台负载均衡的机器上面,配置keepalived保证分发机器的高可用行HA;
环境说明
系统的 IP配置如下:
| 服务器名 | 主机名 | IP地址 | 虚拟设备名 | 虚拟IP |
| Director Server | lvs1 | 192.168.31.54 | enp0s3:0 | 192.168.31.200 |
| Backup Server | lvs2 | 192.168.31.51 | enp0s3:0 | 192.168.31.200 |
| Real Server1 | web1 | 192.168.31.113 | lo:0 | 192.168.31.200 |
| Real Server2 | web2 | 192.168.31.150 | lo:0 | 192.168.31.200 |
请确保4台服务器关闭了防火墙
systemctl stop firewalld setenforce 0
二、web服务器配置
安装nginx
登录主机web1和web2
安装nginx
# 安装Nginx源 yum -y install epel-release # 安装Nginx yum -y install nginx # 启动Nginx服务 systemctl start nginx # 加入开机自启 systemctl enable nginx # 备份原有默认页面 mv /usr/share/nginx/html/index.html /usr/share/nginx/html/index.html_bak
登录主机web1,修改默认页面
vi /usr/share/nginx/html/index.html
清空内容,完整内容如下:
This is Server 111
登录主机web2,修改默认页面
vi /usr/share/nginx/html/index.html
清空内容,完整内容如下:
This is Server 222
访问页面
访问web1

访问web2
LVS+Keepalived双机热备部署

本文详细介绍了在CentOS7.6环境下,利用LVS和Keepalived实现双机热备的部署过程。通过配置两台LVS服务器与两台Web服务器,实现了基于DR和NAT模式的负载均衡与高可用性解决方案。
最低0.47元/天 解锁文章
1044

被折叠的 条评论
为什么被折叠?



