Keepalived+Lvs-DR高可用

[复制链接]

1275

主题

1275

帖子

1013

积分

金牌会员

Rank: 6Rank: 6

积分
1013
分享到:
发表于 2022-6-24 10:04:20 | 显示全部楼层 |阅读模式
Keepalived高可用
keepalived+LVS-DR模式拓扑图:
LVS:是中间件软件(即代理服务器软件),是用来实现集群的负载均衡。
?????????????????????????????????????????????????????????+++++++++ ??????????+---------------------------> ???????????+ ?Client ?????+ ?????192.168.11.1 ?????win7/10 ????????| ??????????????????????????????????????????????+++++++++ ???????????| ??????????????????????????????________________|_________________ ?????????????????????????????????????????????????????| ?????????????????????????????| ????????????VIP eth0:1 192.168.10.100 ???????| ???????????????????????????| ????????+++++++++++++++++++++ ??????????????+++++++++++++++++++++ ????????????????????????????| ????????+ ?Director master主 ???node11 ???+ ??????????????+ ???Director backup备 ??node12 ??+ ????????| ????????+++++++++++++++++++++ ??????????????+++++++++++++++++++++ ????????| ?????????DIP 192.168.11.11 ?ens33网卡 ????????????????????DIP ?192.168.11.12 ?ens33网卡 ????????| ??????????????????????????????|________ ????????| ????????????????_________________|________________ ????????| ????????????????| ??????????????????????????????????????????????????????????| ?????????| ??????????+++++++++++++++++ ?????????????++++++++++++++++++ ????????+--------+ RealServer A ????node13 ?+ ????????????+ ??Real Server B ???node14 ?+ ????????????????????+++++++++++++++++ ?????????????++++++++++++++++++ ?????????????????????????192.168.11.13/24 ???????????????????????????????192.168.11.14/24分别在Director master、Director backup 上部署浮动资源(VIP IPVS策略)

测试2个Director在DR模式下都工作正常。测试完成后都撤掉浮动资源。
首先:在node11、node12上分别安装keepalived和ipvsadm软件包,并做keepalived相关配置。
在Director master上安装配置Keepalived

yum install keepalived ipvsadm -ycp -av /etc/keepalived/keepalived.conf{,.bak} 备份原始配置文件vim /etc/keepalived/keepalived.conf! Configuration File for keepalived

global_defs { ??全局定义,说明:在实验测试环境中,以下内容可以随便写,但是master和backup的router_id必须相同 ???
notification_email { 设置通知邮箱
root@localhost 管理员的邮箱地址
}

notification_email_from keepalived@localhost 通知邮件的发件人邮箱
smtp_server 127.0.0.1 邮箱服务器IP地址
smtp_connect_timeout 30 邮件服务器连接超时时间为30秒
router_id dr1 路由器ID名称,同一个keepalived高可用集群中master和backup的ID名称必须相同
#vrrp_strict 一定要注释掉此行,否则无法通过VIP地址访问调度器
}

vrrp_instance VI_1 { ???vrrp虚拟路由冗余协议的实例设置 ??,实例名称为VI_1

state MASTER ???状态,主为MASTER,备为BACKUP状态 ?
interface ens33 //心跳检测网卡接口,要根据实际情况写网卡接口名,用ip a查网卡接口名
virtual_router_id 51 ???//master主和backup备两边必须一样,此处是集群的群号
priority 100 ???//优先级,MASTER的值必须高于BACKUP的值,类似于现实生活中的竞选的票数
advert_int 1 ???//检查间隔,单位秒。vrrp的组播地址是224.0.0.18

authentication { 身份认证配置
auth_type PASS //认证类型为密码方式,主备要一致
auth_pass 1111 //认证密码为1111,主备要一致
}

virtual_ipaddress {

192.168.11.100 //VIP,可多个IP,每行一个IP地址
192.168.11.111

}

}

virtual_server 192.168.11.100 80 { ?//LVS 配置(即调度器的配置),此行等同于ipvsadm -At 192.168.11.100:80 -s wrr命令
delay_loop 3 //服务论询的时间间隔
lb_algo wrr //LVS 调度算法
lb_kind DR ?// LVS 集群模式
protocol TCP ???//指定协议为TCP协议
real_server 192.168.11.13 80 { //RS后端真实服务器的IP及端口号,等同于ipvsadm -at 192.168.11.100:80 -r 192.168.11.13:80 -g -w 1命令
weight 1

TCP_CHECK { //RS健康检查,如果RS主机上的80端口业务异常关闭了,用ipvsadm -Ln查不到此RS的IP信息
connect_timeout 3 //连接超时时间为3秒
}

}

real_server 192.168.11.14 80 {

weight 1

TCP_CHECK {

connect_timeout 3

}

}

}

cd /etc/keepalivedscp keepalived.conf 192.168.11.12:/etc/keepalived/ 将配置文件发送给node12的主机拷贝后,修改配置文件
state BACKUP

priority 90

两个Director(调度器)上启动服务,并查看vip地址:

systemctl restart keepalived [centos 7专用命令]service keepalived restart [centos 6和7通用命令]ip a 在master上可以看到ens33网卡有192.168.11.100和192.168.11.111这两个VIP地址。而backup备主机上是没有VIP的。当在master上用systemctl stop keepalived后,备主机上就会有这两个VIP。ipvsadm -Ln 查ipvs的集群配置信息=============================

抓包:

yum install -y tcpdumptcpdump -i ens33 -nv vrrp-i 指定网卡
-n 以数字的方式显示(ip,port)

-v 显示详细信息
-vv 显示更详细的信息
-w 保存到文件
----
keepalived通过vrrp协议进行组播的作用:
是为了竞选出由哪台keepalived主机接管业务(使用VIP的)。谁的priority优先级高(即票数多),谁就有VIP地址。
当master和backup都在运行keepalived服务时:
node11(master)发送的组播信息:
src:192.168.11.11

dest:224.0.0.18

node12(backup)接收的组播信息:
src:192.168.11.11

dest:224.0.0.18

----
当node11这台master停止了keepalived服务:
node12发送的组播信息:
src:192.168.11.12

dest:224.0.0.18

keepalived集群中其他主机接收的组播信息:
src:192.168.11.12

dest:224.0.0.18

使用高级回帖 (可批量传图、插入视频等)快速回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则   Ctrl + Enter 快速发布  

发帖时请遵守我国法律,网站会将有关你发帖内容、时间以及发帖IP地址等记录保留,只要接到合法请求,即会将信息提供给有关政府机构。
快速回复 返回顶部 返回列表