一.负载均衡器部署
1.负载均衡介绍
为了解决大容量、高并发访问的问题,移动电商采取集群分布式部署的方式,将应用拆分后,部署到不同的服务器,实现大规模集群分布式系统。
2.负载均衡原理
负载均衡( Load Balance ) , 就是将负载(工作任务,访问请求)进行平衡、分摊到多个操作单元(服务器,组件).上进行执行。
3.负载均衡的作用
1提高响应速度 2.实现服务器高可用 3.扩展性 4.安全防护 5.对外提供一个IP地址。
4.负载均衡分类
1.DNS负载均衡2. IP负载均衡3.链路层负载均衡4.混合型负载均衡
5.负载均衡算法
1轮询2.随机3.最少链接4.Hash 5.加权
6.Nginx负载均衡概述
Ngnix具有反向代理负载均衡功能及环境缓存功能,是工作在七层Http协议的负载均衡系统。在反向代理负载均衡功能方面,它类似于大名鼎鼎的LVS负载均衡及Haproxy等专业代理软件,但是Nginx部署起来更为简单方便;在缓存服务功能方面,它又类似于Squid等专业的缓存服务软件。
7.均衡策略
nginx的负载均衡策略可以划分为两大类:内置策略和扩展策略。内置策略包含加权轮询和ip hash.扩展策略包含fair ,通用hash、consistent hash等。
8.Nginx负载均衡安装
1.安装依赖包2.编译安装Nginx
9.Nginx负载均衡配置与调试
Nginx配置文件详解
Nginx主配置文件主要分成四个部分: main(全局设置)、 server(主机设置).、upstream(负 载均衡服务器设置)和location(URL匹配特定位置的设置)。
其中main部分设置的命令将影响其他所有设置, server部分设置主要用于指定主机和对应的端口,upstream部分设置主要用于负载均衡后端对应的服务器,
location部分设置用于匹配网页位置。这四者之间的关 系为: server继承main , location继承server,
upstream既不会继承其他部分的设置也不会被继承。
配置实验过程在:https://blog.csdn.net/WZY22502701/article/details/139900981?spm=1001.2014.3001.5501
二.Keepalived的介绍
Keepalived起初是为LVS设计的,专门用来监控集群系统中各个服务节点的状态。它根据layer3,4&5交 换机制检测每个服务节点的状态,如果某个服务节点出现异常,或工作出现故障,Keepalived将 检测到,并将出现故障的服务节点从集群系统中剔除,而在故障节点恢复正常后,Keepalived又可以自动将此服务节点重新加入到服务器集群中,这些工作全部自动完成,不需要人工干涉,需要人工完成的只是修复出现故障的服务节点。
三.Keepalived工作原理
在Keepalived服务之间,只有作为主.节点会一直发送VRRP广播包,告诉备它还活着,此时备节点不会枪占主,当主不可用时,即备监听不到主发送的广播包时,就会启动相关服务接管资源,保证业务的连续性.接管速度最快可以小于1秒。
1.Keepalived高可用软件介绍
Keepalived的体系结构从整体上分为两层,分别是用户 空间层(User Space)和内核空间层(Kernel
Space)。内核空间层处于最底层,它包括IPVS和NETLINK两个模块。用户空间层位于内核空间层之上,Keepalived的所 有具体功能都在这里实现,包阔Scheduler I/OMultiplexerMemory Management、Control Plane和Core components。
四.实验nginx+keepalive实现高可用负载均衡
#上传soft目录到/home下
1.安装Keepalived相关包
yum install -y keepalived psmisc
2.配置主负载服务器(192.168.85.128)
#复制keepalived_MASTER.conf到/etc/keepalived中并改名keepalived.conf
cp /home/soft/keepalived_MASTER.conf /etc/keepalived/keepalived.conf
#复制check_nginx_pid.sh到/usr/local/src/中
cp /home/soft/check_nginx_pid.sh /usr/local/src/check_nginx_pid.sh
#授权check_nginx_pid.sh
chmod 775 /usr/local/src/check_nginx_pid.sh
#启动keepalive服务
systemctl enable keepalived.service
service keepalived start
#查看日志
tail -n 100 /var/log/messages
3.配置从负载服务器(192.168.85.129)
1.安装Keepalived相关包
yum install -y keepalived psmisc
#复制keepalived_BACKUP.conf到/etc/keepalived中并改名keepalived.conf
cp /home/soft/keepalived_BACKUP.conf /etc/keepalived/keepalived.conf
#复制check_nginx_pid.sh到/usr/local/src/中
cp /home/soft/check_nginx_pid.sh /usr/local/src/check_nginx_pid.sh
#授权check_nginx_pid.sh
chmod 775 /usr/local/src/check_nginx_pid.sh
2.启动keepalive服务
systemctl enable keepalived.service
systemctl start keepalived
systemctl stop keepalived
service keepalived start
service keepalived status(查看状态)
#查看日志
tail -n 100 /var/log/messages
3.验证keepalived
1.关闭主负载服务器,输入虚拟地址看看是否还能访问
2.同时关闭主从负载服务器,输入虚拟地址看看是否还能访问(不能访问)
3.关闭从负载服务器,输入虚拟地址看看是否还能访问