[go: up one dir, main page]

CN117472509A - Non-containerized application management method based on Kubernetes cluster equipment - Google Patents

Non-containerized application management method based on Kubernetes cluster equipment Download PDF

Info

Publication number
CN117472509A
CN117472509A CN202311415734.1A CN202311415734A CN117472509A CN 117472509 A CN117472509 A CN 117472509A CN 202311415734 A CN202311415734 A CN 202311415734A CN 117472509 A CN117472509 A CN 117472509A
Authority
CN
China
Prior art keywords
application
deployment
resource
containerized
configuration parameters
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
CN202311415734.1A
Other languages
Chinese (zh)
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.)
Asiainfo Technologies China Inc
Original Assignee
Asiainfo Technologies China Inc
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 Asiainfo Technologies China Inc filed Critical Asiainfo Technologies China Inc
Priority to CN202311415734.1A priority Critical patent/CN117472509A/en
Publication of CN117472509A publication Critical patent/CN117472509A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • 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/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/48Indexing scheme relating to G06F9/48
    • G06F2209/482Application

Landscapes

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

Abstract

本申请实施例提供了一种基于Kubernetes集群设备的非容器化应用管理方法,涉及云计算领域,应用于Kubernetes集群设备,其中,Kubernetes集群设备包括:至少一个Master节点,与Master节点对应的至少一个Node节点;Master节点还包括:非容器化应用NCA控制器;NCA控制器包括:应用部署模块和应用管理模块;Node节点还包括:非容器化应用代理NCAlet组件和非容器化应用;方法包括:通过应用部署模块,确定非容器化应用的部署资源更新,根据更新后的部署资源配置参数更新非容器化应用的状态资源;通过应用管理模块,确定状态资源更新,获取更新后的状态资源配置参数;通过NCAlet组件,根据更新后的状态资源配置参数,更新非容器化应用的应用状态。能够提高非容器化应用的运维管理效率。

The embodiment of this application provides a non-containerized application management method based on Kubernetes cluster equipment, which relates to the field of cloud computing and is applied to Kubernetes cluster equipment. The Kubernetes cluster equipment includes: at least one Master node, and at least one corresponding to the Master node. Node node; the Master node also includes: non-containerized application NCA controller; the NCA controller includes: application deployment module and application management module; the Node node also includes: non-containerized application agent NCAlet component and non-containerized application; the method includes: Through the application deployment module, the deployment resource update of the non-containerized application is determined, and the state resources of the non-containerized application are updated according to the updated deployment resource configuration parameters; through the application management module, the state resource update is determined and the updated state resource configuration parameters are obtained. ; Update the application status of non-containerized applications according to the updated status resource configuration parameters through the NCAlet component. It can improve the efficiency of operation and maintenance management of non-containerized applications.

Description

基于Kubernetes集群设备的非容器化应用管理方法Non-containerized application management method based on Kubernetes cluster equipment

技术领域Technical field

本申请涉及云计算技术领域,具体而言,本申请涉及一种基于Kubernetes集群设备的非容器化应用管理方法。This application relates to the field of cloud computing technology. Specifically, this application relates to a non-containerized application management method based on Kubernetes cluster equipment.

背景技术Background technique

云计算提供了一种以资源共享和按需分配为基础的高效、灵活、可扩展的计算资源管理方式,而容器化技术则提供了一种在云环境下部署和运行应用程序的有效手段。随着云计算的普及,越来越多的应用被逐步上云迁移到容器集群。Cloud computing provides an efficient, flexible, and scalable computing resource management method based on resource sharing and on-demand allocation, while containerization technology provides an effective means of deploying and running applications in a cloud environment. With the popularity of cloud computing, more and more applications are gradually moved to the cloud and moved to container clusters.

采用Kubernetes(简称K8s)对容器化应用进行管理已经成为一个标准。但由于存在各种复杂的业务系统和技术栈,仍旧有很多应用无法容器化,目前此类非容器化应用通常需要人工管理,人工管理易出错且对工作人员的能力要求高,并存在管理效率低下等问题。Using Kubernetes (K8s for short) to manage containerized applications has become a standard. However, due to the existence of various complex business systems and technology stacks, there are still many applications that cannot be containerized. Currently, such non-containerized applications usually require manual management. Manual management is error-prone and requires high staff capabilities and management efficiency. Problems such as inferiority.

在此情况下,亟需提供一种非容器化应用管理方案,实现非容器化应用的高效管理。In this case, there is an urgent need to provide a non-containerized application management solution to achieve efficient management of non-containerized applications.

发明内容Contents of the invention

本申请的目的旨在至少能解决上述的技术缺陷之一,本申请实施例所提供的技术方案如下:The purpose of this application is to solve at least one of the above technical defects. The technical solutions provided by the embodiments of this application are as follows:

第一方面,本申请实施例提供了一种基于Kubernetes集群设备的非容器化应用管理方法,应用于Kubernetes集群设备;In the first aspect, embodiments of this application provide a non-containerized application management method based on Kubernetes cluster equipment, which is applied to Kubernetes cluster equipment;

其中,Kubernetes集群设备包括:至少一个Master节点,与Master节点对应的至少一个Node节点;Among them, the Kubernetes cluster equipment includes: at least one Master node and at least one Node node corresponding to the Master node;

Master节点还包括:非容器化应用NCA控制器;The Master node also includes: non-containerized application NCA controller;

NCA控制器包括:应用部署模块和应用管理模块;The NCA controller includes: application deployment module and application management module;

Node节点还包括:非容器化应用代理NCAlet组件和非容器化应用;Node nodes also include: non-containerized application agent NCAlet components and non-containerized applications;

方法包括:Methods include:

通过应用部署模块,确定非容器化应用的部署资源更新,根据更新后的部署资源配置参数更新非容器化应用的状态资源;Through the application deployment module, determine the deployment resource update of the non-containerized application, and update the status resources of the non-containerized application according to the updated deployment resource configuration parameters;

通过应用管理模块,确定状态资源更新,获取更新后的状态资源配置参数;Through the application management module, determine the status resource update and obtain the updated status resource configuration parameters;

通过NCAlet组件,根据更新后的状态资源配置参数,更新非容器化应用的应用状态。Through the NCAlet component, the application status of the non-containerized application is updated according to the updated status resource configuration parameters.

在本申请的一种可选实施例中,方法还包括:In an optional embodiment of the present application, the method further includes:

通过自定义资源定义的方式,在Kubernetes集群设备中定义非容器化应用的部署资源模板和状态资源模板。Define the deployment resource template and status resource template of non-containerized applications in the Kubernetes cluster device by customizing resource definitions.

在本申请的一种可选实施例中,方法还包括:In an optional embodiment of the present application, the method further includes:

通过应用部署模块,获取初始部署资源配置参数,并根据初始部署资源配置参数更新非容器化应用的状态资源。Through the application deployment module, the initial deployment resource configuration parameters are obtained, and the status resources of the non-containerized application are updated according to the initial deployment resource configuration parameters.

在本申请的一种可选实施例中,确定非容器化应用的部署资源更新,具体包括:In an optional embodiment of this application, determining deployment resource updates for non-containerized applications specifically includes:

监听非容器化应用的部署资源配置参数,若确定非容器化应用的部署资源发生部署资源删除、部署资源副本配置变化和部署资源版本变化中的至少一项,则确定非容器化应用的部署资源更新。Monitor the deployment resource configuration parameters of the non-containerized application. If it is determined that at least one of the deployment resource deletion, deployment resource copy configuration change and deployment resource version change has occurred in the deployment resource of the non-containerized application, determine the deployment resource of the non-containerized application. renew.

在本申请的一种可选实施例中,方法具体包括:In an optional embodiment of the present application, the method specifically includes:

通过应用部署模块,确定非容器化应用的部署资源发生部署资源删除变化,对应将非容器化应用的状态资源删除;Through the application deployment module, it is determined that the deployment resources of the non-containerized application have changed in deployment resource deletion, and the state resources of the non-containerized application are correspondingly deleted;

通过应用管理模块,确定非容器化应用的状态资源删除,调用非容器化应用对应的NCAlet组件;Through the application management module, determine the state resource deletion of the non-containerized application and call the NCAlet component corresponding to the non-containerized application;

通过NCAlet组件,将非容器化应用从Kubernetes集群设备中删除。Remove non-containerized applications from Kubernetes cluster devices through the NCAlet component.

在本申请的一种可选实施例中,方法具体包括:In an optional embodiment of the present application, the method specifically includes:

通过应用部署模块,确定非容器化应用的部署资源发生部署资源副本配置变化,获取更新后的部署资源副本配置参数,根据更新后的部署资源副本配置参数更新非容器化应用的状态资源副本配置参数;Through the application deployment module, it is determined that the deployment resource copy configuration of the non-containerized application has changed, the updated deployment resource copy configuration parameters are obtained, and the state resource copy configuration parameters of the non-containerized application are updated according to the updated deployment resource copy configuration parameters. ;

通过应用管理模块,确定状态资源更新,获取更新后的状态资源副本配置参数;Through the application management module, determine the state resource update and obtain the updated state resource copy configuration parameters;

通过NCAlet组件,根据更新后的状态资源副本配置参数,删除和/或新增对应的非容器化应用副本。Through the NCAlet component, the corresponding non-containerized application copy is deleted and/or added based on the updated state resource copy configuration parameters.

在本申请的一种可选实施例中,方法还包括:In an optional embodiment of the present application, the method further includes:

通过应用部署模块,确定非容器化应用的部署资源发生部署资源版本变化,根据更新后的部署资源版本配置参数更新非容器化应用的状态资源版本;Through the application deployment module, it is determined that the deployment resource version of the non-containerized application has changed, and the status resource version of the non-containerized application is updated according to the updated deployment resource version configuration parameters;

通过应用管理模块,确定状态资源更新,获取更新后的状态资源版本配置参数;Through the application management module, determine the status resource update and obtain the updated status resource version configuration parameters;

通过NCAlet组件,根据更新后的状态资源版本配置参数,更新非容器化应用的版本。Through the NCAlet component, the version of the non-containerized application is updated according to the updated state resource version configuration parameters.

第二方面,本申请实施例提供了一种Kubernetes集群设备,Kubernetes集群设备包括:至少一个Master节点,与Master节点对应的至少一个Node节点;In the second aspect, embodiments of this application provide a Kubernetes cluster device. The Kubernetes cluster device includes: at least one Master node, and at least one Node node corresponding to the Master node;

Master节点还包括:非容器化应用NCA控制器;The Master node also includes: non-containerized application NCA controller;

NCA控制器包括:应用部署模块和应用管理模块;The NCA controller includes: application deployment module and application management module;

Node节点还包括:非容器化应用代理NCAlet组件和非容器化应用;Node nodes also include: non-containerized application agent NCAlet components and non-containerized applications;

其中,应用部署模块用于确定非容器化应用的部署资源更新,根据更新后的部署资源配置参数更新非容器化应用的状态资源;Among them, the application deployment module is used to determine the deployment resource update of the non-containerized application, and update the status resources of the non-containerized application according to the updated deployment resource configuration parameters;

应用管理模块用于确定状态资源更新,获取更新后的状态资源配置参数;The application management module is used to determine status resource updates and obtain updated status resource configuration parameters;

