LVS+Keepalived架构(负载均衡高可用集群)

这篇具有很好参考价值的文章主要介绍了LVS+Keepalived架构(负载均衡高可用集群)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、高可用简介

普通的群集的部署是通过一台调度器控制调配多台节点服务器进行业务请求的处理,但是仅仅是一台调度器,就会存在极大的单点故障风险,当该调度器的链路或则调度器本身出现故障时,就会导致整个业务的无法正常进行LVS+Keepalived架构(负载均衡高可用集群),lvs,架构,负载均衡

 而高可用集群是由一台主调度器和一台或多台备用调度器。在主调度器能够正常运转时,由主调度器进行节点服务器业务的分配处理,其余备用调度器处于待机状态,不参与当前的集群运转。当主调度器出现故障无法运转时,此时备用调度器会由优先级最高的调度承担主调度器的工作,而出现故障的主调调度器便会退出当前工作,由人工维修后返回集群。LVS+Keepalived架构(负载均衡高可用集群),lvs,架构,负载均衡

两者比较后:高可用集群只需要在调度器上多进行一台或两台(服务器本身的价格比较昂贵,一般备用的服务器的数量会和当前业务创造的价值对等)的设置,就可避免因调度器瘫痪业务中断的风险,所以实现了真正的高可用的效果

二、Keepalived及其工作原理

  • Keepalived 是一个基于VRRP协议来实现的LVS服务高可用方案,可以解决静态路由出现的单点故障问题。LVS+Keepalived架构(负载均衡高可用集群),lvs,架构,负载均衡 在一个LVS服务集群中通常有主服务器(MASTER)和备份服务器(BACKUP)两种角色的服务器,但是对外表现为一个虚拟IP,主服务器会发送VRRP通告信息给备份服务器,当备份服务器收不到VRRP消息的时候,即主服务器异常的时候,备份服务器就会接管虚拟IP,继续提供服务,从而保证了高可用性

 三、Keepalived体系主要模块及其作用

keepalived体系架构中主要有三个模块,分别是core、check和vrrp。

●core模块:为keepalived的核心,负责主进程的启动、维护及全局配置文件的加载和解析。
●vrrp模块:是来实现VRRP协议的。
●check模块:负责健康检查,常见的方式有端口检查及URL检查。

四、LVS+Keepalived 高可用群集

  • 主DR 服务器:ens33(192.168.181.100) ipvsadm 、keepalived(热备) 虚拟IP:192.168.181.88  网卡 ens33:0
  • 备DR 服务器:ens33(192.168.181.99) ipvsadm 、keepalived
  • 虚拟IP:192.168.181.88  网卡 ens33:0
  • Web 服务器1:ens33 192.168.181.101
  • lo:0(VIP)192.168.181.88
  • Web 服务器2:ens33 192.168.181.102
  • lo:0(VIP)192.168.181.88
  • vip:192.168.181.88      
  • 客户端:192.168.181.1

1.LVS部署

