CN114416131A - Application upgrading method, application upgrading platform, electronic equipment and storage medium - Google Patents

Application upgrading method, application upgrading platform, electronic equipment and storage medium Download PDF

Info

Publication number
CN114416131A
CN114416131A CN202111484865.6A CN202111484865A CN114416131A CN 114416131 A CN114416131 A CN 114416131A CN 202111484865 A CN202111484865 A CN 202111484865A CN 114416131 A CN114416131 A CN 114416131A
Authority
CN
China
Prior art keywords
application
upgrading
scheduling
plan
information
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
CN202111484865.6A
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.)
Zhejiang Dahua Technology Co Ltd
Original Assignee
Zhejiang Dahua Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Dahua Technology Co Ltd filed Critical Zhejiang Dahua Technology Co Ltd
Priority to CN202111484865.6A priority Critical patent/CN114416131A/en
Publication of CN114416131A publication Critical patent/CN114416131A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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
    • 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
    • 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/45595Network integration; Enabling network access in virtual machine instances

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

The invention provides an application upgrading method, an application upgrading platform, electronic equipment and a storage medium, wherein the application upgrading method comprises the following steps: comparing the new version data of the application program to be upgraded with the old version data to generate comparison data; performing resource verification on the comparison data to determine whether system resources meet upgrading conditions; responding to the verification passing, and generating an upgrading scheduling plan of the application program to be upgraded based on the comparison data; and upgrading the application program based on the scheduling plan. The method can realize the maintenance and the upgrade of the application.

Description

