HAVIP+Keepalived高可用搭建

通过vrrp协议定时广播请求,只要vip所在节点断了就飘移vip,实现业务高可用,这种场景和CLB有什么区别?

  • CLB更适合负载分担场景,功能更全面
  • HAVIP更适合主备冗余场景,中间不需要任何设备转发请求,链路更短
  • CLB和HAVIP都不提供主动出去能力,都是被动提供服务

本文将使用主流高可用软件keepalived配置havip

一、创建havip

位置:私有网络控制台 -> IP与网卡 -> 高可用虚拟IP

选择对应私有网络和子网,IP地址自动或者手动,这里手动填写为10.0.1.100,将用这个IP作为VIP

创建好的状态:未绑定服务器

不要误解,这里并不是在控制台手动绑定,需要在实例机器上创建keepalived并配置好该VIP,配置成功后这里的状态会自动转为成功。

二、安装keepalived

用了CentosDebian两台测试机,从软件源安装keepalived即可,如果你想编译安装也可以,但确保keepalived版本在1.2.24以上,别问为什么,官方推荐。

以下是Debianpopcon统计的keepalived包在Debian系中流行度趋势,可见从04年以来一直坚挺,到目前仍然为主流高可用软件。

软件源直接装,redhat系列则使用yum:

apt install keepalived -y #Debian系
yum install keepalived -y #Redhat系

编译安装,各个版本地址: http://www.keepalived.org/download.html

wget https://www.keepalived.org/software/keepalived-2.2.2.tar.gz #目前官方最新stable版本
tar xf keepalived-2.2.2.tar.gz  #解压
./configure #不指定--prefix路径默认装在/usr/local
make && make install

编译安装和从软件源安装的主要区别是安装路径不一样,版本不一样,前者更灵活,后者更便捷,当然如果你想用dpkg打包deb也不是不可以,或者自己搭建私有软件源,keepalived版本和配置你都可以高度自定义,这里不一一赘述,主要讲从软件源安装的方式来做配置。

三、配置MASTER和BACKUP

测试环境如下:

服务器节点

内网IP

VIP(漂移)

MASTER

node1

10.0.1.4

10.0.1.100

BACKUP

node2

10.0.1.2

10.0.1.100

master和backup都配置下/etc/hosts,确保node对应ip:

$ grep node /etc/hosts
10.0.1.4 node1
10.0.1.2 node2
$

同时确保iptables/selinux等不会成为阻碍

$ iptables -F 
$ iptables -X
$ vim /etc/selinux/config
SELINUX=disabled #修改此参数,重启后生效
$ setenforce 0 #临时生效,不需要重启

1.配置MASTER

首先确保网卡是否支持多播:

$ ifconfig eth0  
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.0.1.4  netmask 255.255.255.0  broadcast 10.0.1.255
        inet6 fe80::5054:ff:fe51:1628  prefixlen 64  scopeid 0x20<link>
        ether 52:54:00:51:16:28  txqueuelen 1000  (Ethernet)
        RX packets 7042  bytes 5398491 (5.1 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 3789  bytes 229307 (223.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

$ 

flags有MULTICAST说明支持多播,开启/关闭多播方法:

$ ip link set multicast on dev eth0  #开启多播
$ ip link set multicast off dev eth0 #关闭多播

从软件源安装的,keepalived配置文件默认路径:/etc/keepalived/keepalived.conf

同时Debian系下的/etc/keepalived/没有keepalived.conf文件,可以从/usr/share/doc/keepalived/samples/keepalived.conf.sample复制一份示例配置过来:

root@node1:~$ cd /etc/keepalived/
root@node1:/etc/keepalived$ cp /usr/share/doc/keepalived/samples/keepalived.conf.sample ./keepalived.conf 
#去掉后缀让它成为主配置文件
root@node1:/etc/keepalived$

编辑配置文件如下:

$ vim keepalived.conf
! Configuration File for keepalived

global_defs {
   notification_email {
        root@localhost
   }
   notification_email_from keepalived@localhost
   smtp_server 127.0.0.1
   smtp_connect_timeout 30
   router_id node1
   vrrp_mcast_group4 224.1.101.33   ! 组播地址,只要是224开头即可
}

vrrp_instance VI_1 {
    state MASTER      !主节点
    priority 100      !优先级
    interface eth0    !指定网卡
    virtual_router_id 33
    nopreempt         !非抢占模式,当vip漂移到backup后,即使master正常恢复业务,vip也不漂移到master
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass Rokasvip  ! 随机字符串即可
}
    virtual_ipaddress {
        10.0.1.100/24 dev eth0 label eth0:0   ! 指定申请的havip地址,用网卡别名配置即可
    }
}
$

2.配置BACKUP

同理确认多播是否开启,配置BACKUPkeepalived文件:

$ vim keepalived.conf
! Configuration File for keepalived

global_defs {
   notification_email {
        root@localhost
   }
   notification_email_from keepalived@localhost
   smtp_server 127.0.0.1
   smtp_connect_timeout 30
   router_id node1
   vrrp_mcast_group4 224.1.101.33   ! 组播地址,只要是224开头即可
}

vrrp_instance VI_1 {
    state BACKUP     !备节点
    priority 96      !优先级
    interface eth0   !指定网卡
    virtual_router_id 33
    nopreempt         !非抢占模式,当vip漂移到backup后,即使master正常恢复业务,vip也不漂移到master
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass Rokasvip  ! 随机字符串即可
}
    virtual_ipaddress {
        10.0.1.100/24 dev eth0 label eth0:0   ! 指定申请的havip地址,用网卡别名配置即可
    }
}
$

3.启动服务并测试验证

$ systemctl start keepalived
$ ip addr show eth0

可以看到vip已经在主节点node1上了,并持续发ARP探测IP是否正常,同时腾讯云控制台显示的HAVIP状态自动转成了正常状态:

抓包可以看到,主备节点每秒像广播地址发送一次自己的VRRP状态,通过此交互来协商漂移VIP

4.HAVIP绑定EIP提供公网能力

可选项,如果有公网需求,给HAVIP绑定一个EIP即可。

原文地址:https://cloud.tencent.com/developer/article/1855921

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