yum -y install ipvsadm keepalived
modprobe ip_vs
cat /proc/net/ip_vs
1.1 配置keeplived(主、备DR 服务器上都要设置
cd /etc/keepalived/
cp keepalived.conf keepalived.conf.bak
vim keepalived.conf
......
global_defs {						#定义全局参数
--10行--修改,邮件服务指向本地
	smtp_server 127.0.0.1
--12行--修改,指定服务器(路由器)的名称,主备服务器名称须不同,主为LVS_01,备为LVS_02
	router_id LVS_01
--14行--注释掉,取消严格遵守VRRP协议功能,否则VIP无法被连接
	#vrrp_strict
}

vrrp_instance VI_1 {				#定义VRRP热备实例参数
--20行--修改,指定热备状态,主为MASTER,备为BACKUP
    state MASTER
--21行--修改,指定承载vip地址的物理接口
    interface ens33
--22行--修改,指定虚拟路由器的ID号,每个热备组保持一致	
    virtual_router_id 10
	#nopreempt		#如果设置非抢占模式,两个节点state必须为bakcup,并加上配置 nopreempt
--23行--修改,指定优先级,数值越大优先级越高,这里设置主为100,备为90
    priority 100
    advert_int 1					#通告间隔秒数(心跳频率)
    authentication {				#定义认证信息,每个热备组保持一致
		auth_type PASS				#认证类型
--27行--修改,指定验证密码,主备服务器保持一致
        auth_pass 123123
    }
    virtual_ipaddress {				#指定群集vip地址
        192.168.181.88
    }
}
--36行--修改,指定虚拟服务器地址(VIP)、端口,定义虚拟服务器和Web服务器池参数
virtual_server 192.168.181.88 80 {
    delay_loop 6					#健康检查的间隔时间(秒)
    lb_algo rr						#指定调度算法,轮询(rr)
--39行--修改,指定群集工作模式,直接路由(DR)
    lb_kind DR
    persistence_timeout 50			#连接保持时间(秒)
    protocol TCP					#应用服务采用的是 TCP协议
--43行--修改,指定第一个Web节点的地址、端口
    real_server 192.168.181.101 80 {
        weight 1					#节点的权重
--45行--删除,添加以下健康检查方式		
        TCP_CHECK {
			connect_port 80			#添加检查的目标端口
			connect_timeout 3		#添加连接超时(秒)
			nb_get_retry 3			#添加重试次数
			delay_before_retry 3	#添加重试间隔
		}
	}

	real_server 192.168.181.102 80 {		#添加第二个 Web节点的地址、端口
        weight 1
        TCP_CHECK {
			connect_port 80
			connect_timeout 3
			nb_get_retry 3
			delay_before_retry 3
		}
	}
##删除后面多余的配置##
}

LVS+Keepalived架构(负载均衡高可用集群),lvs,架构,负载均衡LVS+Keepalived架构(负载均衡高可用集群),lvs,架构,负载均衡

192.168.181.100和99都需要配置vip(虚拟IP)
vim /etc/sysconfig/network-scripts/ifcfg-ens33:0
DEVICE=ens33:0
ONBOOT=yes
IPADDR=192.168.10.188
NETMASK=255.255.255.255

重启网卡 systemctl restart network
ifup  ens33:0 


systemctl start keepalived
ip addr						#查看虚拟网卡vip
1.2 启动 ipvsadm 服务
ipvsadm-save > /etc/sysconfig/ipvsadm
systemctl start ipvsadm

ipvsadm -C   ##清空规则
ipvsadm -A -t 192.168.181.88:80 -s rr
ipvsadm -a -t 192.168.181.88:80 -r 192.168.181.101:80 -g
ipvsadm -a -t 192.168.181.88:80 -r 192.168.181.102:80 -g


ipvsadm -ln
#如没有VIP 的分发策略,则重启 keepalived 服务,systemctl restart keepalived

--192.168.181.99---
ipvsadm-save > /etc/sysconfig/ipvsadm
systemctl start ipvsadm

ipvsadm -ln
1.3 调整 proc 响应参数,关闭Linux 内核的重定向参数响应
vim /etc/sysctl.conf
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0

sysctl -p

2.配置节点服务器

yum -y install httpd
systemctl start httpd

--192.168.181.101---
echo 'lbj king!' > /var/www/html/index.html

--192.168.181.102---
echo 'jokic is a joke~' > /var/www/html/index.html

vim /etc/sysconfig/network-scripts/ifcfg-lo:0
DEVICE=lo:0
ONBOOT=yes
IPADDR=192.168.181.88
NETMASK=255.255.255.255

service network restart 或 systemctl restart network
ifup lo:0
ifconfig lo:0
route add -host 192.168.181.88 dev lo:0

vim /etc/sysctl.conf

net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2

sysctl -p

3.测试验证

LVS+Keepalived架构(负载均衡高可用集群),lvs,架构,负载均衡在客户端访问 http://192.168.181.88/ 
再在主服务器关闭 keepalived 服务后再测试, systemctl stop keepalived

LVS+Keepalived架构(负载均衡高可用集群),lvs,架构,负载均衡

 文章来源地址https://www.toymoban.com/news/detail-532615.html

 

到了这里,关于LVS+Keepalived架构(负载均衡高可用集群)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Lvs+KeepAlived高可用高性能负载均衡

    目录 1.环境介绍 2.配置keepalived  3.测试 1.测试负载均衡 2.测试RS高可用 3.测试LVS高可用 3.1测试lvs主服务宕机 3.2.测试lvs主服务器恢复 4.我在实验中遇到的错误 环境:centos7 RS1---RIP1:192.168.163.145            VIP 192.168.163.200 RS2---RIP2:192.168.163.146            VIP 192.168.163.200 LVS_MAST

    2024年02月10日
    浏览(34)
  • LVS-DR模式+keepalived+nginx+tomcat实现动静分离、负载均衡、高可用实验

    实验条件: test2——20.0.0.20——主服务器——ipvsadm、keepalived服务 test3——20.0.0.30——备服务器——ipvsadm、keepalived服务 nginx5——20.0.0.51——后端真实服务器1(tomcat的代理服务器)——nginx服务 nginx6——20.0.0.61——后端真实服务器2(tomcat的代理服务器)——nginx服务 tomcat——

    2024年02月08日
    浏览(44)
  • 集群、负载均衡集群、高可用集群简介,LVS模式和haproxy/nginx模式拓扑介绍

    目录 一.集群的定义 1.定义 2.分类 (1)负载均衡集群(LBC/LB) (2)高可用集群(HAC) 二.使用集群的意义 1.高性价比和性能比 2.高可用性 3.可伸缩性强 4.持久和透明性高 三.常见的两种集群模式拓扑 1.LVS(-DR)集群模式 (1)工作架构 (2)LVS下的相关术语 (3)LVS的工作模式

    2024年02月13日
    浏览(26)
  • 集群、负载均衡集群、高可用集群简介,LVS工作结构、工作模式、调度算法和haproxy/nginx模式拓扑介绍

    目录 一.集群的定义 1.定义 2.分类 (1)负载均衡集群(LBC/LB) (2)高可用集群(HAC) 二.使用集群的意义 1.高性价比和性能比 2.高可用性 3.可伸缩性强 4.持久和透明性高 三.常见的两种集群模式拓扑 1.LVS(-DR)集群模式 (1)工作架构 (2)LVS下的相关术语 (3)LVS的工作模式

    2024年02月13日
    浏览(29)
  • LVS/DR+Keepalived负载均衡实战(一)

    负载均衡这个概念对于一个IT老鸟来说再也熟悉不过了,当听到此概念的第一反应是想到举世闻名的nginx,但殊不知还有一个大名鼎鼎的负载均衡方案可能被忽略了,因为对于一般系统来说,很多应用场合中采用nginx基本已经满足需求,但对于大型机高性能系统掌握lvs负载均衡

    2024年02月13日
    浏览(24)
  • LVS+DR+apache+keepalived负载均衡

    1、首先准备两台服务器 ip         10.0.1.32 ip 10.0.1.33 vip 10.0.1.100 2、关闭防火墙 ```shell systemctl stop firewalld systemctl disable firewalld sed -i \\\'/^SELINUX=/s/enforcing/disabled/\\\' /etc/selinux/config grep \\\'^SELINUX=\\\' /etc/selinux/config setenforce off reboot ``` 3、安装keepalived,两台机器都需要安装 ```shell yum -y

    2024年02月10日
    浏览(24)
  • Keepalived+Lvs高可用高性能负载配置

    环境准备 IP 配置 VIP node1 192.168.134.170 LVS+Keepalived 192.168.134.100 node3 192.168.134.172 LVS+Keepalived 192.168.134.100 node2 192.168.134.171 做web服务器使用 node4 192.168.134.173 做web服务器使用 1、准备node1与node3环境(安装LVS与Keepalived)==由于只是简单的模拟测试,故环境安装使用yum即可。(LVS使用

    2024年02月13日
    浏览(33)
  • LVS+Keepalived 高可用集群

    支持故障自动切换(Failover) 支持节点健康状态检查(Health Checking) 基于vrrp协议完成地址流动 为vip地址所在的节点生成ipvs规则(在配置文件中预先定义) 为ipvs集群的各RS做健康状态检测 基于脚本调用接口完成脚本中定义的功能,进而影响集群事务,以此支持nginx、haproxy等服务 官方

    2024年02月07日
    浏览(26)
  • lvs+keepalived高可用集群

    keepalive为LVS应运而生的高可用服务。LVS的调度器无法做高可用,于是keepalive这个软件,实现的是调度器的高可用。但是, keepalive不是专门为LVS集群服务的,也可以做其他代理服务器的高可用(面试) LVS的高可用集群:主调度器和备调度器(可以有多个)一主两备或者一主一

    2024年02月08日
    浏览(24)
  • Keepalived+LVS部署高可用集群

    集群环境 主机 角色 服务 192.168.110.134 MASTER Keepalived 192.168.110.137 BACKUP Keepalived 192.168.110.136 Real server1 HTTPD 192.168.110.145 Real server2 HTTPD MASTER配置 BACKUP配置 检查Virtual IP是否漂移 IPVS检查 前提下载ipvsadm MASTER BACKUP Real Server配置 附上个人写的小脚本 大家可以根据自己需要做调整。

    2024年02月12日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包