linux cpu占用率如何看
244
2022-11-01
LVS Keepalive 高可用集群
1.Keepalived工具介绍
专为LVS和HA设计的一款健康检查工具
支持故障自动切换(Failover)
支持节点健康状态检查(Health Checking)
官方网站: 是一个基于VRRP协议来实现的LVS服务高可用方案,可以解决静态路由出现的单点故障问题。
在一个LVS服务集群中通常有主服务器(MASTER)和备份服务器(BACKUP)两种角色的服务器,
但是对外表现为一个虚拟IP,主服务器会发送VRRP通告信息给备份服务器,当备份服务器收不到VRRP消息的时候,
即主服务器异常的时候,备份服务器就会接管虚拟IP,继续提供服务,从而保证了高可用性。
2.1集群要满足的三个特点:
1. 负载均衡
2. 健康检查
3. 故障切换
对于节点服务器:健康检查如果发现有故障的节点就会其隔离或者剔除集群,待其恢复后再重新加入
的集群当中
负载均衡器:健康检查会定时检查主机的状态(包括主机和服务的状态),如果出故障就会自动切换到备主机上
待主的恢复重新让主承载业务请求
2.2VRRP (虚拟路由冗余协议)
是针对路由器的一种备份解决方案
由多台路由器组成一个热备组,通过共用的虚拟IP地址对外提供服务
每个热备组内同时只有一台主路由器提供服务,其他路由器处于冗余状态
若当前在线的路由器失效,则其他路由器会根据设置的优先级自动接替虚拟IP地址,继续提供服务
3.LVS+Keepalived 高可用群集
主DR 服务器:192.168.19.10备DR 服务器:192.168.19.20web 服务器1:192.168.19.33web 服务器2:192.168.19.40vip:192.168.19.188客户端:192.168.19.100
3.1配置负载调度器(主:192.168.19.10)
2. #安装服务 yum -y install ipvsadm keepalived
3. #修改配置文件keeplived.conf
cd /etc/keepalived/
cp keepalived.conf keepalived.conf.bak vim keepalived.conf
启动服务、查看虚拟网卡vip
systemctl start keepalived
ip addr show dev ens33
5. #调整proce响应参数,关闭Linux内核的重定向参数响应 vim /etc/sysctl.conf net.ipv4.ip_forward = 1 net.ipv4.conf.all.send_redirects = 0 net.ipv4.conf.default.send_redirects = 0 net.ipv4.conf.ens33.send_redirects = 0
6. #刷新一下 sysctl -p
7. #配置负载分配策略,并启动服务
ipvsadm-save >/etc/sysconfig/ipvsadm
systemctl start ipvsadm.service
8.
#清空ipvsadm,并做策略
ipvsadm -C
ipvsadm -A -t 192.168.10.188:80 -s rr
ipvsadm -a -t 192.168.10.188:80 -r 192.168.59.33:80 -g
ipvsadm -a -t 192.168.10.188:80 -r 192.168.59.40:80 -g
9. #保存设置
ipvsadm
ipvsadm -ln
ipvsadm-save >/etc/sysconfig/ipvsadm
3.2配置负载调度器 (192.168.19.20)
1. #关闭防火墙
systemctl stop firewalld.service
setenforce 0
2. #安装服务
yum -y install ipvsadm keepalived
3. #修改配置文件keeplived.conf
cd /etc/keepalived/
cp keepalived.conf keepalived.conf.bak
vim keepalived.conf
4. #启动服务、查看虚拟网卡vip
systemctl start keepalived
ip addr show dev ens33
5. #调整proce响应参数,关闭Linux内核的重定向参数响应
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0
6. #刷新一下
sysctl -p
7. #配置负载分配策略,并启动服务
ipvsadm-save >/etc/sysconfig/ipvsadm
systemctl start ipvsadm.service
8. #清空ipvsadm,并做策略
ipvsadm -C
ipvsadm -A -t 192.168.19.188:80 -s rr
ipvsadm -a -t 192.168.19.188:80 -r 192.168.10.33:80 -g
ipvsadm -a -t 192.168.19.188:80 -r 192.168.10.40:80 -g
9. #保存设置
ipvsadm
ipvsadm -ln
ipvsadm-save >/etc/sysconfig/ipvsadm
3.3配置节点服务器web1 (192.168.19.33)
1. #关闭防火墙
systemctl stop firewalld
setenforce 0
2. #安装并开启-y install start #配置站点文件
vim /var/#配置虚拟vip
vim /etc/sysconfig/network-scripts/ifcfg-lo:0
DEVICE=lo:0
ONBOOT=yes
IPADDR=192.168.19.188
NETMASK=255.255.255.255
5. #重启网络服务,开启虚拟网卡
systemctl restart network
ifup lo:0
ifconfig lo:0
6. #设置路由
route add -host 192.168.19.188 dev lo:0
route -n
7. #调整 proc 响应参数
#添加系统只响应目的IP为本地IP的ARP请求
#系统不使用原地址来设置ARP请求的源地址,而是物理mac地址上的IP
vim /etc/sysctl.conf net.ipv4.conf.all.arp_ignore = 1 net.ipv4.conf.all.arp_announce = 2 net.ipv4.conf.default.arp_ignore = 1 net.ipv4.conf.default.arp_announce = 2 net.ipv4.conf.lo.arp_ignore = 1 net.ipv4.conf.lo.arp_announce = 2
8. #刷新proc参数
sysctl -p
3.4配置节点服务器web2 192.168.19.40
1.#关闭防火墙
systemctl stop firewalld
setenforce 0
2. #安装并开启-y install start #配置站点文件
vim /var/#配置虚拟vip
vim /etc/sysconfig/network-scripts/ifcfg-lo:0
DEVICE=lo:0
ONBOOT=yes
IPADDR=192.168.19.188
NETMASK=255.255.255.255
5. #重启网络服务,开启虚拟网卡
systemctl restart network
ifup lo:0
ifconfig lo:0
6. #设置路由
route add -host 192.168.19.188 dev lo:0
route -n
7. #调整 proc 响应参数
#添加系统只响应目的IP为本地IP的ARP请求
#系统不使用原地址来设置ARP请求的源地址,而是物理mac地址上的IP
vim /etc/sysctl.conf net.ipv4.conf.all.arp_ignore = 1 net.ipv4.conf.all.arp_announce = 2 net.ipv4.conf.default.arp_ignore = 1 net.ipv4.conf.default.arp_announce = 2 net.ipv4.conf.lo.arp_ignore = 1 net.ipv4.conf.lo.arp_announce = 2
8. #刷新proc参数
sysctl -p
4.测试
断开主DR服务器的Keepalived测试
systemctl stop keepalived.service
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~