NCAlet组件用于根据更新后的状态资源配置参数,更新非容器化应用的应用状态。The NCAlet component is used to update the application status of non-containerized applications based on the updated status resource configuration parameters.

第三方面,本申请实施例提供了一种电子设备,该电子设备包括存储器、处理器及存储在存储器上的计算机程序,处理器执行计算机程序以实现上述任一实施例所提供的基于Kubernetes集群设备的非容器化应用管理方法的步骤。In the third aspect, embodiments of the present application provide an electronic device. The electronic device includes a memory, a processor, and a computer program stored on the memory. The processor executes the computer program to implement the Kubernetes-based cluster provided in any of the above embodiments. Steps for a device's non-containerized application management approach.

第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一实施例所提供的基于Kubernetes集群设备的非容器化应用管理方法。In the fourth aspect, embodiments of the present application provide a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the non-containerized application based on the Kubernetes cluster device provided in any of the above embodiments is implemented. management methods.

本申请实施例提供的技术方案带来的有益效果是:The beneficial effects brought by the technical solutions provided by the embodiments of this application are:

本方案通过在Kubernetes集群设备中引入非容器化应用NCA控制器和非容器化应用代理NCAlet组件,将非容器化应用纳入Kubernetes生态系统,可以通过Kubernetes实现容器化应用和非容器化应用的统一管理,减少管理的复杂性,提高非容器化应用的运维管理效率。This solution incorporates non-containerized applications into the Kubernetes ecosystem by introducing non-containerized application NCA controller and non-containerized application agent NCAlet components into Kubernetes cluster equipment. Unified management of containerized and non-containerized applications can be achieved through Kubernetes. , reduce the complexity of management and improve the efficiency of operation and maintenance management of non-containerized applications.

附图说明Description of the drawings

为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。In order to explain the technical solutions in the embodiments of the present application more clearly, the drawings needed to be used in the description of the embodiments of the present application will be briefly introduced below.

图1为本申请实施例提供的一种基于Kubernetes集群设备的非容器化应用管理方法的流程图;Figure 1 is a flow chart of a non-containerized application management method based on Kubernetes cluster equipment provided by an embodiment of the present application;

图2为本申请实施例提供的一种应用运维管理平台架构示意图之一;Figure 2 is one of the schematic diagrams of the architecture of an application operation and maintenance management platform provided by an embodiment of the present application;

图3为本申请实施例提供的一种应用运维管理平台架构示意图之二;Figure 3 is a second schematic diagram of the architecture of an application operation and maintenance management platform provided by an embodiment of the present application;

图4为本申请实施例提供的一种基于Kubernetes集群设备的非容器化应用管理方法的流程示意图;Figure 4 is a schematic flow chart of a non-containerized application management method based on Kubernetes cluster equipment provided by the embodiment of the present application;

图5为本申请实施例提供的一种Kubernetes集群设备的结构示意图;Figure 5 is a schematic structural diagram of a Kubernetes cluster device provided by an embodiment of this application;

图6为本申请实施例提供的一种电子设备的结构示意图。FIG. 6 is a schematic structural diagram of an electronic device provided by an embodiment of the present application.

具体实施方式Detailed ways

下面结合本申请中的附图描述本申请的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本申请实施例的技术方案的示例性描述,对本申请实施例的技术方案不构成限制。The embodiments of the present application are described below with reference to the drawings in the present application. It should be understood that the embodiments described below in conjunction with the accompanying drawings are exemplary descriptions for explaining the technical solutions of the embodiments of the present application, and do not limit the technical solutions of the embodiments of the present application.

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作、元件和/或组件,但不排除实现为本技术领域所支持其他特征、信息、数据、步骤、操作、元件、组件和/或它们的组合等。应该理解,当我们称一个元件被“连接”或“耦接”到另一元件时,该一个元件可以直接连接或耦接到另一元件,也可以指该一个元件和另一元件通过中间元件建立连接关系。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的术语“和/或”指示该术语所限定的项目中的至少一个,例如“A和/或B”可以实现为“A”,或者实现为“B”,或者实现为“A和B”。Those skilled in the art will understand that, unless expressly stated otherwise, the singular forms "a", "an", "the" and "the" used herein may also include the plural form. It should be further understood that the terms "comprising" and "including" used in the embodiments of this application mean that the corresponding features can be implemented as the presented features, information, data, steps, operations, elements and/or components, but do not exclude Implementation is other features, information, data, steps, operations, elements, components and/or their combinations supported by the technical field. It should be understood that when we refer to an element being "connected" or "coupled" to another element, it can be directly connected or coupled to the other element, or one element and the other element may be connected to the other element through intervening elements. Establish connections. Additionally, "connected" or "coupled" as used herein may include wireless connections or wireless couplings. The term "and/or" is used herein to indicate at least one of the items defined by the term. For example, "A and/or B" can be implemented as "A", or as "B", or as "A and B" ".

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。In order to make the purpose, technical solutions and advantages of the present application clearer, the embodiments of the present application will be further described in detail below with reference to the accompanying drawings.

下面对本申请涉及的术语及相关技术进行说明:The following describes the terms and related technologies involved in this application:

Kubernetes(以下简称K8s)是一个开源的容器编排工具,用于自动化应用程序的部署、扩展和管理。K8s提供了一种统一的方式来管理容器化应用程序,可以确保应用程序在分布式环境中高效运行。Kubernetes (hereinafter referred to as K8s) is an open source container orchestration tool used to automate the deployment, expansion and management of applications. K8s provides a unified way to manage containerized applications, ensuring that applications run efficiently in distributed environments.

Kubernetes集群(以下简称K8s集群)是指由多个设备组成的集合,这些设备被配置共同运行K8s,以创建和管理容器化应用程序。K8s集群中,设置至少一个Master节点(即控制节点)负责管理整个集群的状态和任务分配,而与Master节点对应的Node节点(即工作节点)则负责执行具体的工作任务。A Kubernetes cluster (hereinafter referred to as a K8s cluster) refers to a collection of multiple devices that are configured to run K8s together to create and manage containerized applications. In a K8s cluster, at least one Master node (i.e., control node) is set up to manage the status and task distribution of the entire cluster, while the Node node (i.e., working node) corresponding to the Master node is responsible for performing specific work tasks.

图2为本申请实施例提供的一种应用运维管理平台架构示意图之一,以图2所示的应用运维管理平台为例,对现有技术中K8s的实际应用架构进行说明,该应用运维管理平台架构基于K8s集群构建,支持上云的容器化应用的全生命周期管理,还提供了其他的功能服务,如应用伸缩、健康检查、故障恢复等。Figure 2 is one of the schematic diagrams of an application operation and maintenance management platform architecture provided by an embodiment of the present application. Taking the application operation and maintenance management platform shown in Figure 2 as an example, the actual application architecture of K8s in the prior art is explained. This application The operation and maintenance management platform architecture is built based on K8s cluster, supports the full life cycle management of containerized applications on the cloud, and also provides other functional services, such as application scaling, health check, fault recovery, etc.

其中,Master节点负责管理整个K8s集群的状态和配置信息,其上运行着多个核心组件,主要包括应用程序接口服务器(Application Program Interface Server,即API服务器或API Server)、分布式键值存储(ETCD)、控制器(Controller)和调度器(Scheduler)等,用于协调和管理集群中的各种资源。Among them, the Master node is responsible for managing the status and configuration information of the entire K8s cluster. It runs multiple core components, including the Application Program Interface Server (API server or API Server), distributed key-value storage ( ETCD), controller (Controller) and scheduler (Scheduler), etc., are used to coordinate and manage various resources in the cluster.

API服务器作为集群的前端接口,接收来自用户和其他组件的API(ApplicationProgram Interface,应用程序接口)请求,并将其转发到相应的模块处理。The API server serves as the front-end interface of the cluster, receiving API (ApplicationProgram Interface, application program interface) requests from users and other components, and forwarding them to the corresponding module for processing.

ETCD用于存储集群的配置信息、状态数据和元数据,以保证集群的一致性。ETCD is used to store cluster configuration information, status data, and metadata to ensure cluster consistency.

Controller负责监控集群中的资源对象状态变化,根据预定义的规则进行调节和维护。The Controller is responsible for monitoring the status changes of resource objects in the cluster and adjusting and maintaining them according to predefined rules.

Scheduler负责根据预定义条件和策略,将新创建的Pod调度到适合的Node节点上运行。Scheduler is responsible for scheduling newly created Pods to run on appropriate Node nodes based on predefined conditions and policies.

Node节点是运行K8s工作负载的机器,主要包括节点代理(Kubelet)、容器组(Pod)、容器运行时(Container Runtime)、网络代理(network-proxy)和可选插件(optional add-ons)等,用于承载容器的实际运行。Node is a machine that runs K8s workload, mainly including node agent (Kubelet), container group (Pod), container runtime (Container Runtime), network proxy (network-proxy) and optional add-ons (optional add-ons), etc. , used to host the actual operation of the container.

Kubelet负责与Master节点通信,接收Master节点的指令并管理节点上的容器。Kubelet is responsible for communicating with the Master node, receiving instructions from the Master node and managing containers on the node.

Pod是K8s中最小的可调度和管理的部署单位,一个Pod代表着集群中运行的一个进程,是一组运行在同一主机上的一个或多个相关容器的集合。Pod is the smallest schedulable and manageable deployment unit in K8s. A Pod represents a process running in the cluster and is a collection of one or more related containers running on the same host.

Container Runtime是负责在主机上创建、运行和管理容器的软件组件。Container Runtime is the software component responsible for creating, running and managing containers on the host.

Network-Proxy是一个K8s组件,负责管理网络流量,将流量路由到正确的Pod中。Network-Proxy is a K8s component responsible for managing network traffic and routing traffic to the correct Pod.

Optional add-ons用于扩展基本功能。如DNS插件提供服务发现和命名解析功能,UI插件提供了基于Web的用户界面,使得对集群进行管理、监控和操作变得更加直观、简单和易用。Optional add-ons are used to extend basic functionality. For example, the DNS plug-in provides service discovery and name resolution functions, and the UI plug-in provides a Web-based user interface, making cluster management, monitoring, and operation more intuitive, simple, and easy to use.

可以理解的是,K8s集群架构中,通常设置一个Master节点负责管理整个集群的状态和任务分配。但考虑实际应用需求,可设置多个Master节点来提高高可用性(HighAvailability,HA)。当使用单个Master节点时,如果Master节点发生故障,则整个集群将无法正常运行,引入多个Master节点可以提高集群的容错性和可靠性。It is understandable that in the K8s cluster architecture, a Master node is usually set up to manage the status and task distribution of the entire cluster. However, considering actual application requirements, multiple Master nodes can be set up to improve high availability (HighAvailability, HA). When using a single Master node, if the Master node fails, the entire cluster will not be able to operate normally. The introduction of multiple Master nodes can improve the fault tolerance and reliability of the cluster.

