CN117075942A - 基于DaemonSet控制器的节点Pod管理方法及系统 - Google Patents

基于DaemonSet控制器的节点Pod管理方法及系统 Download PDF

Info

Publication number
CN117075942A
CN117075942A CN202311099560.2A CN202311099560A CN117075942A CN 117075942 A CN117075942 A CN 117075942A CN 202311099560 A CN202311099560 A CN 202311099560A CN 117075942 A CN117075942 A CN 117075942A
Authority
CN
China
Prior art keywords
pod
version
node
deleted
daemonset
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311099560.2A
Other languages
English (en)
Inventor
幸大树
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongdian Cloud Computing Technology Co ltd
Original Assignee
Zhongdian Cloud Computing Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhongdian Cloud Computing Technology Co ltd filed Critical Zhongdian Cloud Computing Technology Co ltd
Priority to CN202311099560.2A priority Critical patent/CN117075942A/zh
Publication of CN117075942A publication Critical patent/CN117075942A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/62Uninstallation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种基于DaemonSet的节点Pod管理方法及系统,涉及云资产配置领域。该方法的步骤包括:根据升级请求中的节点标签选中对应节点的pod进行升级,在升级过程中,对每一个删除的pod进行实时监测,若监测到未选中的pod删除,则通过DaemonSet控制器将删除的pod回溯到删除前的版本。本发明只会根据升级请求升级对应的pod,在未选中的pod删除时,本发明会通过DaemonSet控制器将删除的pod回溯至删除前的版本。因此,本发明在升级完成后,能够使得其余不需要升级的pod版本不会发生变化,进而保证所有pod的版本匹配,避免升级完成后业务受到影响的情形。

Description

