一种基于RedisCluster的拓扑同步方法技术

技术编号:38628430 阅读:12 留言:0更新日期:2023-08-31 18:28
本发明专利技术提供了一种基于Redis Cluster的拓扑同步方法,包括以下步骤:S1、获取虚机上线相关信息,准备相关配置参数;S2、获取VPC下当前CVK上以上线的网卡数据,进行增量补充;S3、基于VPC算出变更版本号,并拼接版本号在Redis的唯一标识;S4、基于CVK算出变更版本号,并拼接需要刷新版本号在Redis的唯一标识;S5、根据可用区计算所属的Redis Slot;S6、基于Redis lua脚本,刷新步骤S3、步骤S4在Redis记录的版本号。本发明专利技术有益效果:一种基于Redis Cluster的拓扑同步方法,基于Redis Cluster的OVN配置下发方法可以快速进行数据分片、数据副本、故障上报,提高VPC配置下发的吞吐量、降低配置数据量、故障切换能力并保证VPC配置可以有序的下发到各类设备上。发到各类设备上。发到各类设备上。

【技术实现步骤摘要】
一种基于Redis Cluster的拓扑同步方法


[0001]本专利技术属于云计算领域,尤其是涉及一种基于Redis Cluster的拓扑同步方法。

技术介绍

[0002]VPC作为云计算网络的基础,为用户提供自定义私有网络,不同的专有网络之间逻辑上彻底隔离。VPC的配置作为云计算通信的基础配置,需要准确,高效,有序,持久性的下发到指定的设备上,传统网络模式的VPC需要在物理设备上的即防火墙、Leaf交换机、Border交换机进行配置下发,由于依赖物理设备,扩张能力差、成本较高等弊端,因此引入OVN实现虚机网络VPC配置下发。OVN在原有OVS的基础上进行扩展,摆脱OVS单机存储、集群扩展能力差等缺点,通过中心节点运行着OVN北向数据库和OVN南向数据库的多数据源存储方式,北向数据库存储逻辑网络数据;南向数据库,其将北向数据库的逻辑网络数据格式转换为物理网络数据格式并进行存储。通过数据存储的比对、转发、存储等方式完成网络L2、L3层配置相关数据的下发。引入OVN强大控制能力的同时,也带来了数据存储的压力,由于OVN南北向数据库是单独存在于CVK设备上,数据量相对于控制层数据来说相对较少,随着可用区内设备数量的增加,虚拟机等资源的增加,网络控制层的数据会议指数级增长,当节点的Redis作为数据存储将影响OVN同步数据的能力,导致网络通信配置下发延迟时间较长,生效时间较慢。横向扩展Redis集群,引入Redis Cluster并根据可用区将资源划分为多个块,降低每块数据的存储量,提高数据读取的能力,同时Redis Cluster引入的高可用性,保证在多可用区场景下,避免单节点的故障引起的网络通信服务不可用。提高服务可用性,保证网络服务在遇到故障后,可以平滑切换,提高可用性。

技术实现思路