下面通过对几个示例性实施方式的描述,对本申请实施例的技术方案以及本申请的技术方案产生的技术效果进行说明。需要指出的是,下述实施方式之间可以相互参考、借鉴或结合,对于不同实施方式中相同的术语、相似的特征以及相似的实施步骤等,不再重复描述。The following describes the technical solutions of the embodiments of the present application and the technical effects produced by the technical solutions of the present application through the description of several exemplary embodiments. It should be noted that the following embodiments can be referred to, borrowed from, or combined with each other. The same terms, similar features, and similar implementation steps in different embodiments will not be repeatedly described.

图1为本申请实施例提供的一种基于Kubernetes集群设备的非容器化应用管理方法的流程图,如图1所示,本申请实施例提供了一种基于Kubernetes集群设备的非容器化应用管理方法,应用于Kubernetes集群设备,其中,Kubernetes集群设备包括:至少一个Master节点,与Master节点对应的至少一个Node节点;Figure 1 is a flow chart of a non-containerized application management method based on Kubernetes cluster equipment provided by an embodiment of the present application. As shown in Figure 1, an embodiment of the present application provides a non-containerized application management method based on Kubernetes cluster equipment. The method is applied to Kubernetes cluster equipment, where the Kubernetes cluster equipment includes: at least one Master node and at least one Node node corresponding to the Master node;

Master节点还包括:非容器化应用NCA控制器;The Master node also includes: non-containerized application NCA controller;

NCA控制器包括:应用部署模块和应用管理模块;The NCA controller includes: application deployment module and application management module;

Node节点还包括:非容器化应用代理NCAlet组件和非容器化应用。Node nodes also include: non-containerized application agent NCAlet components and non-containerized applications.

具体的,图3为本申请实施例提供的一种应用运维管理平台架构示意图之二,以图3所示的应用运维管理平台为例,对本实施例改进的K8s集群设备的实际应用架构进行说明,参见图2和图3,本实施例提供的改进的K8s集群设备在现有技术的K8s集群设备的基础上,新增了非容器化应用NCA(non-containerized applications Controller,非容器化应用)控制器、非容器化应用代理NCAlet组件和非容器化应用NCA。Specifically, Figure 3 is the second schematic diagram of an application operation and maintenance management platform architecture provided by an embodiment of the present application. Taking the application operation and maintenance management platform shown in Figure 3 as an example, the actual application architecture of the improved K8s cluster device in this embodiment is For explanation, see Figure 2 and Figure 3. The improved K8s cluster device provided in this embodiment adds a non-containerized application NCA (non-containerized applications Controller, non-containerized application) based on the existing K8s cluster device. Application) controller, non-containerized application agent NCAlet component and non-containerized application NCA.

其中,NCA控制器为Master节点中的组件,负责非容器化应用部署和管理。NCA控制器包括应用部署模块和应用管理模块。Among them, the NCA controller is a component in the Master node and is responsible for non-containerized application deployment and management. The NCA controller includes an application deployment module and an application management module.

应用部署模块用于监听非容器化应用的部署资源的变化,根据部署资源配置参数的变化,完成非容器化应用的状态资源的同步修改。The application deployment module is used to monitor changes in the deployment resources of non-containerized applications, and complete synchronous modification of the status resources of non-containerized applications based on changes in deployment resource configuration parameters.

应用管理模块用于监听非容器化应用的状态资源的变化,并根据状态资源配置参数的变化,调用NCAlet组件。The application management module is used to monitor changes in state resources of non-containerized applications and call the NCAlet component based on changes in state resource configuration parameters.

NCAlet组件提供非容器应用的管理能力和状态一致同步能力。基于更新的状态资源配置参数,根据预设调度规则进行对应的调度操作,实现非容器化应用的应用状态的更新。The NCAlet component provides management capabilities and consistent state synchronization capabilities for non-container applications. Based on the updated status resource configuration parameters, corresponding scheduling operations are performed according to the preset scheduling rules to update the application status of non-containerized applications.

可以理解的是,NCAlet组件提供的管理能力包括环境依赖检查、安装介质下载、部署应用以及安装完成后应用的启动、停止等,同时还可实现该节点上非容器应用健康检查、故障恢复等功能。进一步还可提供实现接口,方便接入各种各样应用的管理能力。It is understandable that the management capabilities provided by the NCAlet component include environment dependency checking, installation media download, application deployment, and application startup and stop after installation is completed. It can also implement non-container application health check, fault recovery and other functions on the node. . Furthermore, implementation interfaces can be provided to facilitate access to management capabilities of various applications.

可以理解的是,需在改进的K8s集群中预先定义资源(部署资源和状态资源)模板,运维人员提交的资源配置参数以资源模板为基础,资源模板设置方式以及资源模板具体包括的内容可根据实际需求确定。It is understandable that resource (deployment resources and status resources) templates need to be pre-defined in the improved K8s cluster. The resource configuration parameters submitted by operation and maintenance personnel are based on the resource template. The resource template setting method and the specific content of the resource template can be Determine based on actual needs.

例如,资源模板具体包括需要部署的主机列表、应用类型、相关的启动脚本、停止脚本和关于健康检查的相关配置等。For example, the resource template specifically includes the list of hosts that need to be deployed, application types, related startup scripts, stop scripts, and related configurations about health checks.

另外,预设调度规则用于指示NCAlet组件根据状态资源具体的变化完成对应的调度操作,预设调度规则的具体内容可根据实际需求进行设置。In addition, the preset scheduling rules are used to instruct the NCAlet component to complete corresponding scheduling operations according to specific changes in status resources. The specific content of the preset scheduling rules can be set according to actual needs.

对应的,基于Kubernetes集群设备的非容器化应用管理方法包括:Correspondingly, non-containerized application management methods based on Kubernetes cluster devices include:

步骤S101,通过应用部署模块,确定非容器化应用的部署资源更新,根据更新后的部署资源配置参数更新非容器化应用的状态资源。Step S101: Determine the deployment resource update of the non-containerized application through the application deployment module, and update the status resources of the non-containerized application according to the updated deployment resource configuration parameters.

具体的,运维人员在更改非容器化应用的部署资源配置时,将部署资源配置参数提交至Kubernetes集群设备的API Server,在步骤S101,应用部署模块监听API Server中的非容器化应用的部署资源是否更新(发生变化),当应用部署模块监听到部署资源更新后,获取更新后的部署资源配置参数,并根据该部署资源配置参数同步更新对应的非容器化应用的状态资源。Specifically, when the operation and maintenance personnel change the deployment resource configuration of the non-containerized application, they submit the deployment resource configuration parameters to the API Server of the Kubernetes cluster device. In step S101, the application deployment module monitors the deployment of non-containerized applications in the API Server. Whether the resources are updated (changed), when the application deployment module monitors the deployment resource update, obtains the updated deployment resource configuration parameters, and synchronously updates the corresponding non-containerized application status resources according to the deployment resource configuration parameters.

步骤S102,通过应用管理模块,确定状态资源更新,获取更新后的状态资源配置参数。Step S102: Use the application management module to determine status resource updates and obtain updated status resource configuration parameters.

具体的,在步骤S102,应用管理模块监听非容器化应用的状态资源是否更新(发生变化),当应用管理模块监听到状态资源更新后,获取更新后的状态资源配置参数,并调用NCAlet组件。Specifically, in step S102, the application management module monitors whether the status resource of the non-containerized application is updated (changed). When the application management module monitors the status resource update, it obtains the updated status resource configuration parameters and calls the NCAlet component.

步骤S103,通过NCAlet组件,根据更新后的状态资源配置参数,更新非容器化应用的应用状态。Step S103: Update the application status of the non-containerized application according to the updated status resource configuration parameters through the NCAlet component.

具体的,在步骤S103,通过NCAlet组件根据更新后的状态资源配置参数,以预设调度规则完成对应的调度操作,实现非容器化应用的应用状态更新,以保证非容器化应用的部署资源和状态资源一致性。Specifically, in step S103, the NCAlet component completes the corresponding scheduling operation with the preset scheduling rules according to the updated status resource configuration parameters, and implements the application status update of the non-containerized application to ensure the deployment resources and deployment of the non-containerized application. State resource consistency.

通过本实施例提供的非容器化应用管理方法,能够以云原生的方式,通过统一的入口kubectl命令进行非容器化应用生命周期的管理,完成企业内上云应用(容器化应用)和非容器化应用的统一管理。其中,容器化应用可包括虚拟机应用和物理机应用等。Through the non-containerized application management method provided in this embodiment, the non-containerized application life cycle can be managed in a cloud-native manner through the unified entry kubectl command, and the cloud application (containerized application) and non-containerized application can be completed within the enterprise. Unified management of applications. Among them, containerized applications can include virtual machine applications and physical machine applications.

在实际运维管理过程中,运维人员可通过执行kubectl命令操作K8s的APIServer,完成对非容器化应用生命周期的管理,提高运维效率,本实施例提供的方法在方便管理的基础上,同时使非容器化应用具备部分上云应用的特性,如健康检查、故障恢复等。In the actual operation and maintenance management process, operation and maintenance personnel can operate the K8s API Server by executing kubectl commands to complete the management of the non-containerized application life cycle and improve operation and maintenance efficiency. The method provided in this embodiment is based on convenient management. At the same time, non-containerized applications have some features of cloud applications, such as health check, fault recovery, etc.

本申请实施例提供的技术方案通过在Kubernetes集群设备中引入非容器化应用NCA控制器和非容器化应用代理NCAlet组件,将非容器化应用纳入Kubernetes生态系统,可以通过Kubernetes实现容器化应用和非容器化应用的统一管理,减少管理的复杂性,提高非容器化应用的运维管理效率。The technical solution provided by the embodiment of this application incorporates non-containerized applications into the Kubernetes ecosystem by introducing non-containerized application NCA controller and non-containerized application agent NCAlet components into Kubernetes cluster equipment, and can realize containerized applications and non-containerized applications through Kubernetes. Unified management of containerized applications reduces management complexity and improves the efficiency of operation and maintenance management of non-containerized applications.

在本申请的一种可选实施例中,方法还包括:In an optional embodiment of the present application, the method further includes:

通过自定义资源定义的方式,在Kubernetes集群设备中定义非容器化应用的部署资源模板和状态资源模板。Define the deployment resource template and status resource template of non-containerized applications in the Kubernetes cluster device by customizing resource definitions.

具体的,K8s向运维人员(即用户)提供扩展机制,CRD(Custom ResourceDefinition,自定义资源定义)机制是K8s提供的一种扩展API的方式,允许运维人员基于已有的K8s资源(如K8s中的资源对象Deployment和Configmap等)自定义资源类型,自定义资源类型可以像K8s原生资源一样进行管理,使运维人员具有在K8s集群中扩展应用程序管理的能力。Specifically, K8s provides an extension mechanism to operation and maintenance personnel (i.e. users). The CRD (Custom Resource Definition) mechanism is a way of extending the API provided by K8s, allowing operation and maintenance personnel to use existing K8s resources (such as Resource objects Deployment and Configmap in K8s, etc.) customize resource types. Custom resource types can be managed like K8s native resources, giving operation and maintenance personnel the ability to expand application management in K8s clusters.

本实施例提供的技术方案利用自定义资源定义的方式,在Kubernetes集群设备中定义非容器化应用的部署资源模板和状态资源模板。The technical solution provided in this embodiment uses custom resource definition to define the deployment resource template and status resource template of non-containerized applications in the Kubernetes cluster device.