基于DaemonSet控制器的节点Pod管理方法及系统
技术领域
本发明涉及云资产配置领域,具体涉及一种基于DaemonSet的节点Pod管理方法及系统。
背景技术
Kubernetes(也称k8s或“kube”)是一个开源的容器编排平台,可以自动完成在部署、管理和扩展容器化应用过程中涉及的许多手动操作。Kubernetes可以构建一个容器(Container)的调度服务,以让用户通过Kubernetes系统来进行容器集群的管理,Kubernetes集群可跨本地、公共云、私有云或混合云部署主机。
在Kubernetes系统中,用户可操作的表述性状态传递(RepresentationalStateTransfer,REST)对象通常包括三个,即Pod(容器集)、服务(Service)和冗余控制器(ReplicationController)。Pod是Kubernetes系统最基本的部署调度单元,一个Pod可以包括多个工作于同一节点的容器,同一个Pod包括的容器拥有相同的网络命名空间网络协议(InternetProtocol,IP)地址以及存储配额。Service是Pod的路由代理抽象,ReplicationController是Pod的复制抽象,Service和ReplicationController都可以通过标签(label)与Pod进行关联。
DaemonSet确保全部(或者某些)节点上运行一个Pod的副本。当有节点加入集群时,也会为他们新增一个Pod。当有节点从集群移除时,这些Pod也会被回收。删除DaemonSet将会删除它创建的所有Pod。
目前,基于kubernetes daemonset控制器对pod进行升级的方法一般为:按照节点标签选择对应的节点pod进行升级。
但是,在升级完成后会出现业务不可用的情形,在后续的调研中发现业务不可用的原因部分pod的版本不对。
发明内容
针对现有技术中存在的缺陷,本发明解决的技术问题为:在对选中的pod进行升级时,如何保证其余pod的版本不变。
为达到以上目的,本发明提供的基于DaemonSet控制器的节点Pod管理方法,包括以下步骤:根据升级请求中的节点标签选中对应节点的pod进行升级,在升级过程中,对每一个删除的pod进行实时监测,若监测到未选中的pod删除,则通过DaemonSet控制器将删除的pod回溯到删除前的版本。
在上述技术方案的基础上,所述DaemonSet控制器存储有pod的版本记录信息;所述通过DaemonSet控制器将删除的pod回溯到删除前的版本的流程包括:DaemonSet控制器回溯当前pod的版本记录信息、并从中选中最近一次的版本作为回溯版本,根据回溯版本对当前pod进行回溯。
在上述技术方案的基础上,该方法还包括以下步骤:当监测到某个pod升级异常时,停止所有pod的升级操作。
在上述技术方案的基础上,在对pod进行升级之前,还包括以下步骤:在DaemonSet配置中添加扩展字段,其代表支持对选中的节点pod进行升级。
在上述技术方案的基础上,该方法具体包括以下步骤:
S1:收到用户发送的升级请求后,根据升级请求中的节点标签选中1个对应节点的pod,转到S2;
S2:对当前pod进行删除后根据升级请求的版本进行升级,判断升级过程中是否发生异常,若不是,代表当前pod升级成功,转到S3,若是,代表升级异常,中止流程并告警;
S3:判断升级请求中的所有pod是否升级完成,若是,结束,否则选择下一个pod后转到S2。
在执行S2至S3的过程中,还包括以下步骤:对每一个删除的pod进行实时监测,若监测到未选中的pod删除,则通过DaemonSet控制器回溯当前pod的版本记录信息、并从中选中最近一次的版本作为回溯版本,根据回溯版本对当前pod进行回溯。
本发明提供的基于DaemonSet控制器的节点Pod管理系统,包括pod升级模块、异常监测模块和pod回溯模块;
pod升级模块用于:根据升级请求中的节点标签选中对应节点的pod进行升级;
异常监测模块用于:在pod升级模块的工作过程中,对每一个删除的pod进行实时监测,若监测到未选中的pod删除,则向pod回溯模块发送回溯信号;
pod回溯模块用于:收到pod回溯信号后,调用DaemonSet控制器将删除的pod回溯到删除前的版本。
在上述技术方案的基础上,所述DaemonSet控制器存储有pod的版本记录信息;所述pod回溯模块的工作流程包括:调用DaemonSet控制器回溯当前pod的版本记录信息、并从中选中最近一次的版本作为回溯版本,根据回溯版本对当前pod进行回溯。
在上述技术方案的基础上,所述异常监测模块还用于:监测pod的升级过程,当监测到某个pod升级异常时,停止所有pod的升级操作。
在上述技术方案的基础上,该系统还包括升级规则配置模块,其用于:在DaemonSet配置中添加扩展字段,其代表支持对选中的节点pod进行升级。
与现有技术相比,本发明的优点在于:
(1)本发明只会根据升级请求升级对应的pod,在未选中的pod删除时,本发明会通过DaemonSet控制器将删除的pod回溯至删除前的版本。因此,本发明在升级完成后,能够使得其余不需要升级的pod版本不会发生变化,进而保证所有pod的版本匹配,避免升级完成后业务受到影响的情形。
(2)本发明能够在某个pod升级异常时即时停止整个升级程序,避免了再全部升级完成后才发现因升级异常而导致业务不可用的情况;即本发明达到了“发现问题立即处理”效果,不仅提高了工作效率,而且提升了集群和业务的稳定性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中基于DaemonSet控制器的节点Pod管理方法的流程图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
首先介绍本发明的研发原理。
发明人研究发现,现有技术中出现部分pod的版本错误的原因为:在升级选中节点的pod的过程中,部分pod会意外删除,而对于删除后的节点会自动更新至最新版本,当最新版本与升级后的版本不同时,则会超出运维操作的期望,导致不期望升级的节点错误的升级,可能会影响业务。
本发明实施例中的基于DaemonSet控制器的节点Pod管理方法,包括以下步骤:根据升级请求中的节点标签选中对应节点的pod进行升级,在升级过程中,对每一个删除的pod进行实时监测,若监测到未选中的pod删除,则通过DaemonSet控制器将删除的pod回溯到删除前的版本。
由此可知,本发明只会根据升级请求升级对应的pod,在未选中的pod删除时,本发明会通过DaemonSet控制器将删除的pod回溯至删除前的版本。因此,本发明在升级完成后,能够使得其余不需要升级的pod版本不会发生变化,进而保证所有pod的版本匹配,避免升级完成后业务受到影响的情形。
优选的,该方法在对pod进行升级之前,还包括以下步骤:在DaemonSet控制器配置中添加扩展字段,其代表支持对选中的节点pod进行升级。
优选的,DaemonSet控制器存储有pod的版本记录信息(包括当前版本和历史版本);在此基础上,该方法中通过DaemonSet控制器将删除pod回溯到删除前的版本的流程包括:DaemonSet控制器回溯当前pod的版本记录信息、并从中选中最近一次的版本作为回溯版本,根据回溯版本对当前pod进行回溯。
优选的,该方法还包括以下步骤:当监测到某个pod升级异常时(即升级出错),停止所有pod的升级操作;等待维人员研判异常原因,进一步选择继续升级或者回滚升级,若选择继续升级则重新开始本发明的步骤。
由此可知,本发明能够在某个pod升级异常时即时停止整个升级程序,避免了再全部升级完成后才发现因升级异常而导致业务不可用的情况;即本发明达到了“发现问题立即处理”效果,不仅提高了工作效率,而且提升了集群和业务的稳定性。
优选的,参见图1所示,本发明实施例中的基于DaemonSet控制器的节点Pod管理方法,具体包括以下步骤:
S1:收到用户发送的升级请求后,根据升级请求中的节点标签选中1个对应节点的pod,转到S2。
S2:对当前pod进行删除后根据升级请求的版本进行升级,判断升级过程中是否发生异常,若不是,代表当前pod升级成功,转到S3,若是,代表升级异常,此时中止流程并告警,待确认继续升级后重新执行S1。
S3:判断升级请求中的所有pod是否升级完成,若是,结束,否则选择下一个pod后转到S2。
在执行S2至S3的过程中,还包括以下步骤:对每一个删除的pod进行实时监测,若监测到未选中的pod删除,则通过DaemonSet控制器回溯当前pod的版本记录信息、并从中选中最近一次的版本作为回溯版本,根据回溯版本对当前pod进行回溯。
本发明提供的基于DaemonSet控制器的节点Pod管理系统,包括升级规则配置模块、pod升级模块、异常监测模块和pod回溯模块。
升级规则配置模块用于:在对pod进行升级之前,在DaemonSet控制器配置中添加扩展字段,其代表支持对选中的节点pod进行升级。
pod升级模块用于:根据升级请求中的节点标签选中对应节点的pod进行升级。
异常监测模块用于:在pod升级模块的工作过程中,对每一个删除的pod进行实时监测,若监测到未选中的pod删除,则向pod回溯模块发送回溯信号。监测pod的升级过程,当监测到某个pod升级异常时,停止所有pod的升级操作。
pod回溯模块用于:收到pod回溯信号后,调用DaemonSet控制器将删除的pod回溯到删除前的版本;DaemonSet控制器存储有pod的版本记录信息,pod回溯模块的具体工作流程包括:调用DaemonSet控制器回溯当前pod的版本记录信息、并从中选中最近一次的版本作为回溯版本,根据回溯版本对当前pod进行回溯。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读存储介质上,计算机可读存储介质可以包括计算机可读存储介质(或非暂时性介质)和通信介质(或暂时性介质)。
如本领域普通技术人员公知的,术语计算机可读存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机可读存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
示例性的,计算机可读存储介质可以是前述实施例的电子设备的内部存储单元,例如电子设备的硬盘或内存。计算机可读存储介质也可以是电子设备的外部存储设备,例如电子设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。
以上仅为本发明实施例的具体实施方式,但本发明实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明实施例的保护范围之内。因此,本发明实施例的保护范围应以权利要求的保护范围为准。