Application upgrading method, application upgrading platform, electronic equipment and storage medium
Technical Field
The invention relates to the technical field of cloud computing, in particular to an application upgrading method, an application upgrading platform, electronic equipment and a storage medium.
Background
In recent years, cloud computing has been popularized and developed domestically. The open source container technology is used as a lightweight virtual technology, and due to the fact that deployment and operation of rapid application are achieved in a program packaging mirror image mode, development efficiency is greatly improved, and the open source container technology is widely used in the field of cloud computing. Compared with the traditional virtual machine, the container shares the host kernel, occupies few resources, provides a flexible resource allocation and scheduling mode for users, and has become the core function of the cloud computing system. The rise of open source container technology has prompted a large number of excellent application deployment management systems, typically kubernets, dockerwarm and Mesosphere. In which kubernets become the leader of the container arrangement field with its powerful application arrangement management and automation operation and maintenance capabilities. The prior art provides an application publishing method based on kubernets, which supports a general application publishing system of various technical stacks, but does not consider the subsequent maintenance and upgrading of the application in a service scene.
Disclosure of Invention
The invention provides an application upgrading method, an application upgrading platform, electronic equipment and a storage medium.
In order to solve the above technical problems, a first technical solution provided by the present invention is: an application upgrading method is provided, which comprises the following steps: comparing the new version data of the application program to be upgraded with the old version data to generate comparison data; performing resource verification on the comparison data to determine whether system resources meet upgrading conditions; responding to the verification passing, and generating an upgrading scheduling plan of the application program to be upgraded based on the comparison data; and upgrading the application program based on the scheduling plan.
The step of comparing the new version data with the old version data of the application program to be upgraded to generate comparison data comprises the following steps: comparing the new version data of the application program to be upgraded with the application topology change information and the container operation environment information in the old version data to generate comparison data; the application topology change information comprises at least one of micro service increase and micro service decrease; the container operation environment information includes at least one of environment variables, network resources, container storage information, and computing resources.
The step of generating the upgrade scheduling plan of the application program to be upgraded based on the comparison data includes: creating copy information corresponding to the application program to be upgraded based on the comparison data, and integrating the copy information to generate an upgrading scheme; and generating the dispatching plan based on the upgrading scheme.
The copy information comprises at least one of a copy name and service information, and the service information comprises at least one of an application image and port configuration.
Wherein the step of generating the dispatch plan based on the upgrade scenario comprises: scheduling the copy information in the upgrading scheme to generate a scheduling result for the copy information, wherein the scheduling comprises at least one of binding computing resource nodes, distributing storage directories and generating ip information for the copy information; updating the application program by using the copy information in the upgrading scheme based on the scheduling result to obtain an upgrading strategy of the application program; and generating the dispatching plan based on the upgrading strategy.
Wherein the step of generating the dispatch plan based on the upgrade policy comprises: and generating a hierarchical scheduling plan by utilizing the micro-service according to the application topology, wherein the scheduling plan is formed by all hierarchical scheduling plans.
The step of generating the hierarchical scheduling plan according to the application topology by using the micro-service comprises the following steps: and rendering the ip/domain name based on the application topology by using a dependent service, and storing the upgrading strategy, the copy information and the scheduling result based on the application topology by using a database so as to obtain the hierarchical scheduling plan.
After the step of scheduling the copy information in the upgrade scheme to generate a scheduling result for the copy information, the method includes: and calling openapi to upgrade the copy information based on the upgrade script.
Wherein the step of upgrading the application program based on the dispatch plan comprises: creating containers based on the dispatch plan, each of the containers being independent of each other; and upgrading the application program based on the container.
In order to solve the above technical problems, a second technical solution provided by the present invention is: an application upgrade platform is provided, comprising: the business layer is used for comparing the new version data and the old version data of the application program to be upgraded to generate comparison data; performing resource verification on the comparison data to determine whether system resources meet upgrading conditions; responding to the verification passing, and generating an upgrading scheduling plan of the application program to be upgraded based on the comparison data; a base layer to upgrade the application based on the dispatch plan.
Wherein the service layer comprises: gateway service, application center, mirror image center.
Wherein the base layer comprises: the main node corresponds to a plurality of sub-nodes; the master node comprises an interface service, a controller, a scheduler and a key value database; the child node comprises a node agent component, a network agent component, a container service, a network plug-in and at least one copy.
In order to solve the above technical problems, a third technical solution provided by the present invention is: provided is an electronic device including: a memory storing program instructions and a processor retrieving the program instructions from the memory to perform any of the methods described above.
In order to solve the above technical problems, a fourth technical solution provided by the present invention is: there is provided a computer readable storage medium storing a program file executable to implement the method of any of the above.
The method has the beneficial effects that the method is different from the prior art, the new version data and the old version data of the application program to be upgraded are compared to generate comparison data; performing resource verification on the comparison data to determine whether system resources meet upgrading conditions; responding to the verification passing, and generating an upgrading scheduling plan of the application program to be upgraded based on the comparison data; and upgrading the application program based on the scheduling plan. The method can realize the maintenance and the upgrade of the application.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments are briefly introduced below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and other drawings can be obtained by those skilled in the art without inventive efforts, wherein:
FIG. 1 is a schematic flow chart diagram illustrating an embodiment of an application upgrade method according to the present invention;
FIG. 2a is a diagram illustrating a mirror update;
FIG. 2b is a schematic diagram of an application topology change;
FIG. 3 is a flowchart illustrating an embodiment of step S13 in FIG. 1;
FIG. 4a is a schematic flow chart of an upgrade method in the simple scheduling mode according to the present invention;
FIG. 4b is a schematic flow chart of an upgrade method in a complex scheduling mode according to the present invention;
FIG. 5 is a schematic structural diagram of an embodiment of an application upgrade platform according to the present invention;
FIG. 6 is a schematic structural diagram of an electronic device according to an embodiment of the invention;
fig. 7 is a schematic structural diagram of a computer-readable storage medium according to the present invention.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
The terms "first", "second" and "third" in this application are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implying any indication of the number of technical features indicated. Thus, a feature defined as "first," "second," or "third" may explicitly or implicitly include at least one of the feature. In the description of the present application, "plurality" means at least two, e.g., two, three, etc., unless explicitly specifically limited otherwise. All directional indications (such as up, down, left, right, front, and rear … …) in the embodiments of the present application are only used to explain the relative positional relationship between the components, the movement, and the like in a specific posture (as shown in the drawings), and if the specific posture is changed, the directional indication is changed accordingly. Furthermore, the terms "include" and "have," as well as any variations thereof, are intended to cover non-exclusive inclusions. For example, a process, method, system, article, or apparatus that comprises a list of steps or elements is not limited to only those steps or elements listed, but may alternatively include other steps or elements not listed, or inherent to such process, method, article, or apparatus.
Reference herein to "an embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment can be included in at least one embodiment of the application. The appearances of the phrase in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. It is explicitly and implicitly understood by one skilled in the art that the embodiments described herein can be combined with other embodiments.
In some large-scale application upgrading, in order to guarantee the integrity of application data, the application upgrading of a system needs to backup data, or flexible upgrading needs to be performed such as initialization of some data of the system. Such as: when the blog system is subjected to large application version iterative upgrade, application offline is required firstly, mysql data of the blog system is backed up, and then the overall upgrade of the application is carried out.
The application aims to provide a scheme for realizing deployment and upgrade of a container cloud platform based on application granularity. The standard kubernets (open source system, k8s) only provides container orchestration based solution bottom-level scheduling and infrastructure management, which is very elegant in terms of business application(s) scheduling and management. The proposal is mainly based on a user service scene, and originally creates a service application concept based on k8s by considering aspects of reducing technical difficulty of using kubernets and the like. The application of one user can be organized by a plurality of micro-services or components to form a topological structure, the micro-services are mutually cooperated and depended to be called, and the final user deploys the application on a private cloud platform to provide the service. Because the requirement of version upgrading of the application is very urgent while the user service items are iterated frequently, the user application upgrading scene is combed (including application internal container mirror image upgrading, application topology changing and service data upgrading), and an integral application upgrading function is constructed.
Referring to fig. 1, a schematic flow chart of an embodiment of the application upgrading method of the present invention specifically includes:
step S11: and comparing the new version data of the application program to be upgraded with the old version data to generate comparison data.
In daily service iteration development, there is often a need for upgrading an internal micro service of a service application, for example, the internal micro service of an application that has been on-line needs to be modified and on-line, as shown in fig. 2a, version function upgrade iteration needs to be performed periodically, some comment functions are added, or some known defects are repaired, for example, tomcat1.0 is upgraded to tomcat 2.0. In a container cloud environment, such update of micro-services is an update of mirror images or configuration and resources (e.g., CPU, memory, storage), etc.
In some business major version feature upgrades or business code logic reconfiguration, application topology changes are caused by updates to the architecture or business microservice components. As shown in fig. 2b, when traffic increases, the blog system adds a redis component for caching for stability and good user experience, and the micro service needs to rely on the redis component to provide a blog service externally. Such updates are dependent topology changes that apply internal services.
In one embodiment, comparing the new version data of the application program to be upgraded with the old version data includes comparing the application topology of the new version data with the old version data with update information, such as determining whether to add or subtract micro-services to or from the old version data. Alternatively, the method includes comparing the new version data with the container runtime environment information of the old version data, for example, determining whether the new version data is changed with respect to the configuration of the old version data component and the resource, and specifically, determining whether at least one of the environment variable, the network resource, the container storage information, and the computing resource is changed.
After the comparison is completed, comparison data is generated.
Step S12: and performing resource verification on the comparison data to determine whether the system resources are upgraded.
And performing resource verification on the compared data to determine whether the system resources are upgraded. The checking mainly includes calculating resources required by the upgrade and resources released by the upgrade, and the like, and mainly determines whether the current resources of the system can support the upgrade. For example, calculating the remaining storage space of the system, determining whether the remaining storage space meets the upgrade requirement, and if so, determining that the system meets the upgrade condition; otherwise, determining that the system does not meet the upgrading condition, and feeding back a prompt instruction to the user.
Step S13: and responding to the verification passing, and generating an upgrading scheduling plan of the application program to be upgraded based on the comparison data.
And under the condition that the system is determined to meet the upgrading conditions, namely under the condition that the verification passes, generating an upgrading scheduling plan of the application program to be upgraded based on the comparison data.
Specifically, the copy information corresponding to the application program to be upgraded is created based on the comparison data, and the copy information is integrated to generate an upgrade scheme. That is, one upgrade scheme includes information of multiple copies. A dispatch plan is further generated based on the upgrade scenario. In one embodiment, the copy information includes at least one of a copy name, service information, and the like, wherein the service information includes at least one of an application image, a port configuration, and the like.
In one embodiment, as shown in FIG. 3, generating a dispatch plan based on an upgrade scenario includes:
step S31: and scheduling the copy information in the upgrading scheme to generate a scheduling result for the copy information.
Specifically, in an embodiment, the scheduling includes at least one of binding the computing resource node, allocating a storage directory, and generating ip information for the copy information. That is, the step is to bind the computing resource nodes, allocate the storage directories and generate the ip information for the copy information in the upgrading scheme.
Step S32: updating the application program by using the copy information in the upgrading scheme based on the scheduling result so as to obtain an upgrading strategy of the application program.
The scheduling result comprises at least one of copy information binding calculation resource nodes, distribution storage directories and generation ip information, the application program is updated by using the copy information based on the scheduling result, and the upgrading strategy of the application program can be obtained.
Step S33: and generating the dispatching plan based on the upgrading strategy.
Further, a hierarchical scheduling plan is generated according to the application topology based on the micro-service, specifically, the hierarchical scheduling plan is determined by paying attention to the dependency relationship based on the micro-service, ip/domain name rendering is performed on the dependent service based on the application topology, and the upgrade strategy, the copy information and the scheduling result are stored by a database based on the application topology, so that the hierarchical scheduling plan is obtained. All the hierarchical scheduling plans form an overall scheduling plan corresponding to the upgrading process.
In one embodiment, the dispatch plan includes a complex dispatch mode and a simple dispatch mode. The complex scheduling mode is an asynchronous scheduling deployment mode, and in the deployment mode, a user can perform autonomous controllable scheduling. And the mode of the scheduling plan can be selected by the user, if the user specifies a simple scheduling mode, the system gradually pulls up the application microservice copy information according to the generated scheduling plan. I.e. the simple scheduling mode user is not autonomously controllable.
Step S14: and upgrading the application program based on the scheduling plan.
Specifically, the system upgrades the application program based on the scheduling plan, and if the user selects a simple scheduling mode, the system gradually pulls up the application microservice copy information according to the generated scheduling plan. And then the upgrade is completed. If the user selects a complex scheduling mode, when the copy information in the upgrading scheme is scheduled, an upgrading script is obtained from a row of asynchronous scheduling deployment containers (cf containers), and openapi is called to upgrade the copy information based on the upgrading script. And then continuing the steps shown in the embodiment to finish the upgrading of the system.
In an embodiment, creating containers further based on the dispatch plan, each of the containers being independent of each other; and upgrading the application program based on the container.
Specifically, as shown in fig. 4a, a schematic flow chart of the upgrade method in the simple scheduling mode of the present invention is shown. The process comprises the following steps:
1. a user sends an upgrading instruction; → 2, the application center (appstore) compares the new version data of the application program to be upgraded with the old version data to obtain comparison data; → 3, creating copy information based on the comparison data, and scheduling the copy information to obtain an upgrading scheme; → 4, feedback of upgrade process to user; → 5, generating a hierarchical dispatching plan, and further generating the dispatching plan; → 6, feeding back the scheduling plan to k8 s; container service docker within → 7, k8s creates a container based on the dispatch plan; → 8, docker feeds back container creation status to Master; → 9, Master feeds back the micro-service creation state to the appstore, and the user can query the application upgrade state based on the appstore to determine whether the upgrade is completed.
Fig. 4b is a schematic flow chart of the upgrading method in the complex scheduling mode according to the present invention. The process comprises the following steps:
1. a user sends an upgrading instruction; → 2, the application center (appstore) compares the new version data of the application program to be upgraded with the old version data to obtain comparison data; → 3, creating copy information based on the comparison data, and scheduling the copy information to obtain an upgrading scheme; → 4, feedback of upgrade process to user; → 5, appstore sends upgrade message to cf container; → 6, trigger cf container user upgrade script; → 7, calling openapi to upgrade the copy information based on the user upgrading script; → 8, generating a hierarchical dispatching plan, and further generating the dispatching plan; → 9, feeding back the scheduling plan to k8 s; container service docker within → 10, k8s creates a container based on the dispatch plan; → 11, docker feeds back the container creation status to Master; → 12, Master feeds back the microservice creation state to appstore; → 13, appstore sends copy upgrade information to cf container; → 14, cf container sends application upgrade success information to appstore; the application upgrading state can be inquired based on the appstore to determine whether the upgrading is completed.
The biggest characteristics of this proposal are: the method simplifies the use difficulty of the original kubernets, introduces the concept of business application arrangement, analyzes the requirements of application upgrading in business scenes in detail, synthesizes different scenes, designs and completes a set of application upgrading method, supplements the defects of the kubernets on the upper layer of business application, greatly simplifies the difficulty of container use in the private cloud field by combining the open source and the self-research scheme, and improves the development efficiency of business application parties. The proposal describes the application upgrading and deployment process through the modes of open source, self-made service and the like, creates the application upgrading process originally, opens the application upgrading modes of common, advanced and the like in the process of facing the quick iterative upgrading of the service version, opens the openapi interface for the complicated application upgrading through the development interface when meeting the requirements of common users, and provides a flexible application upgrading mode for the users through the combination of multiple upgrading modes.
Referring to fig. 5, a schematic structural diagram of an embodiment of the application upgrade platform of the present invention specifically includes: a service layer 51 and a base layer 52.
The service layer 51 is configured to compare new version data of an application program to be upgraded with old version data, and generate comparison data; performing resource verification on the comparison data to determine whether system resources meet upgrading conditions; and responding to the verification passing, and generating an upgrading scheduling plan of the application program to be upgraded based on the comparison data.
Specifically, the service layer 51 includes: gateway services (gateway), application centers (appstore), image-centers (image-registry). Specifically, when the application program is upgraded, comparison of the new version and the old version, resource verification, copy creation and scheduling are all performed in an application center (appstore).
The base layer 52 is a k8s layer, comprising: a Master Node (Master), wherein the Master Node corresponds to a plurality of sub-nodes Node; the master node comprises an interface service api-server, a controller-manager, a scheduler and a key-value database etcd. The child node comprises a node proxy component kubel, a network proxy component kube-proxy, a container service docker, a network plug-in calico and at least one copy pod.
The base layer 52 is used to upgrade the application based on the dispatch plan. Specifically, after the application center generates the scheduling plan, the scheduling plan is sent to the base layer 52, a container service docker in the base layer 52 creates a container for the copies in the scheduling plan, and the containers corresponding to the copies are independent from each other and do not affect each other. After the container is created successfully, application upgrading is carried out through an interface service api-server, a controller-manager, a scheduler and a key value database etcd in a Master node (Master).
The biggest characteristics of this proposal are: the method simplifies the use difficulty of the original kubernets, introduces the concept of business application arrangement, analyzes the requirements of application upgrading in business scenes in detail, synthesizes different scenes, designs and completes a set of application upgrading method, supplements the defects of the kubernets on the upper layer of business application, greatly simplifies the difficulty of container use in the private cloud field by combining the open source and the self-research scheme, and improves the development efficiency of business application parties. The proposal describes the application upgrading and deployment process through the modes of open source, self-made service and the like, creates the application upgrading process originally, opens the application upgrading modes of common, advanced and the like in the process of facing the quick iterative upgrading of the service version, opens the openapi interface for the complicated application upgrading through the development interface when meeting the requirements of common users, and provides a flexible application upgrading mode for the users through the combination of multiple upgrading modes.
Referring to fig. 6, a schematic structural diagram of an electronic device according to an embodiment of the present invention is shown, where the electronic device includes a memory 202 and a processor 201 that are connected to each other.
The memory 202 is used to store program instructions implementing the method of any of the above.
The processor 201 is used to execute program instructions stored by the memory 202.
The processor 201 may also be referred to as a Central Processing Unit (CPU). The processor 201 may be an integrated circuit chip having signal processing capabilities. The processor 201 may also be a general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The storage 202 may be a memory bank, a TF card, etc., and may store all information in the electronic device of the device, including the input raw data, the computer program, the intermediate motion results, and the final motion results. It stores and retrieves information based on the location specified by the controller. With the memory, the electronic device can only have the memory function to ensure the normal operation. The memories of electronic devices are classified into a main memory (internal memory) and an auxiliary memory (external memory) according to their purposes, and also into an external memory and an internal memory. The external memory is usually a magnetic medium, an optical disk, or the like, and can store information for a long period of time. The memory refers to a storage component on the main board, which is used for storing data and programs currently being executed, but is only used for temporarily storing the programs and the data, and the data is lost when the power is turned off or the power is cut off.
In the several embodiments provided in the present application, it should be understood that the disclosed method and apparatus may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, a division of a module or a unit is merely a logical division, and an actual implementation may have another division, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
Units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be substantially implemented or contributed to by the prior art, or all or part of the technical solution may be embodied in a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a system server, a network device, or the like) or a processor (processor) to execute all or part of the steps of the method of the embodiments of the present application.
Fig. 7 is a schematic structural diagram of a computer-readable storage medium according to the present invention. The storage medium of the present application stores a program file 203 capable of implementing all the methods described above, wherein the program file 203 may be stored in the storage medium in the form of a software product, and includes several instructions to enable a computer device (which may be a personal computer, a server, or a network device) or a processor (processor) to execute all or part of the steps of the methods of the embodiments of the present application. The aforementioned storage device includes: various media capable of storing program codes, such as a usb disk, a mobile hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, or terminal devices, such as a computer, a server, a mobile phone, and a tablet.
The above description is only an embodiment of the present invention, and not intended to limit the scope of the present invention, and all modifications of equivalent structures and equivalent processes, which are made by using the contents of the present specification and the accompanying drawings, or directly or indirectly applied to other related technical fields, are included in the scope of the present invention.

