路由信息处理方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:33653741 阅读:10 留言:0更新日期:2022-06-02 20:32
本申请涉及一种路由信息处理方法、装置、计算机设备和存储介质。所述方法包括:获取路由配置脚本,路由配置脚本中包括待注入路由信息;根据路由配置脚本创建资源配置对象;通过资源配置对象将路由配置脚本挂载至目标容器中,目标容器为容器组中的任意一个初始化容器;响应于容器组的启动指令,基于预先创建的网络管理工具镜像在目标容器中读取并执行路由配置脚本,将待注入路由信息注入容器组。采用本方法能够提高容器组的路由信息配置效率。用本方法能够提高容器组的路由信息配置效率。用本方法能够提高容器组的路由信息配置效率。

【技术实现步骤摘要】
路由信息处理方法、装置、计算机设备和存储介质


[0001]本申请涉及容器开发
,特别是涉及一种路由信息处理方法、装置、计算机设备和存储介质。

技术介绍

[0002]随着容器开发技术的发展,出现了容器开发管理平台,例如,Kubernetes(简称k8s)平台,其是当下比较主流的能够自动化管理大规模Linux容器的开源平台,在k8s中,Pod是一组容器的集合,即,容器组,是最基本的调度单位,应用一般部署在Pod中进行发布。Pod与Pod之间经常会产生通信,所以k8s会为每个Pod分配单独的网络栈。一般情况下,为每个Pod分配一张网卡就可以满足通信需求。然而,在一些特殊的应用之间,需要组成复杂的网络拓扑结构。这时就会为Pod配置多张网卡,通过设置网卡之间的互通而构建特殊的网络拓扑。在网络拓扑的构建过程中,需要向Pod中添加大量的路由信息。
[0003]在传统方法中,采用手动方式进行路由配置,需要作业人员逐个进入每个Pod中,并使用命令行进行路由配置操作,不仅步骤繁琐,耗时长,还伴随着出错风险,导致Pod中路由信息的配置效率低。

技术实现思路

[0004]基于此,有必要针对上述技术问题,提供一种能够提高容器组中路由信息配置效率的路由信息处理方法、装置、计算机设备和存储介质。
[0005]一种路由信息处理方法,该方法包括:
[0006]获取路由配置脚本,路由配置脚本中包括待注入路由信息;
[0007]根据路由配置脚本创建资源配置对象;
[0008]通过资源配置对象将路由配置脚本挂载至目标容器中,目标容器为容器组中的任意一个初始化容器;
[0009]响应于容器组的启动指令,基于预先创建的网络管理工具镜像在目标容器中读取并执行路由配置脚本,将待注入路由信息注入容器组。
[0010]在一个实施例中,根据路由配置脚本创建资源配置对象,包括:将路由配置脚本提交至容器管理系统集群;根据路由配置脚本在容器管理系统集群中创建与容器组对应的资源配置对象。
[0011]在一个实施例中,在容器管理系统集群中创建与容器组对应的资源配置对象,包括:在容器管理系统集群中与容器组所在命名空间相同的空间下创建资源配置对象。
[0012]在一个实施例中,通过资源配置对象将路由配置脚本挂载至目标容器中,包括:根据资源配置对象生成对应的数据卷;通过挂载数据卷的方式,将资源配置对象所携带的待注入路由信息以路由配置脚本的形式挂载至目标容器中的指定目录下。
[0013]在一个实施例中,目标容器优先于容器组中的应用容器启动。
[0014]在一个实施例中,将待注入路由信息注入容器组,包括:响应于路由配置脚本中的
路由信息注入指令,根据路由信息注入指令在容器组对应的网络栈中注入待注入路由信息。
[0015]在一个实施例中,该方法还包括:创建包括轻量级网络管理工具的Linux镜像;将Linux镜像作为网络管理工具镜像与目标容器组关联。
[0016]一种路由信息处理装置,该装置包括:
[0017]脚本获取模块,用于获取路由配置脚本,路由配置脚本中包括待注入路由信息;
[0018]对象创建模块,用于根据路由配置脚本创建资源配置对象;
[0019]脚本挂载模块,用于通过资源配置对象将路由配置脚本挂载至目标容器中,目标容器为容器组中的任意一个初始化容器;
[0020]信息注入模块,用于响应于容器组的启动指令,基于预先创建的网络管理工具镜像在目标容器中读取并执行路由配置脚本,将待注入路由信息注入容器组。
[0021]一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的路由信息处理方法的步骤。
[0022]一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的路由信息处理方法的步骤。
[0023]上述路由信息处理方法、装置、计算机设备和存储介质,通过创建资源配置对象,将呈路由配置脚本形式的待注入路由信息挂载至容器组内的目标容器下,在启动容器组时,能够根据预先构建的网络管理工具镜像在目标容器中读取并执行预先挂载的路由配置脚本,快速、准确、自动地为该容器组注入路由信息,从而提高了容器组路由配置的效率。
附图说明
[0024]图1为一个实施例中路由信息处理方法的流程示意图;
[0025]图2为一个应用实例中路由信息处理方法的技术构架示意图;
[0026]图3为一个实施例中路由信息处理装置的结构框图;
[0027]图4为一个实施例中计算机设备的内部结构图。
具体实施方式
[0028]为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅用以解释本申请,并不用于限定本申请。
[0029]云计算,是一种将计算机集群资源池化并通过网络进行数据传输来向用户提供服务的技术。传统资源池化的过程是使用虚拟化技术实现的,它将计算机硬件与软件相互隔离。后来,出现了Linux容器技术,Linux容器技术能够实现与虚拟化技术类似的功能,并且更加轻量化。然而,它并没有解决虚拟化技术中应用开发与部署过程中环境不一致的问题,这才是当时应用开发非常棘手的问题,所以,Linux容器技术在刚开始并没有受到太多关注。
[0030]Docker项目的出现让Linux容器技术真正火热起来,它通过对整个操作系统中的文件和目录进行打包,从而保证开发、测试、生产环境的一致性,从而大大降低了应用发布的复杂度。然而,一个容器实际上就是一个进程,所以,一个容器化的应用往往以多个容器
协同工作的形式存在。在一个计算机集群中,甚至会有成千上万的容器在运行,手动管理这么多的容器几乎是不可能的。
[0031]因此,出现了Linux容器管理平台,例如,Kubernetes(简称k8s),其是一个能够自动化管理大规模Linux容器的开源平台,它能完成容器的部署和复制、容器的扩缩容、维持容器间的负载均衡等重要功能。在k8s中,Pod是一组容器的集合,Pod容器组是最基本的调度单位,应用部署在Pod中进行发布。在Pod与Pod之间经常会产生通信行为,所以k8s会为每个Pod分配单独的网络栈,并通过网络插件进行配置从而保证Pod之间的通信。
[0032]一般情况下,为每个Pod分配一张网卡就可以满足通信需求。然而,在一些特殊应用之间,需要组成复杂的网络拓扑结构(例如,环状通信)。这时就会为Pod配置多张网卡,通过设置网卡之间的互通而构建特殊的网络拓扑。在不同子网中的两张网卡是无法直接进行通信的,这往往通过构建一个二层或三层网络来打通不同的子网。在复杂的网络拓扑结构的构建过程中,需要向Pod中添加大量的路由信息。如果以手动方式进行配置,要逐个进入每个Pod中,使用命令行进行操作,不仅步骤繁琐,还伴随着出错的风险,出错以后也不方便检查。
[本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种路由信息处理方法,所述方法包括:获取路由配置脚本,所述路由配置脚本中包括待注入路由信息;根据所述路由配置脚本创建资源配置对象;通过所述资源配置对象将所述路由配置脚本挂载至目标容器中,所述目标容器为容器组中的任意一个初始化容器;响应于所述容器组的启动指令,基于预先创建的网络管理工具镜像在所述目标容器中读取并执行所述路由配置脚本,将所述待注入路由信息注入所述容器组。2.根据权利要求1所述的方法,其特征在于,所述根据所述路由配置脚本创建资源配置对象,包括:将所述路由配置脚本提交至容器管理系统集群;根据所述路由配置脚本在所述容器管理系统集群中创建与所述容器组对应的资源配置对象。3.根据权利要求2所述的方法,其特征在于,所述在所述容器管理系统集群中创建与所述容器组对应的资源配置对象,包括:在所述容器管理系统集群中与所述容器组所在命名空间相同的空间下创建所述资源配置对象。4.根据权利要求1所述的方法,其特征在于,所述通过所述资源配置对象将所述路由配置脚本挂载至目标容器中,包括:根据所述资源配置对象生成对应的数据卷;通过挂载数据卷的方式,将所述资源配置对象所携带的所述待注入路由信息以所述路由配置脚本的形式挂载至所述目标容器中的指定目录下。5.根据权利要求1所述的方法,其特征在于,所述目标容器优先于所述容器组中的应用容器启动。6.根据...

【专利技术属性】
技术研发人员:康英杰王德奎
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

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

1