Claims (9)

1.一种基于DaemonSet控制器的节点Pod管理方法,其特征在于,该方法包括以下步骤:根据升级请求中的节点标签选中对应节点的pod进行升级,在升级过程中,对每一个删除的pod进行实时监测,若监测到未选中的pod删除,则通过DaemonSet控制器将删除的pod回溯到删除前的版本。
2.如权利要求1所述的基于DaemonSet控制器的节点Pod管理方法,其特征在于:所述DaemonSet控制器存储有pod的版本记录信息;所述通过DaemonSet控制器将删除的pod回溯到删除前的版本的流程包括:DaemonSet控制器回溯当前pod的版本记录信息、并从中选中最近一次的版本作为回溯版本,根据回溯版本对当前pod进行回溯。
3.如权利要求1所述的基于DaemonSet控制器的节点Pod管理方法,其特征在于,该方法还包括以下步骤:当监测到某个pod升级异常时,停止所有pod的升级操作。
4.如权利要求1所述的基于DaemonSet控制器的节点Pod管理方法,其特征在于,在对pod进行升级之前,还包括以下步骤:在DaemonSet配置中添加扩展字段,其代表支持对选中的节点pod进行升级。
5.如权利要求1至4任一项所述的基于DaemonSet控制器的节点Pod管理方法,其特征在于,该方法具体包括以下步骤:
S1:收到用户发送的升级请求后,根据升级请求中的节点标签选中1个对应节点的pod,转到S2;
S2:对当前pod进行删除后根据升级请求的版本进行升级,判断升级过程中是否发生异常,若不是,代表当前pod升级成功,转到S3,若是,代表升级异常,中止流程并告警;
S3:判断升级请求中的所有pod是否升级完成,若是,结束,否则选择下一个pod后转到S2;
在执行S2至S3的过程中,还包括以下步骤:对每一个删除的pod进行实时监测,若监测到未选中的pod删除,则通过DaemonSet控制器回溯当前pod的版本记录信息、并从中选中最近一次的版本作为回溯版本,根据回溯版本对当前pod进行回溯。
6.一种基于DaemonSet控制器的节点Pod管理系统,其特征在于,该系统包括pod升级模块、异常监测模块和pod回溯模块;
pod升级模块用于:根据升级请求中的节点标签选中对应节点的pod进行升级;
异常监测模块用于:在pod升级模块的工作过程中,对每一个删除的pod进行实时监测,若监测到未选中的pod删除,则向pod回溯模块发送回溯信号;
pod回溯模块用于:收到pod回溯信号后,调用DaemonSet控制器将删除的pod回溯到删除前的版本。
7.如权利要求6所述的基于DaemonSet控制器的节点Pod管理系统,其特征在于;所述DaemonSet控制器存储有pod的版本记录信息;所述pod回溯模块的工作流程包括:调用DaemonSet控制器回溯当前pod的版本记录信息、并从中选中最近一次的版本作为回溯版本,根据回溯版本对当前pod进行回溯。
8.如权利要求6所述的基于DaemonSet控制器的节点Pod管理系统,其特征在于:所述异常监测模块还用于:监测pod的升级过程,当监测到某个pod升级异常时,停止所有pod的升级操作。
9.如权利要求6所述的基于DaemonSet控制器的节点Pod管理系统,其特征在于:该系统还包括升级规则配置模块,其用于:在DaemonSet配置中添加扩展字段,其代表支持对选中的节点pod进行升级。
CN202311099560.2A 2023-08-28 2023-08-28 基于DaemonSet控制器的节点Pod管理方法及系统 Pending CN117075942A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311099560.2A CN117075942A (zh) 2023-08-28 2023-08-28 基于DaemonSet控制器的节点Pod管理方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311099560.2A CN117075942A (zh) 2023-08-28 2023-08-28 基于DaemonSet控制器的节点Pod管理方法及系统