[0003]有鉴于此,本专利技术旨在提出一种基于Redis Cluster的拓扑同步方法,以至少解决
技术介绍
中的至少一个问题。
[0004]为达到上述目的,本专利技术的技术方案是这样实现的:
[0005]一种基于Redis Cluster的拓扑同步方法,包括以下步骤:
[0006]S1、获取虚机上线相关信息,准备相关配置参数;
[0007]S2、获取VPC下当前CVK上以上线的网卡数据,进行增量补充;
[0008]S3、基于VPC算出变更版本号,并拼接版本号在Redis的唯一标识;
[0009]S4、基于CVK算出变更版本号,并拼接需要刷新版本号在Redis的唯一标识;
[0010]S5、根据可用区计算所属的Redis Slot;
[0011]S6、基于Redis lua脚本,刷新步骤S3、步骤S4在Redis记录的版本号;
[0012]S7、推送步骤S2计算出的网卡信息;
[0013]S8、启动AOF文件监听,同步Redis主Slot和副本SLot的AOF文件;
[0014]S9、启动监听,监听CVK上报告警,判断是否需要同步刷新数据,需要则全量刷新当前VPC和CVK所属SLOT的信息;
[0015]S10、发送HTTP请求,下发当前上线网卡所对应的配置信息,并记录操作日志;
[0016]S11、监听Redis脚本执行回调,记录操作日志。
[0017]进一步的,在步骤S3中的唯一标识格式如下:
[0018]VPC:HOST:ZONE_{可用区ID}:{l3vni}。
[0019]进一步的,在步骤S4中的唯一标识格式如下:
[0020]VPC:CVK:ZONE_{可用区ID}:{l3vni}。
[0021]进一步的,本方案公开了一种电子设备,包括处理器以及与处理器通信连接,且用于存储所述处理器可执行指令的存储器,所述处理器用于执行一种基于Redis Cluster的拓扑同步方法。
[0022]进一步的,本方案公开了一种服务器,包括至少一个处理器,以及与所述处理器通信连接的存储器,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述处理器执行,以使所述至少一个处理器执行一种基于Redis Cluster的拓扑同步方法。
[0023]进一步的,本方案公开了一种计算机可读取存储介质,存储有计算机程序,所述计算机程序被处理器执行一种基于Redis Cluster的拓扑同步方法。
[0024]相对于现有技术,本专利技术所述的一种基于Redis Cluster的拓扑同步方法具有以下有益效果:
[0025]本专利技术所述的一种基于Redis Cluster的拓扑同步方法,基于Redis Cluster的OVN配置下发方法可以快速进行数据分片、数据副本、故障上报,提高VPC配置下发的吞吐量、降低配置数据量、故障切换能力并保证VPC配置可以有序的下发到各类设备上。
附图说明
[0026]构成本专利技术的一部分的附图用来提供对本专利技术的进一步理解,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:
[0027]图1为本专利技术实施例所述的一种基于Redis Cluster的拓扑同步方法示意图。
具体实施方式
[0028]需要说明的是,在不冲突的情况下,本专利技术中的实施例及实施例中的特征可以相互组合。
[0029]下面将参考附图并结合实施例来详细说明本专利技术。
[0030]本方案保证VPC同一个CVK配置分区有序:利用Redis Cluster Hash Tag方式对数据进行分区,保证VPC相同可用区的数据存在在固定的Redis Slot内,并使用分布式锁以及单线程执行特性,保证OVN中心控制节点接受数据的在可用区内有序性,地域内并发执行,以保证配置下发设备的有序性、高效性
[0031]本方案多维度拆分数据,降低数据拉取量:基于VPC、CVK、可用区的角度进行数据拆分、分片存储,降低数据拉取量,提高配置下发数据传输效率,提供VPC配置下发的吞吐量
[0032]本方案引入Redis副本Slot概念,保证故障合理迁移:通过对数据备份进副本Slot,在主Redis节点数据出现异常时候,网络服务的高可用
[0033]本方案利用Redis数据持久化文件的特性,保证VPC配置的持久化:Redis数据以文件的方式持久化到服务器的磁盘,并拆分为多个小文件,可以保证VPC相关设备的配置进行
间接的持久化
[0034]本方案通过二进制数据压缩,提高数据传输效率:通过对VPC配置数据进行二进制压缩,缩小数据报文,提高传输效率,节省网络带宽;
[0035]本方案基于Redis Cluster的OVN配置下发方法可以快速进行数据分片、数据副本、故障上报,提高VPC配置下发的吞吐量、降低配置数据量、故障切换能力并保证VPC配置可以有序的下发到各类设备上。
[0036]1、数据分片,提高集群扩展能力,降低大规模集群数据传输的成本;
[0037]2、通过持久化日志,可以回溯下发失败的配置,进行配置重新下发本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Redis Cluster的拓扑同步方法,其特征在于,包括以下步骤:S1、获取虚机上线相关信息,准备相关配置参数;S2、获取VPC下当前CVK上以上线的网卡数据,进行增量补充;S3、基于VPC算出变更版本号,并拼接版本号在Redis的唯一标识;S4、基于CVK算出变更版本号,并拼接需要刷新版本号在Redis的唯一标识;S5、根据可用区计算所属的Redis Slot;S6、基于Redislua脚本,刷新步骤S3、步骤S4在Redis记录的版本号;S7、推送步骤S2计算出的网卡信息;S8、启动AOF文件监听,同步Redis主Slot和副本SLot的AOF文件;S9、启动监听,监听CVK上报告警,判断是否需要同步刷新数据,需要则全量刷新当前VPC和CVK所属SLOT的信息;S10、发送HTTP请求,下发当前上线网卡所对应的配置信息,并记录操作日志;S11、监听Redis脚本执行回调,记录操作日志。2.根据权利要求1所述的一种基于Redis Cluster的拓扑同步方法,其特征在于,在步骤S3中的唯一标识格式如下:VPC:HOS...

【专利技术属性】
技术研发人员:孙光辉
申请(专利权)人:紫光云技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1