可以理解的是,部署资源模板和状态资源模板是一种自定义资源类型,用于描述非容器化应用程序所需的资源,还需通过CRD机制自定义对应的规范,编写程序以实现通过NCA控制器和NCAlet组件监听部署资源和状态资源的完整生命周期管理(如创建、更新和删除等事件),并根据预设调度规则执行相应的调度操作。It is understandable that deployment resource templates and status resource templates are a custom resource type used to describe the resources required by non-containerized applications. The corresponding specifications need to be customized through the CRD mechanism and programs written to achieve NCA The controller and NCAlet components monitor the complete life cycle management of deployment resources and status resources (such as events such as creation, update, and deletion), and perform corresponding scheduling operations according to preset scheduling rules.

举例来说,通过CRD机制自定义,以声明式API创建非容器化应用管理所需的相关资源NCA CR(Non-Containerized Applications Custom Resource,非容器化应用自定义资源),NCA CR包括非容器化应用的部署资源模板和状态资源模板。For example, through CRD mechanism customization, a declarative API is used to create related resources NCA CR (Non-Containerized Applications Custom Resource) required for non-containerized application management. NCA CR includes non-containerized applications. The application's deployment resource template and state resource template.

部署资源用于定义应用程序副本集的创建、更新和删除,部署资源模板可包括应用部署的目标主机、运行环境、部署介质的地址等。状态资源用于管理有状态应用程序,状态资源模板可包括应用程序的副本集、副本的唯一标识符和网络标识符等。Deployment resources are used to define the creation, update, and deletion of application replica sets. Deployment resource templates can include the target host for application deployment, the running environment, the address of the deployment media, etc. State resources are used to manage stateful applications. State resource templates can include the application's replica set, unique identifiers of replicas, network identifiers, etc.

对应的,采用操作符Operator向K8s添加NCA控制器和NCAlet组件对应的调度逻辑,以实现自定义资源相对应的Kubernetes API对象的监听和NCA CR对象发生变化(运维人员通过操作kubectl命令完成NCA CR的创建、更新和删除等操作)时执行预设调度规则对应的调度操作。Correspondingly, the operator is used to add the scheduling logic corresponding to the NCA controller and NCAlet component to K8s to realize the monitoring of the Kubernetes API object corresponding to the custom resource and the change of the NCA CR object (the operation and maintenance personnel complete the NCA by operating the kubectl command Perform scheduling operations corresponding to the preset scheduling rules when creating, updating, deleting CRs, etc.).

可以理解的是,部署资源模板和状态资源模板的具体细节和字段定义,以及程序具体编写内容和预设调度规则的具体设置,均可根据实际需求自由定义。It can be understood that the specific details and field definitions of deployment resource templates and status resource templates, as well as the specific programming content of the program and the specific settings of the preset scheduling rules, can be freely defined according to actual needs.

本申请实施例提供的技术方案通过Kubernetes集群的扩展机制自定义资源定义机制,在Kubernetes集群设备中定义部署资源模板和状态资源模板,通过设置NCA控制器和NCAlet组件以及对应的程序,保证部署资源和状态资源的一致性,并实现非容器化应用的调度操作,提高非容器化应用的运维管理效率,实现容器化应用和非容器化应用的统一管理,减少管理的复杂性。The technical solution provided by the embodiment of this application customizes the resource definition mechanism through the expansion mechanism of the Kubernetes cluster, defines the deployment resource template and status resource template in the Kubernetes cluster device, and ensures the deployment of resources by setting the NCA controller and NCAlet components and corresponding programs. and state resource consistency, and realize the scheduling operation of non-containerized applications, improve the efficiency of operation and maintenance management of non-containerized applications, realize the unified management of containerized applications and non-containerized applications, and reduce the complexity of management.

在本申请的一种可选实施例中,方法还包括:In an optional embodiment of the present application, the method further includes:

通过应用部署模块,获取初始部署资源配置参数,并根据初始部署资源配置参数更新非容器化应用的状态资源。Through the application deployment module, the initial deployment resource configuration parameters are obtained, and the status resources of the non-containerized application are updated according to the initial deployment resource configuration parameters.

具体的,在完成了部署资源模板和状态资源模板的定义之后,对于非容器化应用在K8s集群上的首次管理,需进行一次初始信息的同步,即通过应用部署模块来获取初始部署资源配置参数,并依据初始部署资源配置参数来更新非容器化应用的状态资源,确保其与实际的部署资源配置保持一致。Specifically, after completing the definition of deployment resource templates and status resource templates, for the first management of non-containerized applications on the K8s cluster, an initial information synchronization is required, that is, the initial deployment resource configuration parameters are obtained through the application deployment module. , and update the status resources of the non-containerized application based on the initial deployment resource configuration parameters to ensure that they are consistent with the actual deployment resource configuration.

进一步,基于NCA控制器和NCAlet组件,根据预设调度规则实现的调度机制,当应用管理模块监听到状态资源更新后,获取更新后的状态资源配置参数,并调用NCAlet组件,根据更新后的状态资源配置参数,更新非容器化应用的应用状态。Furthermore, based on the NCA controller and NCAlet component, the scheduling mechanism is implemented according to the preset scheduling rules. When the application management module monitors the status resource update, it obtains the updated status resource configuration parameters and calls the NCAlet component. According to the updated status Resource configuration parameters to update the application status of non-containerized applications.

本申请实施例提供的技术方案通过应用部署模块获取初始部署资源配置参数,对应实现状态资源配置参数的更新和非容器化应用的应用状态更新,将非容器化应用纳入Kubernetes生态系统,可以通过Kubernetes实现容器化应用生命周期的全面管理和监控,减少管理的复杂性,使得非容器化应用的部署和管理更加灵活和高效。The technical solution provided by the embodiment of this application obtains the initial deployment resource configuration parameters through the application deployment module, corresponding to the update of the status resource configuration parameters and the application status update of the non-containerized application, and incorporates the non-containerized application into the Kubernetes ecosystem, which can be done through Kubernetes Achieve comprehensive management and monitoring of the containerized application life cycle, reduce management complexity, and make the deployment and management of non-containerized applications more flexible and efficient.

在本申请的一种可选实施例中,确定非容器化应用的部署资源更新,具体包括:In an optional embodiment of this application, determining deployment resource updates for non-containerized applications specifically includes:

监听非容器化应用的部署资源配置参数,若确定非容器化应用的部署资源发生部署资源删除、部署资源副本配置变化和部署资源版本变化中的至少一项,则确定非容器化应用的部署资源更新。Monitor the deployment resource configuration parameters of the non-containerized application. If it is determined that at least one of the deployment resource deletion, deployment resource copy configuration change and deployment resource version change has occurred in the deployment resource of the non-containerized application, determine the deployment resource of the non-containerized application. renew.

具体的,非容器化应用的部署资源变化包括:部署资源删除、部署资源副本配置变化和部署资源版本变化三种。基于上述三种变化,本实施例中根据实际需求确定预设调度规则,针对不同的变化类型,设置不同的调度操作。Specifically, changes in deployment resources for non-containerized applications include: deployment resource deletion, deployment resource copy configuration changes, and deployment resource version changes. Based on the above three changes, in this embodiment, preset scheduling rules are determined according to actual needs, and different scheduling operations are set for different types of changes.

可以理解的是,调度操作指令用于调度NCAlet组件完成对应的调度操作,“第一”、“第二”、“第三”仅作为对本申请中不同类型调度操作指令的区分,不限制调度操作指令的具体内容。It can be understood that the scheduling operation instructions are used to schedule the NCAlet component to complete the corresponding scheduling operations. "First", "second" and "third" are only used to distinguish different types of scheduling operation instructions in this application and do not limit the scheduling operations. The specific content of the instruction.

其中,部署资源删除指将已部署在K8s集群中的非容器化应用对应的部署资源完全删除,即彻底移除一个非容器化应用程序,包括对应该非容器化应用的所有副本和相关配置等。Among them, deployment resource deletion refers to completely deleting the deployment resources corresponding to the non-containerized application that has been deployed in the K8s cluster, that is, completely removing a non-containerized application, including all copies and related configurations corresponding to the non-containerized application, etc. .

部署资源副本配置变化指对已经部署在K8s集群中的非容器化应用对应的部署资源的副本配置进行更改,通过修改副本配置,可以调整非容器化应用程序在K8s集群中的规模、配置和功能。副本配置可包括副本数量、容器端口等相关参数。Deployment resource copy configuration changes refer to changing the copy configuration of deployment resources corresponding to non-containerized applications that have been deployed in the K8s cluster. By modifying the copy configuration, you can adjust the scale, configuration and functions of the non-containerized application in the K8s cluster. . The replica configuration can include the number of replicas, container port and other related parameters.

可以理解的是,考虑应用的高可用性和负载均衡的需求,应用常常会被部署在多个副本中,此时副本删除是指移除其中一个或多个副本,但仍保留其他副本运行,副本删除通常是为了调整应用的扩展性或性能需求,或者处理故障或升级。It is understandable that, considering the high availability and load balancing requirements of applications, applications are often deployed in multiple copies. At this time, copy deletion refers to removing one or more copies, but still keeping other copies running. Removal is typically done to adjust the application's scalability or performance needs, or to handle failures or upgrades.

非容器化应用的部署资源删除对应的是将整个非容器化应用从K8s集群中删除,意味着应用的所有组件和数据都会被删除(包括对应的所有副本),应用将不再可用。而非容器化应用的部署资源副本配置变化对应的副本删除,则是将应用的对应副本从K8s集群中删除,其他副本仍然可用,而不是将整个应用删除。Deleting the deployment resources of a non-containerized application corresponds to deleting the entire non-containerized application from the K8s cluster, which means that all components and data of the application will be deleted (including all corresponding copies), and the application will no longer be available. When deleting a copy corresponding to a change in the deployment resource copy configuration of a non-containerized application, the corresponding copy of the application is deleted from the K8s cluster, and other copies are still available, instead of deleting the entire application.

部署资源版本变化指升级或更新已部署在K8s集群中的非容器化应用对应的版本,通常涉及创建一个新版本的非容器化应用程序,并将其部署到K8s集群中。新版本可能涉及对原版本的bug修复、功能增强或性能改进等变化。Deploying resource version changes refers to upgrading or updating the corresponding version of a non-containerized application that has been deployed in the K8s cluster. It usually involves creating a new version of the non-containerized application and deploying it to the K8s cluster. The new version may involve bug fixes, feature enhancements or performance improvements and other changes to the original version.

通过应用部署模块确定非容器化应用的部署资源配置参数是否发生变化,若确定部署资源配置参数发生变化,例如部署资源发生部署资源删除、部署资源副本配置变化和部署资源版本变化中的至少一项,则确定非容器化应用的部署资源更新。Use the application deployment module to determine whether the deployment resource configuration parameters of the non-containerized application have changed. If it is determined that the deployment resource configuration parameters have changed, for example, at least one of deployment resource deletion, deployment resource copy configuration change, and deployment resource version change. , then determine the deployment resource update of the non-containerized application.