所以很多人都会选择将这些生活琐事来交给智能化产品,在众多产品中,扫拖机器人所给我们带来的便利性最强,扫地、拖地全都一气呵成,不需要人为过多干预,不过目前大多数扫拖机器人对于双手解放得不彻底。而石头作为
“昨天的经历都将成为明天的力量。” 将绝大部分精力都奉献给璃月港的刻晴,可以说是《原神》中的高人气角色了,虽然是常驻角色,并且对于普通玩家来说……刻师傅别刮了……不过作为开服就存在的角色,还有独特的剑法
最近,全球知名的通信产业盛会MWC 2024(2024世界移动通信大会)正式召开,其中,联发科以“连接AI宇宙”(Connecting the AI-verse)为主题,为大众展示出一系列在AI和移动通信技术等领域的最新突破,吸引了大量行业
今年上半年有很多值得关注的机型,其中华为最新的影像旗舰华为P70 Art也自然受到了业界不少的关注目光,目前关于这款机型的轮廓图已经在网上曝光。
目前,2024世界移动通信大会(MWC)正在西班牙巴塞罗那举行,值得一提的是,此次大会参展中国厂商非常多,包括华为、中兴、小米、荣耀等等多家厂商均在其列。
就在去年,真我推出了11 Pro+,用一个2亿像素传感器和zoom变焦功能,开启了中端手机影像的长焦大战,而后友商才姗姗来迟的跟进了2亿像素传感器。
【手机之家新闻】一年一度的MWC已经于当地时间2月26日在巴塞罗那正式开展,在本次MWC2024上全球各大厂商齐聚一堂,展出自家最新的技术与产品,其中中兴就参展本次MWC2024,并且展出了诸多面向企业端的产品,而旗下的
近日,联发科在MWC 2024(2024 世界移动通信大会)上展出了一系列令人瞩目的AI和移动通信技术突破,以“连接AI宇宙”(Connecting the AI-verse)的展厅吸引了无数业界精英和媒体的目光。特别是其现场的生成式AI技术
虽然目前国内已经有不少厂商入局折叠屏产品,但是努比亚却迟迟没有入局。不过在近日举办的MWC 2024展会上,努比亚发布了自家首款折叠屏手机——努比亚Flip,预计国内很快也会上市。
MWC 2024正在西班牙巴塞罗那举办,和往年一样,荣耀这次依旧携众多新产品、新技术参会。荣耀Magic6 Pro、荣耀Magic V2 RSR保时捷设计的机型在海外正式发布,并且还展示了魔法大模型、任意门等诸多新技术。
MWC 2024正在西班牙巴塞罗那如火如荼地举行,其中小米也参加了今年的大会,在会上发布了在国内大受欢迎的小尺寸旗舰——小米14。值得一提的是,高通公司CEO安蒙甚至亲临发布会现场为这款机型助阵。
《原神》是一直以来在机圈深受欢迎的游戏,在充满幻想的提瓦特大陆上,你可以邂逅不少性格迥异、能力独特的伙伴。而一加Ace系列一直就拥有非常强烈的电竞属性,也是畅玩《原神》的热门机型,而在本月,一加Ace 3将推
有不少网友发现,今年新机的发布时间相对于往年大幅提前,很多厂商在春节之前密集发布了自己最新的中高端机型,给人一种年后没什么新机可发了的感觉。不过魅族全新的大杯机型——魅族21 PRO非常值得期待,魅族科技也
2022年7月,小米12S Ultra正式发布,这款产品率先将1英寸大底主摄引入到移动影像领域,同时凭借鲜明的徕卡影调给人留下深刻的印象,同时这款产品也被视为了影像旗舰地位的机型。如果从那时算起,到现在差不多已经快过
随着智能手机的日益普及和智能化进程的加速,智能穿戴设备成为了人们关注的焦点。各大智能手机厂商纷纷进军智能穿戴市场,试图在这一新兴领域抢占先机。
早在去年秋天,HyperOS操作系统发布的时候,小米便勾勒出了“人车家全生态”的美好蓝图,而在这其中,小米的多终端统一战略是核心,目前已经有不少小米产品预装或者接受到了HyperOS操作系统的推送,在过去几个月的时
今年雷军将把更多的精力放在小米汽车上,所以接下来的手机业务将由刚刚兼任小米品牌总经理卢伟冰接管。同时雷军也在微博上表示小米2024年开年旗舰——小米14 Ultra即将在近期发布,并且将有卢伟冰进行讲解。另外,卢
新的一年有龙则灵,有愿必达。自1月19日起,荣耀加码“新年荣耀,一起成龙”年货节,在全国荣耀线下门店上线了“新年许愿处”、“龙运当头”等趣味活动,吸引大批消费者到店打卡许愿,戴龙头迎好运。与此同时,为了回
小米在官网微博中已经透露了关于小米14 Ultra信息,所以新机上市应该不会太晚。根据德国莱茵的官方消息,目前小米14 Ultra(型号为24030PN60G)获得了莱茵无频闪认证,表明这款手机可以有效减轻屏幕给用户带来的视觉疲
2月22日,上海广播电视台与华为举办鸿蒙合作签约仪式,宣布其官方客户端看看新闻APP将基于HarmonyOS NEXT鸿蒙星河版启动鸿蒙原生应用开发,为用户提供更加极致的新闻资讯服务体验。此次合作标志着上海广播电视台成为全国