一种驱逐容器组的方法、系统及装置制造方法及图纸

技术编号:26342143 阅读:38 留言:0更新日期:2020-11-13 20:30
本发明专利技术提供了一种驱逐容器组的方法、系统及装置,方法包获取容器组驱逐触发指令,关闭当前节点调度;基于API接口,调用驱逐命令,采用多线程并发异步驱逐容器组。本发明专利技术面向用户设置驱逐容器组的触发指令,在获取到该指令后,通过API接口调用驱逐命令,并将驱逐进程进行页面显示,用户只需触发当前节点的驱逐指令即可实现驱逐容器组操作,不需要用户具备专业技能,操作便捷。且其具体的迁移过程和驱逐进度进行了页面显示,解决现有驱逐过程不可视的问题,便于用户了解驱逐进程。

A method, system and device for expelling container group

【技术实现步骤摘要】
一种驱逐容器组的方法、系统及装置
本专利技术涉及集群容器组驱逐
,尤其是一种驱逐容器组的方法、系统及装置。
技术介绍
在容器技术时代,大量的业务应用场景,通过Kubernetes(一个用于容器集群的自动化部署、扩容以及运维的开源平台)容器编排技术上云。有时Kubernetes集群下节点需要升级维护,如节点内核升级、硬件资源更换等操作,这些操作需要尽可能少的影响Kubernetes集群上运行的业务,需要进行驱逐容器组操作。Kubernetes集群下的drain命令支持该操作场景,然而drain为底层命令,用户在进行相应操作时,需要调用底层命令,对用户的专业技能需求较高,通常不方便操作。
技术实现思路
本专利技术提供了一种驱逐容器组的方法、系统及装置,用于解决客户自主进行驱逐容器组操作不容易实现的问题。为实现上述目的,本专利技术采用下述技术方案:本专利技术第一方面提供了一种驱逐容器组的方法,所述方法包括以下步骤:获取容器组驱逐触发指令,关闭当前节点调度;基于API接口,调用驱逐命令,采用多线程并发异步驱逐容器组。进一步地,所述方法在获取驱逐指令之后,调用驱逐命令之前还包括步骤:将当前节点下需迁移的容器组信息进行保存。进一步地,所述方法在调用驱逐命令后,还包括步骤:获取需迁移的容器组,并不断获取已迁移的容器组,计算驱逐进度,将所述驱逐进度进行页面显示。进一步地,所述需迁移的容器组从保存的容器组信息中获取。进一步地,所述不断获取已迁移的容器组,计算驱逐进度的具体过程为:获取当前节点中处于停止状态的容器组;通过表达式计算得到驱逐进度。进一步地,所述方法在调用驱逐命令后,还包括显示容器组列表的步骤;所述容器组列表的初始列表中包括目标节点的所有容器组信息,随着驱逐的进行,将已经完成迁移的容器组从所述初始列表中删除。本专利技术第二方面提供了一种驱逐容器组的系统,所述系统包括:驱逐触发单元,用于获取容器组驱逐触发指令,关闭当前节点调度;驱逐执行单元,基于API接口,调用驱逐命令,采用多线程并发异步驱逐容器组。进一步地,所述系统还包括:存储单元,用于保存需迁移的容器组信息;显示单元,基于需迁移的容器组和已迁移的容器组,计算驱逐进度,并将所述驱逐进度进行页面显示。本专利技术第三方面提供了一种驱逐容器组的装置,所述装置包括设置在业务端的驱逐触发模块,所述驱逐触发模块在接收到触发指令后,关闭当前节点调度,并基于API接口,调用驱逐命令,采用多线程并发异步驱逐容器组。进一步地,所述装置还包括设置在业务端的存储模块和显示模块,所述存储模块用于保存当前节点需迁移的容器组信息;所述显示模块分别获取需迁移的容器组和已迁移的容器组,计算并显示驱逐进度。
技术实现思路
中提供的效果仅仅是实施例的效果,而不是专利技术所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:本专利技术面向用户设置驱逐容器组的触发指令,在获取到该指令后,通过API接口调用驱逐命令,并将驱逐进程进行页面显示,用户只需触发当前节点的驱逐指令即可实现驱逐容器组操作,不需要用户具备专业技能,操作便捷。且其具体的迁移过程和驱逐进度进行了页面显示,解决现有驱逐过程不可视的问题,便于用户了解驱逐进程。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术所述方法的流程示意图;图2是本专利技术所述方法其一实施例的流程示意图;图3是本专利技术所述系统的结构示意图;图4是本专利技术所述装置的工作原理示意图。具体实施方式为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本专利技术进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本专利技术的不同结构。为了简化本专利技术的公开,下文中对特定例子的部件和设置进行描述。此外,本专利技术可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本专利技术省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本专利技术。如图1所示,一种驱逐容器组的方法,包括以下步骤:S1,获取容器组驱逐触发指令,关闭当前节点调度;S2,基于API接口,调用驱逐命令,采用多线程并发异步驱逐容器组。步骤S1中,驱逐触发指令是针对某一业务节点的,在接收到驱逐触发指令后,首先判断集群中当前节点调度是否关闭,若未关闭,则调用Kubernetes集群提供API关闭集群当前节点调度,否则会造成驱逐失败。步骤S2中,驱逐是基于底层Kubernetes集群上层的操作,驱逐命令对接Kubernetes集群提供的API,迁移功能收到API的调用后进行。在调用驱逐命令后,当前节点内需迁移的容器组通过多线程并发异步驱逐至其他业务节点。如图2所示,本实施例中的方法在获取驱逐指令之后,调用驱逐命令之前还包括步骤:S12,将当前节点下需迁移的容器组信息进行保存;在调用驱逐命令后,还包括步骤:S3,获取需迁移的容器组,并不断获取已迁移的容器组,计算驱逐进度,将所述驱逐进度进行页面显示。其中需迁移的容器组从保存的容器组信息中获取。步骤S12中的容器组信息包括容器组和名称和时间戳,时间戳是表征容器组身份的唯一识别信息。步骤S3中,不断获取已迁移的容器组,计算驱逐进度的具体过程为:获取当前节点中处于停止状态的容器组;通过表达式计算得到驱逐进度。在驱逐过程中,被迁移的容器组会处于停止(Terminating)状态,在迁移完成后,会改变该状态,因此通过获取当前节点处于停止状态的容器组可计算已迁移的容器组,从而计算驱逐进度。在上述实施例的基础上,本实施例在调用驱逐命令后,还包括显示容器组列表的步骤。容器组列表的初始列表中包括目标节点的所有容器组信息,随着驱逐的进行,将已经完成迁移的容器组从所述初始列表中删除,待驱逐过程结束后,容器组列表中仅剩下当前节点无需迁移的容器组,便于用户对容器组的迁移过程及各容器组迁移属性的进一步了解。如图3所示,本专利技术一种驱逐容器组的系统,包括驱逐触发单元1、存储单元2、驱逐执行单元3和显示单元4。驱逐触发单元1用于获取容器组驱逐触发指令,关闭当前节点调度;存储单元2用于保存需迁移的容器组信息;驱逐执行单元3基于API接口,调用驱逐命令,采用多线程并发异步驱逐容器组;显示单元4基于需迁移的容器组和已迁移的容器组,计算驱逐进度,并将所述驱逐进度进行页面显示。本实施例的驱逐容器组系统能够实现上述驱逐容器组方法的步骤,并得到相同的效果。如图4所示,本专利技术一种驱逐容器组的装置,该装本文档来自技高网
...

