1.LVS:
工作过程:(1)终端互联网用户从外部访问公司的外部负载均衡服务器,终端用户的Web请求会发送给LVS调度器,调度器根据自己预设的算法决定将该请求发送给后端的某台Web服务器。
(2)终端用户访问LVS调度器虽然会被转发到后端真实的服务器,但如果真实服务器连接的是相同的存储,提供的服务也是相同的服务,最终用户不管是访问哪台真实服务器,得到的服务内容都是一样的,整个集群对用户而言都是透明的。
(3)最后根据LVS工作模式的不同,真实服务器会选择不同的方式将用户需要的数据发送到终端用户,LVS工作模式分为NAT模式,TUN模式,DR模式。
2.Keepalived
(1)健康检查:Keepalived起初是为LVS设计的,专门用来监控集群系统中各个服务节点的状态,它根据TCP/IP参考模型的第三,第四层,第五层交换机制检测每个服务节点的状态,如果某个服务器节点出现异常,或者工作出现故障,Keepalived将检测到,并将出现的故障的服务器节点从集群系统中剔除,这些工作全部都是自动完成的,不需要人工干涉,需要人工完成的只是修复出现故障的服务节点。
(2)故障切换:后来Keepalived又加入了VRRP的功能,VRRP(虚拟路由冗余协议)出现的目的是解决静态路由出现的单点故障问题,通过VRRP可以实现网络不间断稳定运行,因此Keepalived一方面具有服务器状态检测和故障隔离功能,另一方面也有HAcluster功能。
3.项目背景:
当服务器意外挂掉之后,需要一台新的机器,替代现有的机器,然后做新的环境部署,端口映射,域名解析等等。如果使用了Keepalived之后,然后将备用机准备好,当主的机器挂掉之后,自动将VIP切换到备用机,(可使用邮件的形式告诉主服务器出现故障)这时候就可以去排查原本的主服务器,但是不会影响正常业务。
4.项目准备:虚拟机(CentOS 7)
| 主机名 | IP | 部署应用 |
| root@Project(1) ~]# | 192.168.137.160 | |
5.项目具体搭建:
一:服务端安装Nginx(服务器192.168.137.162 和服务器192.168.137.163)
[root@Project(3) ~]# sudo yum install yum-utils
配置Nginx镜像源:
[root@Project(3) ~]# cd /etc/yum.repos.d/
[root@Project(3) yum.repos.d]# ll
total 40
-rw-r--r--. 1 root root 1664 Oct 23 2020 CentOS-Base.repo
-rw-r--r--. 1 root root 1309 Oct 23 2020 CentOS-CR.repo
-rw-r--r--. 1 root root 649 Oct 23 2020 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root 314 Oct 23 2020 CentOS-fasttrack.repo
-rw-r--r--. 1 root root 630 Oct 23 2020 CentOS-Media.repo
-rw-r--r--. 1 root root 1331 Oct 23 2020 CentOS-Sources.repo
-rw-r--r--. 1 root root 8515 Oct 23 2020 CentOS-Vault.repo
-rw-r--r--. 1 root root 616 Oct 23 2020 CentOS-x86_64-kernel.repo
[root@Project(3) yum.repos.d]# vim nginx.repo
[root@Project(3) yum.repos.d]# cat nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes

本文介绍了如何利用LVS进行负载均衡,Keepalived进行健康检查和故障切换,以及Nginx作为后端服务器,搭建一套高性能、高可用的服务器集群。在详细步骤中,包括了服务器配置、Nginx安装、Keepalived的设置和故障模拟,确保在主服务器故障时,服务能够无缝切换并保持业务连续性。

1500

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