进一步,基于NCA控制器和NCAlet组件,以更新后的部署资源配置参数确定更新后的状态资源配置参数,并根据预设调度规则实现的调度机制,以部署资源更新的具体类型和更新后的状态资源配置参数,对应的更新非容器化应用的应用状态,确保其与实际的部署资源配置保持一致。Furthermore, based on the NCA controller and NCAlet components, the updated deployment resource configuration parameters are used to determine the updated status resource configuration parameters, and the scheduling mechanism implemented based on the preset scheduling rules is used to determine the specific type of deployment resource update and the updated status. Resource configuration parameters, correspondingly update the application status of non-containerized applications to ensure that they are consistent with the actual deployment resource configuration.

可以理解的是,应用部署模块用于监听非容器化应用的部署资源,应用部署模块可根据部署资源配置参数的变化情况,确定部署资源变化的具体类型,相应的,应用管理模块用于监听非容器化应用的状态资源,应用管理模块,可根据状态资源配置参数的变化情况,确定状态资源变化(对应部署资源变化)的具体类型,具体的程序编写和实现方式可根据实际需求确定。It can be understood that the application deployment module is used to monitor the deployment resources of non-containerized applications. The application deployment module can determine the specific type of deployment resource changes based on changes in deployment resource configuration parameters. Correspondingly, the application management module is used to monitor non-containerized applications. The state resources of containerized applications and the application management module can determine the specific types of state resource changes (corresponding to changes in deployment resources) based on changes in state resource configuration parameters. The specific program writing and implementation methods can be determined according to actual needs.

本申请实施例提供的技术方案以应用部署模块监听部署资源,判断是否发生部署资源删除、部署资源副本配置变化和部署资源版本变化三种类型的部署资源变化,可以针对性的根据非容器化应用的部署资源更新的具体类型触发执行的相应的调度操作,实现自动化和精细化的非容器化应用运维,并提高运维过程的可控性和稳定性。The technical solution provided by the embodiment of this application uses the application deployment module to monitor deployment resources and determine whether three types of deployment resource changes have occurred: deployment resource deletion, deployment resource copy configuration change, and deployment resource version change. It can be targeted based on non-containerized applications. The specific type of deployment resource update triggers the execution of corresponding scheduling operations, realizing automated and refined non-containerized application operation and maintenance, and improving the controllability and stability of the operation and maintenance process.

在本申请的一种可选实施例中,方法具体包括:In an optional embodiment of the present application, the method specifically includes:

通过应用部署模块,确定非容器化应用的部署资源发生部署资源删除变化,对应将非容器化应用的状态资源删除;Through the application deployment module, it is determined that the deployment resources of the non-containerized application have changed in deployment resource deletion, and the state resources of the non-containerized application are correspondingly deleted;

通过应用管理模块,确定非容器化应用的状态资源删除,调用非容器化应用对应的NCAlet组件;Through the application management module, determine the state resource deletion of the non-containerized application and call the NCAlet component corresponding to the non-containerized application;

通过NCAlet组件,将非容器化应用从Kubernetes集群设备中删除。Remove non-containerized applications from Kubernetes cluster devices through the NCAlet component.

具体的,应用部署模块监听部署资源,若通过应用部署模块,确定非容器化应用的部署资源发生部署资源删除变化,则根据部署资源的变化情况同步更新状态资源,对应将非容器化应用的状态资源删除。Specifically, the application deployment module monitors the deployment resources. If it is determined through the application deployment module that the deployment resources of the non-containerized application have been changed by deleting the deployment resources, the status resources will be updated synchronously according to the changes in the deployment resources, corresponding to the status of the non-containerized application. Resource deletion.

应用管理模块监听状态资源,若通过应用管理模块,确定非容器化应用的状态资源删除,则调用非容器化应用对应的NCAlet组件,并传递状态资源删除对应的第一调度操作指令。The application management module monitors state resources. If the application management module determines that the state resource of the non-containerized application has been deleted, it calls the NCAlet component corresponding to the non-containerized application and delivers the first scheduling operation instruction corresponding to the state resource deletion.

NCAlet组件接收对应的第一调度操作指令,确定对应的非容器化应用,将其在K8s集群设备上停止并删除。The NCAlet component receives the corresponding first scheduling operation instruction, determines the corresponding non-containerized application, stops and deletes it on the K8s cluster device.

本申请实施例提供的技术方案以应用部署模块监听部署资源,在确定发生部署资源删除后,针对性的对状态资源和对应的非容器化应用进行删除,整个非容器化应用的删除过程自动触发,无须运维人员干预,节省了运维人员的时间和精力,避免了人为操作的疏忽和错误,在提高了运维效率的同时,保证非容器化应用部署资源、状态资源和应用状态的一致性。The technical solution provided by the embodiment of this application uses the application deployment module to monitor deployment resources. After it is determined that the deployment resource is deleted, the state resources and the corresponding non-containerized applications are deleted in a targeted manner. The deletion process of the entire non-containerized application is automatically triggered. , without the need for operation and maintenance personnel to intervene, saving the time and energy of operation and maintenance personnel, avoiding human negligence and errors, while improving operation and maintenance efficiency, and ensuring the consistency of non-containerized application deployment resources, status resources and application status sex.

在本申请的一种可选实施例中,方法具体包括:In an optional embodiment of the present application, the method specifically includes:

通过应用部署模块,确定非容器化应用的部署资源发生部署资源副本配置变化,获取更新后的部署资源副本配置参数,根据更新后的部署资源副本配置参数更新非容器化应用的状态资源副本配置参数;Through the application deployment module, it is determined that the deployment resource copy configuration of the non-containerized application has changed, the updated deployment resource copy configuration parameters are obtained, and the state resource copy configuration parameters of the non-containerized application are updated according to the updated deployment resource copy configuration parameters. ;

通过应用管理模块,确定状态资源更新,获取更新后的状态资源副本配置参数;Through the application management module, determine the state resource update and obtain the updated state resource copy configuration parameters;

通过NCAlet组件,根据更新后的状态资源副本配置参数,删除和/或新增对应的非容器化应用副本。Through the NCAlet component, the corresponding non-containerized application copy is deleted and/or added based on the updated state resource copy configuration parameters.

具体的,应用部署模块监听部署资源,若通过应用部署模块,确定非容器化应用的部署资源发生部署资源副本配置变化,则根据部署资源副本配置变化获取更新后的部署资源副本配置参数,根据更新后的部署资源副本配置参数同步更新状态资源副本配置参数。Specifically, the application deployment module monitors the deployment resources. If it is determined through the application deployment module that the deployment resources of the non-containerized application have changed the deployment resource copy configuration, it will obtain the updated deployment resource copy configuration parameters based on the deployment resource copy configuration changes. After the resource copy configuration parameters are deployed, the status resource copy configuration parameters are synchronously updated.

应用管理模块监听状态资源,若通过应用管理模块,确定非容器化应用的状态资源副本配置参数变化,则获取更新后的状态资源副本配置参数,并调用对应的NCAlet组件,并传递副本配置变化对应的第二调度操作指令。The application management module monitors state resources. If the application management module determines that the state resource copy configuration parameters of the non-containerized application have changed, it obtains the updated state resource copy configuration parameters, calls the corresponding NCAlet component, and passes the copy configuration change response The second scheduling operation instruction.

NCAlet组件接收对应的第二调度操作指令,确定对应的非容器化应用副本,完成副本配置。The NCAlet component receives the corresponding second scheduling operation instruction, determines the corresponding non-containerized application copy, and completes the copy configuration.

可以理解的是,副本配置包括对应非容器化应用副本的删除和/或新增(包括同时出现部分副本删除和部分副本新增的情况),以保证非容器化应用的副本数量和副本部署情况,与部署资源副本配置参数一致,具体的调度操作类型和实现方式可根据实际需求确定。It can be understood that the copy configuration includes the deletion and/or addition of corresponding non-containerized application copies (including the simultaneous deletion of some copies and the addition of some copies) to ensure the number of copies and copy deployment of non-containerized applications. , consistent with the deployment resource copy configuration parameters, the specific scheduling operation type and implementation method can be determined according to actual needs.

本申请实施例提供的技术方案以应用部署模块监听部署资源,在确定发生部署资源副本配置变化后,根据更新后的部署资源副本配置参数更新状态资源副本配置参数,并进一步删除和/或新增对应的非容器化应用副本,整个副本管理过程自动触发,能够灵活的适应副本扩展、维护和故障处理等情况,为非容器化应用的管理提供便利,有效提高运维效率。The technical solution provided by the embodiments of this application uses the application deployment module to monitor deployment resources. After determining that a deployment resource copy configuration change has occurred, the state resource copy configuration parameters are updated according to the updated deployment resource copy configuration parameters, and further delete and/or add new ones. For corresponding non-containerized application copies, the entire copy management process is automatically triggered, which can flexibly adapt to copy expansion, maintenance, fault handling, etc., facilitate the management of non-containerized applications, and effectively improve operation and maintenance efficiency.

在本申请的一种可选实施例中,方法还包括:In an optional embodiment of the present application, the method further includes:

通过应用部署模块,确定非容器化应用的部署资源发生部署资源版本变化,根据更新后的部署资源版本配置参数更新非容器化应用的状态资源版本;Through the application deployment module, it is determined that the deployment resource version of the non-containerized application has changed, and the status resource version of the non-containerized application is updated according to the updated deployment resource version configuration parameters;

通过应用管理模块,确定状态资源更新,获取更新后的状态资源版本配置参数;Through the application management module, determine the status resource update and obtain the updated status resource version configuration parameters;

通过NCAlet组件,根据更新后的状态资源版本配置参数,更新非容器化应用的版本。Through the NCAlet component, the version of the non-containerized application is updated according to the updated state resource version configuration parameters.

具体的,非容器化应用进行版本更新的目的是满足引入新功能、修复bug、提升性能或者应对安全漏洞等需求。本实施例提供一种通过更新部署资源,自动化实现非容器化应用版本更新的方案。Specifically, the purpose of version updates for non-containerized applications is to meet needs such as introducing new features, fixing bugs, improving performance, or responding to security vulnerabilities. This embodiment provides a solution for automatically updating non-containerized application versions by updating deployment resources.

应用部署模块监听部署资源,若通过应用部署模块,确定非容器化应用的部署资源发生部署资源版本变化,则根据部署资源版本变化获取更新后的部署资源版本配置参数,根据更新后的部署资源版本配置参数同步更新状态资源版本配置参数。The application deployment module monitors the deployment resources. If it is determined through the application deployment module that the deployment resource version of the non-containerized application has changed, it will obtain the updated deployment resource version configuration parameters based on the deployment resource version change. According to the updated deployment resource version Configuration parameters synchronize and update status resource version configuration parameters.

应用管理模块监听状态资源,若通过应用管理模块,确定非容器化应用的状态资源版本配置参数变化,则获取更新后的状态资源版本配置参数,并调用对应的NCAlet组件,并传递版本变化对应的第三调度操作指令。The application management module monitors the status resources. If it is determined through the application management module that the status resource version configuration parameters of the non-containerized application have changed, it will obtain the updated status resource version configuration parameters, call the corresponding NCAlet component, and pass the version corresponding to the change. The third scheduling operation instruction.

NCAlet组件接收对应的第三调度操作指令,确定对应的非容器化应用,根据更新后的状态资源版本配置参数,对该非容器化应用进行版本更新。The NCAlet component receives the corresponding third scheduling operation instruction, determines the corresponding non-containerized application, and updates the version of the non-containerized application according to the updated status resource version configuration parameters.

