对于运维同学来说,高可用始终是个绕不过的话题。
什么是高可用?
通常是指一个系统经过专门的设计,从而减少停工时间,而保持其服务的高度可用性。也就是所谓的只要干不死就往死里干。我们要做的就是在我们休息的时候,服务还一如既往地干着交代的事情,并且不给她偷懒的间隙。
如何实现高可用的效果?
这里仅提供一种思路,一种方法,不是绝对,也不是唯一。keepalived了解一下。
Keepalived主要是通过VRRP协议实现高可用功能的。VRRP是Virtual Router RedundancyProtocol(虚拟路由器冗余协议)的缩写,VRRP出现的目的就是为了解决静态路由单点故障问题的,它能够保证当个别节点宕机时,整个网络可以不间断地运行。
在 Keepalived服务正常工作时,主 Master节点会不断地向备节点发送(多播的方式)心跳消息,用以告诉备Backup节点自己还活看,当主 Master节点发生故障时,就无法发送心跳消息,备节点也就因此无法继续检测到来自主 Master节点的心跳了,于是调用自身的接管程序,接管主Master节点的 IP资源及服务。而当主 Master节点恢复时,备Backup节点又会释放主节点故障时自身接管的IP资源及服务,恢复到原来的备用角色。简而言之,如下图:
组播信息流监测指令:
tcpdump -nn -i any host 224.0.0.18
keepalived配置
master配置
vrrp_instance VI_1 {
state MASTER
interface ens18 #网卡名称
virtual_router_id 51 #要保持和salve一致
priority 100 #优先级要高于slave
#nopreempt 非抢占模式
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
track_script {
chk_http_port
}
virtual_ipaddress {
虚IP地址/24
}
}
slave配置
vrrp_instance VI_1 {
state BACKUP
interface ens18
virtual_router_id 51
priority 90
#nopreempt 非抢占模式
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
track_script {
chk_http_port
}
virtual_ipaddress {
虚IP地址/24
}
}
内容出处:,
声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时修改或删除。文章链接:http://www.yixao.com/tech/28401.html