Chinaunix首页 | 论坛 | 博客
  • 博客访问: 330974
  • 博文数量: 659
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 5700
  • 用 户 组: 普通用户
  • 注册时间: 2022-03-07 15:28
个人简介

天翼云是中国电信倾力打造的云服务品牌,致力于成为领先的云计算服务提供商。提供云主机、CDN、云电脑、大数据及AI等全线产品和场景化解决方案。

文章分类

全部博文(659)

文章存档

2024年(210)

2023年(247)

2022年(202)

我的朋友

分类: 网络与安全

2022-05-22 20:26:52


(一) 产品概述

天翼云高可用虚拟IPHigh-Availability Virtual IP Address,简称HAVIP)是一种可用独立创建和删除的私有网络IP地址资源。通过在VIP CIDR中申请一个私有网络IP地址,然后与高可用软件(如高可用软件Keepalived)配合使用,可用在VPC中搭建高可用的主备集群服务,提高VPC中服务的可用性。

限制和说明:

1. 单子网创建的HAVIP 有quota限制。

2. HAVIP后端虚拟主机需要在同子网中,支持VRRP协议,自动主备切换,支持双栈。

3. 用户创建HAVIP指定ip地址时,需要保证该ip地址可用,且在同子网内。

4. 删除HAVIP前需要解绑虚拟实例(即port)。

5. HAVIP功能只实现了基础网络底层支持HAVIP功能,用户使用时需要在HAVIP绑定的实例中结合高可用软件(如Keepalived)一起使用。

(二) 工作原理

HAVIP工作原理如下图所示:

在子网中创建HAVIP后,然后给HAVIP关联虚拟实例(实际上是关联虚拟实例的网卡,关联的网卡可为主网卡,也可为辅助网卡),此时HAVIP具备和虚拟实例私网IP地址一样的网络接入能力。然后在虚拟实例中部署高可用软件如Keepalived和应用服务,从而实现VPC中的高可用主备服务。

完成上述操作后,虚拟主机中的Keepalived通过VRRP协议来实现虚拟路由的功能。虚拟路由包含VRID和一组IP地址。在一个虚拟路由中,不管谁是master角色,对外都有相同的MACIP(即VIP)。当某个虚拟实例竞争为master角色,其会一直发送VRRP协议包,告诉Backup角色的节点自己还“活着”,Backup角色的节点就不会抢占master角色。此外还可以通过配置priority优先级来决定哪个节点优先被选为master角色节点。

主备节点的切换。当主备节点正常运行时,主节点会不断的发送VRRP协议报文(即心跳消息),备节点接受报文。当主节点故障时,其无法发出心跳消息,此时备节点也无法接收到主节点的心跳,当达到一定时间时,备节点会接管主节点的IP资源及服务,替代主节点对外提供服务,从而实现主备切换,实现服务的高可用。

(三) 如何在VPC中使用HAVIP搭建高可用的服务

3.1 资源创建

登录天翼云Console,进入虚拟私有云界面创建VPC, 子网,公网ip资源,然后在弹性云主机界面创建用来搭建高可用服务的虚拟实例资源。(本文档中创建两个虚拟实例VM1VM2,创建的公网IPEIP1)。资源创建为接下来操作的前提。

3.2 创建虚拟IP地址

进入虚拟私有云界面,选择子网,然后选择要创建虚拟IP地址的子网,在子网详情页面中创建虚拟IP地址。虚拟IP地址支持自动分配和手动指定。创建界面如下:

创建完成后,将申请的虚拟绑定3.1步骤创建的虚拟实例VM1VM2,并将虚拟ip地址与EIP1进行绑定,以实现服务的公网访问。

3.3 虚拟实例软件配置部署

在虚拟实例VM1VM2中分别部署高可用软件Keepalived和应用服务,修改其配置文件,启动应用服务和Keepalived。Keepalived的配置文件默认在/etc/keepalived/keepalived.conf 文件中,配置值可根据实际情况进行配置。以下配置文件为本文档进行测试时的配置:

Keepalived.conf


     
      



IP 相关配置部分在vrrp_instance V1_1中。VM1 VM2中配置启动完高可用服务软件Keepalived和应用服务后,就可以通过HAVIP进行访问服务了。在进行测试主备切换验证时,可以通过主动down掉 主节点VM1VM2的方式,查看HAVIP是否切换到备节点。通过HAVIP绑定的EIP1可以从公网访问HAVIP后端的服务。

(四) 参考

Keepalived配置参数说明:https://www.keepalived.org/manpage.html






阅读(429) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~