【技术保护点】
1.一种驱逐容器组的方法,其特征是,所述方法包括以下步骤:/n获取容器组驱逐触发指令,关闭当前节点调度;/n基于API接口,调用驱逐命令,采用多线程并发异步驱逐容器组。/n

【技术特征摘要】
1.一种驱逐容器组的方法,其特征是,所述方法包括以下步骤:
获取容器组驱逐触发指令,关闭当前节点调度;
基于API接口,调用驱逐命令,采用多线程并发异步驱逐容器组。


2.根据权利要求1所述驱逐容器组的方法,其特征是,所述方法在获取驱逐指令之后,调用驱逐命令之前还包括步骤:
将当前节点下需迁移的容器组信息进行保存。


3.根据权利要求2所述驱逐容器组的方法,其特征是,所述方法在调用驱逐命令后,还包括步骤:
获取需迁移的容器组,并不断获取已迁移的容器组,计算驱逐进度,将所述驱逐进度进行页面显示。


4.根据权利要求3所述驱逐容器组的方法,其特征是,所述需迁移的容器组从保存的容器组信息中获取。


5.根据权利要求4所述驱逐容器组的方法,其特征是,所述不断获取已迁移的容器组,计算驱逐进度的具体过程为:
获取当前节点中处于停止状态的容器组;
通过表达式计算得到驱逐进度。


6.根据权利要求1所述驱逐容器组的方法,其特征是,所述方法在调用驱逐命令后,还包括显示容器组列表的步骤;所述容器组...

【专利技术属性】
技术研发人员:李龙峰张东
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

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

1