Claims (14)

1. An application upgrade method, comprising:
comparing the new version data of the application program to be upgraded with the old version data to generate comparison data;
performing resource verification on the comparison data to determine whether system resources meet upgrading conditions;
responding to the verification passing, and generating an upgrading scheduling plan of the application program to be upgraded based on the comparison data;
and upgrading the application program based on the scheduling plan.
2. The method of claim 1, wherein the step of comparing the new version data of the application program to be upgraded with the old version data to generate comparison data comprises:
comparing the new version data of the application program to be upgraded with the application topology change information and the container operation environment information in the old version data to generate comparison data;
the application topology change information comprises at least one of micro service increase and micro service decrease;
the container operation environment information includes at least one of environment variables, network resources, container storage information, and computing resources.
3. The method according to claim 1, wherein the step of generating an upgrade scheduling plan for the application program to be upgraded based on the comparison data comprises:
creating copy information corresponding to the application program to be upgraded based on the comparison data, and integrating the copy information to generate an upgrading scheme;
and generating the dispatching plan based on the upgrading scheme.
4. The method of claim 3, wherein the copy information comprises at least one of a copy name and service information, and wherein the service information comprises at least one of an application image and a port configuration.
5. The method of claim 3, wherein the step of generating the dispatch plan based on the escalation plan comprises:
scheduling the copy information in the upgrading scheme to generate a scheduling result for the copy information, wherein the scheduling comprises at least one of binding computing resource nodes, distributing storage directories and generating ip information for the copy information;
updating the application program by using the copy information in the upgrading scheme based on the scheduling result to obtain an upgrading strategy of the application program;
and generating the dispatching plan based on the upgrading strategy.
6. The method of claim 5, wherein the step of generating the dispatch plan based on the escalation policy comprises:
and generating a hierarchical scheduling plan by utilizing the micro-service according to the application topology, wherein the scheduling plan is formed by all hierarchical scheduling plans.
7. The method of claim 6, wherein the step of generating a hierarchical scheduling plan from the application topology using microservices comprises:
and rendering the ip/domain name based on the application topology by using a dependent service, and storing the upgrading strategy, the copy information and the scheduling result based on the application topology by using a database so as to obtain the hierarchical scheduling plan.
8. The method of claim 5, wherein the step of scheduling the replica information in the upgrade scenario to generate a scheduling result for the replica information is followed by:
and calling openapi to upgrade the copy information based on the upgrade script.
9. The method of claim 5 or 8, wherein the step of upgrading the application based on the dispatch plan comprises:
creating containers based on the dispatch plan, each of the containers being independent of each other;
and upgrading the application program based on the container.
10. An application upgrade platform, comprising:
the business layer is used for comparing the new version data and the old version data of the application program to be upgraded to generate comparison data; performing resource verification on the comparison data to determine whether system resources meet upgrading conditions; responding to the verification passing, and generating an upgrading scheduling plan of the application program to be upgraded based on the comparison data;
a base layer to upgrade the application based on the dispatch plan.
11. The upgrade platform according to claim 10, wherein the service layer comprises: gateway service, application center, mirror image center.
12. The upgrade platform according to claim 10, wherein the base layer comprises: the main node corresponds to a plurality of sub-nodes;
the master node comprises an interface service, a controller, a scheduler and a key value database;
the child node comprises a node agent component, a network agent component, a container service, a network plug-in and at least one copy.
13. An electronic device, comprising: a memory storing program instructions and a processor retrieving the program instructions from the memory to perform the method of any of claims 1-9.
14. A computer-readable storage medium, characterized in that a program file is stored, which program file can be executed to implement the method according to any one of claims 1-9.
CN202111484865.6A 2021-12-07 2021-12-07 Application upgrading method, application upgrading platform, electronic equipment and storage medium Pending CN114416131A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111484865.6A CN114416131A (en) 2021-12-07 2021-12-07 Application upgrading method, application upgrading platform, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111484865.6A CN114416131A (en) 2021-12-07 2021-12-07 Application upgrading method, application upgrading platform, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN114416131A true CN114416131A (en) 2022-04-29