Publications (1)

Publication Number Publication Date
CN117075942A true CN117075942A (zh) 2023-11-17

Family

ID=88716912

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311099560.2A Pending CN117075942A (zh) 2023-08-28 2023-08-28 基于DaemonSet控制器的节点Pod管理方法及系统

Country Status (1)

Country Link
CN (1) CN117075942A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105049633A (zh) * 2015-08-18 2015-11-11 深圳市中兴物联科技有限公司 一种通讯模块的升级方法及装置
CN109408473A (zh) * 2018-10-30 2019-03-01 深圳市理奥网络技术有限公司 一种防止文件误删的方法、装置、设备以及存储介质
CN111736859A (zh) * 2019-03-25 2020-10-02 成都鼎桥通信技术有限公司 操作系统的版本更新方法、服务器以及终端
CN113467919A (zh) * 2021-07-19 2021-10-01 中国银行股份有限公司 基于区块链的流程管理方法、系统和存储介质
CN116302304A (zh) * 2022-09-09 2023-06-23 青岛聚看云科技有限公司 Pod处理方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105049633A (zh) * 2015-08-18 2015-11-11 深圳市中兴物联科技有限公司 一种通讯模块的升级方法及装置
CN109408473A (zh) * 2018-10-30 2019-03-01 深圳市理奥网络技术有限公司 一种防止文件误删的方法、装置、设备以及存储介质
CN111736859A (zh) * 2019-03-25 2020-10-02 成都鼎桥通信技术有限公司 操作系统的版本更新方法、服务器以及终端
CN113467919A (zh) * 2021-07-19 2021-10-01 中国银行股份有限公司 基于区块链的流程管理方法、系统和存储介质
CN116302304A (zh) * 2022-09-09 2023-06-23 青岛聚看云科技有限公司 Pod处理方法和装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
242030: "Kubernetes中Pod的升级和回滚", Retrieved from the Internet <URL:《https://blog.csdn.net/qq_30614345/article/details/131649116》> *
礁之: "K8S(4)DaemonSet", pages 1 - 3, Retrieved from the Internet <URL:《https://blog.csdn.net/rzy1248873545/article/details/125971180》> *