本申请实施例提供的技术方案以应用部署模块监听部署资源,在确定发生部署资源版本配置变化后,根据更新后的部署资源版本配置参数更新状态资源版本配置参数,并进一步对非容器化应用进行版本更新,相比于传统的手动部署应用新版本的方法,本实施例可以自动化地更新应用的版本,简化部署流程,减少运维人员操作和负担,可以确保部署资源和状态资源与新版本相匹配,避免因版本更新而导致的数据不一致或异常状态,使得更新版本的过程更加高效、可靠和可控,为非容器化应用的管理提供便利,有效提高运维效率和应用的稳定性。The technical solution provided by the embodiments of this application uses the application deployment module to monitor deployment resources. After determining that a deployment resource version configuration change has occurred, the status resource version configuration parameters are updated according to the updated deployment resource version configuration parameters, and further the non-containerized application is processed. Version update: Compared with the traditional method of manually deploying a new version of an application, this embodiment can automatically update the application version, simplify the deployment process, reduce the operation and burden of operation and maintenance personnel, and ensure that the deployment resources and status resources are consistent with the new version. Matching avoids data inconsistencies or abnormal states caused by version updates, making the process of updating versions more efficient, reliable and controllable, facilitating the management of non-containerized applications, and effectively improving operation and maintenance efficiency and application stability.

下面再通过一个具体示例对本申请实施例方案的具体应用进行详细说明:The specific application of the embodiments of this application will be described in detail below through a specific example:

图4为本申请实施例提供的一种基于Kubernetes集群设备的非容器化应用管理方法的流程示意图,如图4所示,在完成部署资源模板和状态资源模板(可包括部署目标主机、应用类型、安装介质、应用端口、部署路径等)在K8s集群设备中的定义,以及NCA控制器和NCAlet组件对应的预设调度规则和程序具体编写内容(可包括启动脚本、停止脚本、健康检查相关配置等)的设置后,运维人员可基于K8s集群设备实现非容器化应用的运维管理。Figure 4 is a schematic flow chart of a non-containerized application management method based on Kubernetes cluster equipment provided by the embodiment of the present application. As shown in Figure 4, after completing the deployment of resource templates and status resource templates (which may include deployment target hosts, application types , installation media, application ports, deployment paths, etc.) in the K8s cluster device, as well as the preset scheduling rules and program specific writing content corresponding to the NCA controller and NCAlet components (which can include startup scripts, stop scripts, and health check-related configurations etc.), operation and maintenance personnel can implement operation and maintenance management of non-containerized applications based on K8s cluster devices.

运维人员需对非容器化应用配置更改时,使用命令行工具(如kubectl)创建一个非容器化应用部署资源对应的资源配置文件,定义要部署的资源对象,并将该资源配置文件发送到API服务器中,API服务器基于该资源配置文件完成部署资源的配置,若配置完成则确定资源apply完成。When operation and maintenance personnel need to change the configuration of a non-containerized application, use a command line tool (such as kubectl) to create a resource configuration file corresponding to the non-containerized application deployment resource, define the resource objects to be deployed, and send the resource configuration file to In the API server, the API server completes the configuration of the deployed resources based on the resource configuration file. If the configuration is completed, it is determined that the resource apply is completed.

应用部署模块监听(即watch)API服务器中的部署资源,当确定部署资源更新时,确定部署资源变化类型。The application deployment module monitors (i.e., watches) the deployment resources in the API server, and determines the change type of the deployment resources when it is determined that the deployment resources have been updated.

可以理解的是,非容器化应用的部署资源变化包括:部署资源删除、部署资源副本配置变化和部署资源版本变化三种。在判断具体的类型时,可同时分别判断是否发生对应的变化,或采用图4所示依次判断的方式,按顺序依次判断是否发生对应的变化,进一步,还可对不同类型设置优先级,当某变化发生时不进行后续变化(如确定部署资源删除,则不进行后续判断)。具体的部署资源变化类型判断方式可根据实际需求确定。It can be understood that changes in deployment resources for non-containerized applications include: deployment resource deletion, deployment resource copy configuration changes, and deployment resource version changes. When judging a specific type, you can judge whether corresponding changes have occurred at the same time, or use the sequential judgment method shown in Figure 4 to judge whether corresponding changes have occurred in sequence. Furthermore, you can also set priorities for different types. When a certain change occurs, no subsequent changes will be made (for example, if the deployment resource is determined to be deleted, no subsequent judgment will be made). The specific way to determine the type of deployment resource change can be determined based on actual needs.

当应用管理模块监听到状态资源更新后,根据更新的部署资源更新对应的状态资源,并判断状态资源变化类型(与部署资源变化类型对应)。可以理解的是,具体的状态资源变化类型判断方式与上述部署资源变化类型判断方式类似,可根据实际需求确定。After the application management module detects the status resource update, it updates the corresponding status resource according to the updated deployment resource, and determines the status resource change type (corresponding to the deployment resource change type). It can be understood that the specific method for judging the change type of state resources is similar to the method for judging the type of change of deployment resources mentioned above, and can be determined according to actual needs.

应用管理模块调用NCAlet组件,根据状态资源变化类型完成非容器化应用的应用状态的同步。The application management module calls the NCAlet component to complete the synchronization of the application status of non-containerized applications according to the status resource change type.

若确定状态资源变化类型为状态资源删除,则调度NCAlet组件停止并删除对应的非容器化应用。若状态资源配置参数(如副本配置参数和/或版本配置参数)变化,则对应的调度NCAlet组件删除和/或新增应用,和/或更新应用版本。If it is determined that the state resource change type is state resource deletion, the NCAlet component is scheduled to stop and delete the corresponding non-containerized application. If the status resource configuration parameters (such as copy configuration parameters and/or version configuration parameters) change, the corresponding scheduling NCAlet component deletes and/or adds applications, and/or updates the application version.

举例来说,若确定非容器化应用对应的副本数减少,则调度NCAlet组件停止并删除对应的副本。若确定非容器化应用对应的副本数增多,则调度NCAlet组件根据新增副本对应的配置参数,新增副本。For example, if it is determined that the number of copies corresponding to a non-containerized application has decreased, the NCAlet component is scheduled to stop and the corresponding copies are deleted. If it is determined that the number of copies corresponding to the non-containerized application has increased, the NCAlet component is scheduled to add new copies according to the configuration parameters corresponding to the new copies.

需要说明的是,可能存在减少副本数量与新增副本数量相同的情况,此时副本数不变,则调度NCAlet组件根据新增副本对应的配置参数,新增副本,并根据减少副本对应的配置参数,硬质并删除对应的副本。It should be noted that there may be a situation where the number of reduced replicas is the same as the number of new replicas. In this case, the number of replicas remains unchanged. Then the NCAlet component is scheduled to add replicas according to the configuration parameters corresponding to the new replicas, and according to the configuration corresponding to the reduced replicas. parameters, hard and delete the corresponding copy.

可以理解的是,非容器化应用的部署资源删除对应的是将整个非容器化应用从K8s集群中删除,意味着应用的所有组件和数据都会被删除(包括对应的所有副本),应用将不再可用。而非容器化应用的部署资源副本配置变化对应的副本删除,则是将应用的对应副本从K8s集群中删除,其他副本仍然可用,而不是将整个应用删除。It can be understood that deleting the deployment resources of a non-containerized application corresponds to deleting the entire non-containerized application from the K8s cluster, which means that all components and data of the application will be deleted (including all corresponding copies), and the application will no longer be available. Available again. When deleting a copy corresponding to a change in the deployment resource copy configuration of a non-containerized application, the corresponding copy of the application is deleted from the K8s cluster, and other copies are still available, instead of deleting the entire application.

若确定状态资源版本配置参数变化,则调度NCAlet组件,根据更新后的状态资源版本配置参数对非容器化应用的应用版本进行更新。If it is determined that the state resource version configuration parameters have changed, the NCAlet component is scheduled to update the application version of the non-containerized application according to the updated state resource version configuration parameters.

与现有的人工管理、开发脚本管理和配置工具管理的非容器化应用管理方式相比:Compared with the existing non-containerized application management methods of manual management, development script management and configuration tool management:

人工管理方式要求运维人员需具备相应的技能,对运维人员要求高,且由于不同运维人员技能水平和习惯不同,会造成应用部署的差异性,并且存在操作失误风险,运维管理效率低。The manual management method requires operation and maintenance personnel to have corresponding skills and has high requirements for operation and maintenance personnel. Moreover, due to the different skill levels and habits of different operation and maintenance personnel, it will cause differences in application deployment, and there is a risk of operational errors, which will affect the efficiency of operation and maintenance management. Low.

本申请实施例提供的技术方案通过自动化更新,可以确保应用部署和应用状态的一致性,无论是应用或副本的删除、新的副本部署还是版本升级,都能够保持应用状态的正确性和一致性,避免手动操作和人为错误,有效提高应用部署和管理的效率。The technical solution provided by the embodiments of this application can ensure the consistency of application deployment and application status through automated updates. Whether it is the deletion of an application or copy, the deployment of a new copy, or a version upgrade, the correctness and consistency of the application status can be maintained. , avoid manual operations and human errors, and effectively improve the efficiency of application deployment and management.

开发脚本管理和配置工具管理的方式,需采用shell脚本(一种命令语言,用于在Unix或Linux系统中批量执行命令,实现自动化任务)或ansible、saltstack(常见的配置管理工具,用于自动化部署、配置和管理服务器、虚拟机和容器等基础设施)之类的配置工具,通过约定格式的配置模板来进行管理操作。To develop script management and configuration tool management, you need to use shell scripts (a command language used to execute commands in batches in Unix or Linux systems to achieve automation tasks) or ansible or saltstack (common configuration management tools for automation) Configuration tools such as deploying, configuring and managing infrastructure such as servers, virtual machines and containers) perform management operations through configuration templates in an agreed format.

虽然相较于人工管理方式而言,运维管理效率具有一定的提高,但由于脚本和配置工具模板仍旧需要运维人员编写,不同的运维人员编写习惯不同,缺乏统一的管理,可靠性和一致性难以保证,并且需要花费大量的时间去验证脚本和配置工具模板的效果,如果换了操作系统环境,可能所有操作又要重新验证,应用部署完后,没有统一的应用管理入口,难以实现应用状态的自动更新和状态监控,运维管理效率低下。Although compared with manual management, the efficiency of operation and maintenance management has been improved to a certain extent, because scripts and configuration tool templates still need to be written by operation and maintenance personnel, and different operation and maintenance personnel have different writing habits. There is a lack of unified management, reliability and Consistency is difficult to guarantee, and it takes a lot of time to verify the effects of scripts and configuration tool templates. If the operating system environment is changed, all operations may need to be verified again. After the application is deployed, there is no unified application management entrance, making it difficult to implement Automatic updating and status monitoring of application status, operation and maintenance management are inefficient.

本申请实施例提供的技术方案将非容器化应用纳入Kubernetes生态系统,可以通过Kubernetes实现容器化应用和非容器化应用的统一管理,基于NCA控制器和NCAlet组件能够监听非容器化应用的部署资源,并在部署资源更新时,实现状态资源和应用状态的自动化更新,保持应用部署和应用状态的一致性,减少管理的复杂性,提高非容器化应用的运维管理效率。The technical solution provided by the embodiments of this application incorporates non-containerized applications into the Kubernetes ecosystem. Unified management of containerized applications and non-containerized applications can be achieved through Kubernetes. Based on the NCA controller and NCAlet components, the deployment resources of non-containerized applications can be monitored. , and when deploying resource updates, it can realize automatic updates of status resources and application status, maintain the consistency of application deployment and application status, reduce the complexity of management, and improve the efficiency of operation and maintenance management of non-containerized applications.

图5为本申请实施例提供的一种Kubernetes集群设备的结构示意图,如图5所示,Kubernetes集群设备50包括:至少一个Master节点510,与Master节点对应的至少一个Node节点520;Figure 5 is a schematic structural diagram of a Kubernetes cluster device provided by an embodiment of the present application. As shown in Figure 5, the Kubernetes cluster device 50 includes: at least one Master node 510, and at least one Node node 520 corresponding to the Master node;

Master节点还包括:非容器化应用NCA控制器511;The Master node also includes: non-containerized application NCA controller 511;

NCA控制器包括:应用部署模块5111和应用管理模块5112;The NCA controller includes: application deployment module 5111 and application management module 5112;

Node节点还包括:非容器化应用代理NCAlet组件521和非容器化应用522;The Node node also includes: non-containerized application agent NCAlet component 521 and non-containerized application 522;

其中,应用部署模块5111用于确定非容器化应用的部署资源更新,根据更新后的部署资源配置参数更新非容器化应用的状态资源;Among them, the application deployment module 5111 is used to determine the deployment resource update of the non-containerized application, and update the status resources of the non-containerized application according to the updated deployment resource configuration parameters;

应用管理模块5112用于确定状态资源更新,获取更新后的状态资源配置参数;The application management module 5112 is used to determine status resource updates and obtain updated status resource configuration parameters;

NCAlet组件521用于根据更新后的状态资源配置参数,更新非容器化应用522的应用状态。The NCAlet component 521 is used to update the application status of the non-containerized application 522 according to the updated status resource configuration parameters.

本实施例提供的技术方案通过在Kubernetes集群设备中引入非容器化应用NCA控制器和非容器化应用代理NCAlet组件,将非容器化应用纳入Kubernetes生态系统,可以通过Kubernetes实现容器化应用和非容器化应用的统一管理,减少管理的复杂性,提高非容器化应用的运维管理效率。The technical solution provided in this embodiment incorporates non-containerized applications into the Kubernetes ecosystem by introducing non-containerized application NCA controller and non-containerized application agent NCAlet components into Kubernetes cluster equipment, and can realize containerized applications and non-containerized applications through Kubernetes Unified management of containerized applications reduces management complexity and improves the efficiency of operation and maintenance management of non-containerized applications.

本申请实施例的装置可执行本申请实施例所提供的方法,其实现原理相类似,本申请各实施例的装置中的各模块所执行的动作是与本申请各实施例的方法中的步骤相对应的,对于装置的各模块的详细功能描述具体可以参见前文中所示的对应方法中的描述,此处不再赘述。The device of the embodiment of the present application can execute the method provided by the embodiment of the present application, and its implementation principle is similar. The actions performed by each module in the device of the embodiment of the present application are the same as the steps in the method of the embodiment of the present application. Correspondingly, for the detailed functional description of each module of the device, please refer to the description in the corresponding method shown above, and will not be described again here.

在本申请的一种可选实施例中,Kubernetes集群设备中定义有非容器化应用的部署资源模板和状态资源模板;部署资源模板和状态资源模板通过自定义资源定义的方式定义。In an optional embodiment of this application, deployment resource templates and status resource templates for non-containerized applications are defined in the Kubernetes cluster device; the deployment resource templates and status resource templates are defined through custom resource definitions.

在本申请的一种可选实施例中,应用部署模块还用于获取初始部署资源配置参数,并根据初始部署资源配置参数更新非容器化应用的状态资源。In an optional embodiment of the present application, the application deployment module is also used to obtain initial deployment resource configuration parameters, and update the status resources of the non-containerized application according to the initial deployment resource configuration parameters.

在本申请的一种可选实施例中,应用部署模块还用于监听非容器化应用的部署资源配置参数,若确定非容器化应用的部署资源发生部署资源删除、部署资源副本配置变化和部署资源版本变化中的至少一项,则确定非容器化应用的部署资源更新。In an optional embodiment of the present application, the application deployment module is also used to monitor the deployment resource configuration parameters of the non-containerized application. If it is determined that the deployment resource of the non-containerized application has been deleted, deployed resource copy configuration changes and deployment If at least one of the resource version changes occurs, the deployment resource update of the non-containerized application is determined.

在本申请的一种可选实施例中,应用部署模块还用于确定非容器化应用的部署资源发生部署资源删除变化,对应将非容器化应用的状态资源删除;In an optional embodiment of the present application, the application deployment module is also used to determine that the deployment resources of the non-containerized application have undergone deployment resource deletion changes, and correspondingly delete the status resources of the non-containerized application;

应用管理模块还用于确定非容器化应用的状态资源删除,调用非容器化应用对应的NCAlet组件;The application management module is also used to determine the state resource deletion of non-containerized applications and call the NCAlet component corresponding to non-containerized applications;

NCAlet组件还用于将非容器化应用从Kubernetes集群设备中删除。The NCAlet component is also used to remove non-containerized applications from Kubernetes cluster devices.

在本申请的一种可选实施例中,应用部署模块还用于确定非容器化应用的部署资源发生部署资源副本配置变化,获取更新后的部署资源副本配置参数,根据更新后的部署资源副本配置参数更新非容器化应用的状态资源副本配置参数;In an optional embodiment of the present application, the application deployment module is also used to determine that the deployment resources of the non-containerized application have changed the deployment resource copy configuration, obtain the updated deployment resource copy configuration parameters, and obtain the updated deployment resource copy configuration parameters according to the updated deployment resource copy. Configuration parameters update the state resource copy configuration parameters of non-containerized applications;

应用管理模块还用于确定状态资源更新,获取更新后的状态资源副本配置参数;The application management module is also used to determine status resource updates and obtain updated status resource copy configuration parameters;

NCAlet组件还用于根据更新后的状态资源副本配置参数,删除和/或新增对应的非容器化应用副本。The NCAlet component is also used to delete and/or add corresponding non-containerized application copies based on the updated state resource copy configuration parameters.

在本申请的一种可选实施例中,应用部署模块还用于确定非容器化应用的部署资源发生部署资源版本变化,根据更新后的部署资源版本配置参数更新非容器化应用的状态资源版本;In an optional embodiment of the present application, the application deployment module is also used to determine that the deployment resource version of the non-containerized application has changed, and update the status resource version of the non-containerized application according to the updated deployment resource version configuration parameters. ;

应用管理模块还用于确定状态资源更新,获取更新后的状态资源版本配置参数;The application management module is also used to determine status resource updates and obtain updated status resource version configuration parameters;

NCAlet组件还用于根据更新后的状态资源版本配置参数,更新非容器化应用的版本。The NCAlet component is also used to update the version of the non-containerized application based on the updated state resource version configuration parameters.

本申请实施例中提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,该处理器执行上述计算机程序以实现上述基于Kubernetes集群设备的非容器化应用管理方法的步骤,与相关技术相比可实现:通过在Kubernetes集群设备中引入非容器化应用NCA控制器和非容器化应用代理NCAlet组件,将非容器化应用纳入Kubernetes生态系统,可以通过Kubernetes实现容器化应用和非容器化应用的统一管理,减少管理的复杂性,提高非容器化应用的运维管理效率。An embodiment of the present application provides an electronic device, including a memory, a processor, and a computer program stored on the memory. The processor executes the above computer program to implement the steps of the above non-containerized application management method based on Kubernetes cluster equipment, Compared with related technologies, it can be achieved: By introducing non-containerized application NCA controller and non-containerized application agent NCAlet components into Kubernetes cluster equipment, non-containerized applications can be incorporated into the Kubernetes ecosystem, and containerized applications and non-containerized applications can be implemented through Kubernetes. Unified management of containerized applications reduces management complexity and improves the efficiency of operation and maintenance management of non-containerized applications.

在一个可选实施例中提供了一种电子设备,图6为本申请实施例提供的一种电子设备的结构示意图,如图6所示,电子设备60包括:处理器601和存储器603。其中,处理器601和存储器603相连,如通过总线602相连。可选地,电子设备60还可以包括收发器604,收发器604可以用于该电子设备与其他电子设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器604不限于一个,该电子设备60的结构并不构成对本申请实施例的限定。In an optional embodiment, an electronic device is provided. FIG. 6 is a schematic structural diagram of an electronic device provided by an embodiment of the present application. As shown in FIG. 6 , the electronic device 60 includes: a processor 601 and a memory 603. Among them, the processor 601 and the memory 603 are connected, such as through a bus 602. Optionally, the electronic device 60 may also include a transceiver 604, which may be used for data interaction between the electronic device and other electronic devices, such as data transmission and/or data reception. It should be noted that in practical applications, the number of transceivers 604 is not limited to one, and the structure of the electronic device 60 does not constitute a limitation on the embodiments of the present application.

处理器601可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数字信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器601也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。The processor 601 can be a CPU (Central Processing Unit, central processing unit), a general-purpose processor, a DSP (Digital Signal Processor, digital signal processor), ASIC (Application Specific Integrated Circuit, application specific integrated circuit), FPGA (Field Programmable Gate Array, field programmable gate array) or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. It may implement or execute the various illustrative logical blocks, modules, and circuits described in connection with this disclosure. The processor 601 may also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, etc.

总线602可包括一通路,在上述组件之间传送信息。总线602可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线602可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。Bus 602 may include a path that carries information between the above-mentioned components. The bus 602 may be a PCI (Peripheral Component Interconnect, Peripheral Component Interconnect Standard) bus or an EISA (Extended Industry Standard Architecture, Extended Industry Standard Architecture) bus, or the like. The bus 602 can be divided into an address bus, a data bus, a control bus, etc. For ease of presentation, only one thick line is used in Figure 6, but it does not mean that there is only one bus or one type of bus.

存储器603可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质、其他磁存储设备、或者能够用于携带或存储计算机程序并能够由计算机读取的任何其他介质,在此不做限定。The memory 603 may be a ROM (Read Only Memory) or other types of static storage devices that can store static information and instructions, RAM (Random Access Memory, random access memory) or other types that can store information and instructions. Dynamic storage devices can also be EEPROM (Electrically Erasable Programmable Read Only Memory), CD-ROM (Compact DiscRead Only Memory) or other optical disc storage, optical disc storage (including compressed optical discs, Laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), magnetic disk storage media, other magnetic storage devices, or any other media that can be used to carry or store computer programs and can be read by a computer, are not limited here.

存储器603用于存储执行本申请实施例的计算机程序,并由处理器601来控制执行。处理器601用于执行存储器603中存储的计算机程序,以实现前述方法实施例所示的步骤。The memory 603 is used to store computer programs for executing embodiments of the present application, and is controlled by the processor 601 for execution. The processor 601 is used to execute the computer program stored in the memory 603 to implement the steps shown in the foregoing method embodiments.

本申请实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)、可穿戴设备等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。Electronic devices in embodiments of the present application may include, but are not limited to, mobile phones, laptops, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Tablets), PMPs (Portable Multimedia Players), vehicle-mounted terminals (such as Mobile terminals such as vehicle navigation terminals), wearable devices, etc., and fixed terminals such as digital TVs, desktop computers, etc.

本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。Embodiments of the present application provide a computer-readable storage medium. A computer program is stored on the computer-readable storage medium. When the computer program is executed by a processor, the steps and corresponding contents of the foregoing method embodiments can be implemented.

需要说明的是,本申请上述的计算机可读存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。It should be noted that the computer-readable storage medium mentioned above in this application may be a computer-readable signal medium or a computer-readable storage medium, or any combination of the above two. The computer-readable storage medium may be, for example, but is not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus or device, or any combination thereof. More specific examples of computer readable storage media may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard drive, random access memory (RAM), read only memory (ROM), removable Programmed read-only memory (EPROM or flash memory), fiber optics, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above.

在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。As used herein, a computer-readable storage medium may be any tangible medium that contains or stores a program for use by or in connection with an instruction execution system, apparatus, or device. In this application, the computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, in which computer-readable program code is carried. Such propagated data signals may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device . Program code embodied on a computer-readable medium may be transmitted using any suitable medium, including but not limited to: wire, optical cable, RF (radio frequency), etc., or any suitable combination of the above.

可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。Computer program code for performing the operations of the present application may be written in one or more programming languages, including, but not limited to, object-oriented programming languages—such as Java, Smalltalk, C++, and Includes conventional procedural programming languages—such as "C" or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In situations involving remote computers, the remote computer can be connected to the user's computer through any kind of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (such as an Internet service provider through Internet connection).

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”、“1”、“2”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除图示或文字描述以外的顺序实施。The terms "first", "second", "third", "fourth", "1", "2", etc. (if present) in the description and claims of this application and the above-mentioned drawings are used for Distinguishes similar objects without necessarily describing a specific order or sequence. It is to be understood that the data so used are interchangeable under appropriate circumstances so that the embodiments of the application described herein can be practiced in other than the order illustrated or described.

应该理解的是,虽然本申请实施例的流程图中通过箭头指示各个操作步骤,但是这些步骤的实施顺序并不受限于箭头所指示的顺序。除非本文中有明确的说明,否则在本申请实施例的一些实施场景中,各流程图中的实施步骤可以按照需求以其他的顺序执行。此外,各流程图中的部分或全部步骤基于实际的实施场景,可以包括多个子步骤或者多个阶段。这些子步骤或者阶段中的部分或全部可以在同一时刻被执行,这些子步骤或者阶段中的每个子步骤或者阶段也可以分别在不同的时刻被执行。在执行时刻不同的场景下,这些子步骤或者阶段的执行顺序可以根据需求灵活配置,本申请实施例对此不限制。It should be understood that although each operation step is indicated by arrows in the flow chart of the embodiment of the present application, the order of implementation of these steps is not limited to the order indicated by the arrows. Unless otherwise specified herein, in some implementation scenarios of the embodiments of the present application, the implementation steps in each flowchart may be executed in other orders according to requirements. In addition, some or all of the steps in each flowchart are based on actual implementation scenarios and may include multiple sub-steps or multiple stages. Some or all of these sub-steps or stages may be executed at the same time, and each of these sub-steps or stages may also be executed at different times. In scenarios with different execution times, the execution order of these sub-steps or stages can be flexibly configured according to needs, and the embodiments of the present application do not limit this.

以上所述仅是本申请部分实施场景的可选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请的方案技术构思的前提下,采用基于本申请技术思想的其他类似实施手段,同样属于本申请实施例的保护范畴。The above are only optional implementation modes of some implementation scenarios of the present application. It should be pointed out that for those of ordinary skill in the technical field, without departing from the technical concept of the solution of the present application, adopting solutions based on the technical ideas of the present application Other similar implementation means also fall within the protection scope of the embodiments of this application.

Claims (10)

1. The non-containerized application management method based on the Kubernetes cluster equipment is characterized by being applied to the Kubernetes cluster equipment;
wherein, kubernetes cluster tool includes: at least one Master Node, at least one Node corresponding to the Master Node;
the Master node further comprises: non-containerized application NCA controller;
the NCA controller includes: an application deployment module and an application management module;
the Node further comprises: the non-containerized application proxy NCAlet component and the non-containerized application;
the method comprises the following steps:
determining, by the application deployment module, an update of deployment resources of the non-containerized application, and updating state resources of the non-containerized application according to the updated deployment resource configuration parameters;
determining, by the application management module, the status resource update, and obtaining updated status resource configuration parameters;
and updating the application state of the non-containerized application according to the updated state resource configuration parameters through the NCAlet component.
2. The Kubernetes cluster-based non-containerized application management method of claim 1, further comprising:
And defining a deployment resource template and a state resource template of the non-containerized application in the Kubernetes cluster equipment in a self-defining resource definition mode.
3. The Kubernetes cluster-based non-containerized application management method of claim 1, further comprising:
and acquiring initial deployment resource configuration parameters through the application deployment module, and updating state resources of the non-containerized application according to the initial deployment resource configuration parameters.
4. A method for managing non-containerized applications based on Kubernetes cluster devices according to any of claims 1-3, wherein determining a deployment resource update of the non-containerized applications specifically comprises:
monitoring the deployment resource configuration parameters of the non-containerized application, and if at least one of deployment resource deletion, deployment resource copy configuration change and deployment resource version change of the deployment resource of the non-containerized application is determined, determining deployment resource update of the non-containerized application.
5. The non-containerized application management method based on Kubernetes cluster equipment of claim 4, wherein the method specifically comprises:
Determining, by the application deployment module, that deployment resources of the non-containerized application undergo a deployment resource deletion change, and correspondingly deleting state resources of the non-containerized application;
determining, by the application management module, that a state resource of the non-containerized application is deleted, and calling an NCAlet component corresponding to the non-containerized application;
and deleting the non-containerized application from the Kubernetes cluster device through the NCAlet component.
6. The non-containerized application management method based on Kubernetes cluster equipment of claim 4, wherein the method specifically comprises:
determining that deployment resources of the non-containerized application undergo deployment resource copy configuration change through the application deployment module, acquiring updated deployment resource copy configuration parameters, and updating state resource copy configuration parameters of the non-containerized application according to the updated deployment resource copy configuration parameters;
determining, by the application management module, the state resource update, and obtaining updated state resource copy configuration parameters;
and deleting and/or adding the corresponding non-containerized application copy according to the updated state resource copy configuration parameters through the NCAlet component.
7. The Kubernetes cluster-based non-containerized application management method of claim 4, further comprising:
determining, by the application deployment module, that deployment resources of the non-containerized application undergo deployment resource version changes, and updating a state resource version of the non-containerized application according to updated deployment resource version configuration parameters;
determining, by the application management module, the state resource update, and obtaining updated state resource version configuration parameters;
and updating the version of the non-containerized application according to the updated state resource version configuration parameters through the NCAlet component.
8. A Kubernetes cluster tool, the Kubernetes cluster tool comprising: at least one Master Node, at least one Node corresponding to the Master Node;
the Master node further comprises: non-containerized application NCA controller;
the NCA controller includes: an application deployment module and an application management module;
the Node further comprises: the non-containerized application proxy NCAlet component and the non-containerized application;
the application deployment module is used for determining the deployment resource update of the non-containerized application and updating the state resource of the non-containerized application according to the updated deployment resource configuration parameters;
The application management module is used for determining the state resource update and acquiring updated state resource configuration parameters;
the NCAlet component is used for updating the application state of the non-containerized application according to the updated state resource configuration parameters.
9. An electronic device comprising a memory, a processor and a computer program stored on the memory, characterized in that the processor executes the computer program to carry out the steps of the method according to any one of claims 1-7.
10. A computer readable storage medium, on which a computer program is stored, characterized in that the computer program, when being executed by a processor, implements the method of any of claims 1-7.
CN202311415734.1A 2023-10-27 2023-10-27 Non-containerized application management method based on Kubernetes cluster equipment Pending CN117472509A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311415734.1A CN117472509A (en) 2023-10-27 2023-10-27 Non-containerized application management method based on Kubernetes cluster equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311415734.1A CN117472509A (en) 2023-10-27 2023-10-27 Non-containerized application management method based on Kubernetes cluster equipment

Publications (1)

Publication Number Publication Date
CN117472509A true CN117472509A (en) 2024-01-30

Family

ID=89635863

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311415734.1A Pending CN117472509A (en) 2023-10-27 2023-10-27 Non-containerized application management method based on Kubernetes cluster equipment

Country Status (1)

Country Link
CN (1) CN117472509A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118626207A (en) * 2024-06-03 2024-09-10 北京宝兰德软件股份有限公司 A method and device for uniformly deploying container applications and non-container applications based on Kubernetes

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118626207A (en) * 2024-06-03 2024-09-10 北京宝兰德软件股份有限公司 A method and device for uniformly deploying container applications and non-container applications based on Kubernetes
CN118626207B (en) * 2024-06-03 2024-11-26 北京宝兰德软件股份有限公司 Method and device for uniformly deploying container application and non-container application based on Kubernetes

Similar Documents

Publication Publication Date Title
CN111984270B (en) Application deployment method and system
US9274843B2 (en) Multi-redundant switchable process pooling for cloud it services delivery
US9311161B2 (en) Automatically configured management service payloads for cloud IT services delivery
WO2022037612A1 (en) Method for providing application construction service, and application construction platform, application deployment method and system
US9830135B2 (en) Declarative and pluggable business logic for systems management
WO2024077885A1 (en) Management method, apparatus and device for container cluster, and non-volatile readable storage medium
US10832224B2 (en) Calendar based management of information technology (IT) tasks
US10656971B2 (en) Agile framework for vertical application development and delivery
US20200136930A1 (en) Application environment provisioning
CN111984269B (en) Method for providing application construction service and application construction platform
US20140007092A1 (en) Automatic transfer of workload configuration
WO2017202211A1 (en) Method and device for installing service version on virtual machine
CN111580926A (en) Model publishing method, model deployment method, apparatus, device and storage medium
US11301262B2 (en) Policy enabled application-release-management subsystem
CN114647485A (en) Dynamic Cloud Deployment of Robotic Process Automation (RPA) Robots
US20230342183A1 (en) Management method and apparatus for container cluster
US20150220330A1 (en) Template derivation for configuration object management
CN113778477B (en) File processing method and device, computer readable storage medium and electronic equipment
CN106293847B (en) Method for supporting service of virtualization platform
CN105404530B (en) It is a kind of to realize easy deployment and the system and method using private clound
CN114625479A (en) Cloud edge collaborative application management method in edge computing and corresponding device
CN114205230A (en) Method, system, medium and electronic device for configuring cloud native network element
US9626251B2 (en) Undo configuration transactional compensation
CN117369942A (en) Method and system for arranging and automatically deploying application service resources
CN117472509A (en) Non-containerized application management method based on Kubernetes cluster equipment

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