Family

ID=81264863

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111484865.6A Pending CN114416131A (en) 2021-12-07 2021-12-07 Application upgrading method, application upgrading platform, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN114416131A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024007987A1 (en) * 2022-07-06 2024-01-11 中国第一汽车股份有限公司 Vehicle-end firmware upgrading method and apparatus for digital key system, and device and medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024007987A1 (en) * 2022-07-06 2024-01-11 中国第一汽车股份有限公司 Vehicle-end firmware upgrading method and apparatus for digital key system, and device and medium

Similar Documents

Publication Publication Date Title
US10936423B2 (en) Enhanced application write performance
US10303450B2 (en) Systems and methods for a policy-driven orchestration of deployment of distributed applications
US8904382B2 (en) Creating instances of cloud computing environments
CN104951360A (en) Configuration management mode and device based on Docker
US9077613B2 (en) System and method for graph based K-redundant resiliency for IT cloud
CN110008665B (en) Authority control method and device for blockchain
CN112148798A (en) Data processing method and device applied to distributed system
CN108279882B (en) Framework generation method, device, equipment and computer readable medium
CN113064600B (en) Method and device for deploying application
US20140101648A1 (en) Application version gatekeeping during upgrade
US11880296B2 (en) Generating a test cluster for testing a container orchestration system
CN112199164A (en) Method for ensuring container mirror image consistency
CN110888736A (en) Application management method and system based on container cloud platform and related components
CN112882738A (en) Configuration information updating method and device under micro-service architecture and electronic equipment
CN114840223A (en) Resource processing method and device
CN114416131A (en) Application upgrading method, application upgrading platform, electronic equipment and storage medium
CN113660315B (en) Cloud computing service providing method, device, equipment and readable storage medium
EP4050850A1 (en) Service upgrading method, device and system
CN116795397A (en) Application management method, application management device, and computer-readable storage medium
CN108418857B (en) Zookeeper cluster system and connection method and device thereof
CN115480910A (en) Multi-cluster resource management method and device and electronic equipment
CN111767345B (en) Modeling data synchronization method, modeling data synchronization device, computer equipment and readable storage medium
CN111857736B (en) Cloud computing product generation method, device, equipment and storage medium
CN115037757A (en) Multi-cluster service management system
CN114500268A (en) Deployment method, device, server and storage medium of chart resource

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