Similar Documents

Publication Publication Date Title
CN108683516B (zh) 一种应用实例的升级方法、装置和系统
CN107005426B (zh) 一种虚拟网络功能的生命周期管理方法及装置
CN104679611B (zh) 数据资源复制方法以及装置
US11888933B2 (en) Cloud service processing method and device, cloud server, cloud service system and storage medium
WO2021031889A1 (zh) 一种升级方法、通信设备以及计算机可读存储介质
CN103152390B (zh) 分布式存储系统的节点配置方法、装置、节点及系统
CN106657167B (zh) 管理服务器、服务器集群、以及管理方法
CN110932914B (zh) 部署方法、部署装置、混合云系统架构及计算机存储介质
US11740886B2 (en) Algorithm update method and apparatus
WO2017198156A1 (zh) 业务部署方法、装置和系统
CN104793981B (zh) 一种虚拟机集群的在线快照管理方法及装置
CN112162761A (zh) 自动化部署项目至公有云容器化平台的方法、系统及设备
CN111586022A (zh) 防火墙开墙验证方法、电子装置、计算机设备及存储介质
CN113821168A (zh) 一种共享存储迁移系统、方法及电子设备和存储介质
CN110620798A (zh) Ftp连接的控制方法、系统、设备和存储介质
CN109542841B (zh) 集群中创建数据快照的方法及终端设备
CN117075942A (zh) 基于DaemonSet控制器的节点Pod管理方法及系统
CN113448609B (zh) 一种容器的升级方法、装置、设备和存储介质
CN113746676B (zh) 基于容器集群的网卡管理方法、装置、设备、介质及产品
CN113391959A (zh) 电力监控系统容器升级回滚防误方法、装置、设备和介质
CN111124428A (zh) 一种基于中创中间件的应用自动化发布方法和相关装置
CN112579247A (zh) 确定任务状态的方法和装置
WO2022100719A1 (zh) 数据处理方法、装置、系统和计算机可读存储介质
CN111179097B (zh) 保单批改的方法、装置、电子设备和存储介质
JP5914267B2 (ja) データ復旧装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination