Cloud service updating method and apparatus, computer device, and storage medium
By acquiring and converting hot update data and basic environment information of cloud services, determining the instance update order, and using the standard update entry point for hot updates of cloud services, the problem of low efficiency in cloud service updates is solved, and efficient cloud service updates are achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- TENCENT TECHNOLOGY (SHENZHEN) CO LTD
- Filing Date
- 2022-03-28
- Publication Date
- 2026-06-26
AI Technical Summary
Existing technologies for cloud services suffer from low update efficiency, as they rely on document-based change control tables, leading to inefficiencies in the update process.
By acquiring hot update data, including cloud service change information, related information, and standard update entry information, and combining it with basic environment information and instance information, the instance change information is transformed and its order is determined, and hot updates are performed using the standard update entry information.
It enables rapid updates to cloud services, improves update efficiency, and avoids the inefficient process of using change control tables.
Smart Images

Figure CN116860304B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of Internet technology, and in particular to a cloud service update method, apparatus, computer equipment, storage medium, and computer program product. Background Technology
[0002] With the development of cloud technology, cloud service products have emerged. These cloud service products refer to cloud computing products provided as services, which can be offered as components, such as database cloud services offered as database components. Currently, cloud service providers typically rely on documented change control tables when updating cloud service products. They follow these change control tables step-by-step to update the cloud service product and verify the results. However, updating cloud service products through change control tables is clearly inefficient. Summary of the Invention
[0003] Therefore, it is necessary to provide a cloud service update method, apparatus, computer equipment, computer-readable storage medium, and computer program product that can improve update efficiency in response to the above-mentioned technical problems.
[0004] Firstly, this application provides a cloud service update method. The method includes:
[0005] Acquire hot update data, which includes change information for cloud services, associated information for cloud services, and standard update entry information;
[0006] Obtain the basic environment information corresponding to the cloud service, which includes the deployment information and instance information of the cloud service.
[0007] The change information is transformed based on the instance information corresponding to the cloud service to obtain the change information for each instance corresponding to the cloud service;
[0008] The instance update order corresponding to each instance change information is determined based on the deployment and association information of the cloud service.
[0009] The cloud service is hot-updated by using the change information of each instance in the order of instance updates through the standard update entry information, and the updated cloud service is obtained.
[0010] Secondly, this application also provides a cloud service update device. The device includes:
[0011] The data acquisition module is used to acquire hot update data, which includes change information corresponding to cloud services, related information corresponding to cloud services, and standard update entry information.
[0012] The information acquisition module is used to acquire the basic environment information corresponding to the cloud service. The basic environment information includes the deployment information and instance information of the cloud service.
[0013] The conversion module is used to convert change information based on the instance information corresponding to the cloud service to obtain the change information for each instance corresponding to the cloud service.
[0014] The sequence generation module is used to determine the instance update order corresponding to each instance change information based on the deployment information and association information of the cloud service.
[0015] The update module is used to perform hot updates of cloud services by using the change information of each instance in the order of instance updates through the standard update entry information, so as to obtain updated cloud services.
[0016] Thirdly, this application also provides a computer device. The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to perform the following steps:
[0017] Acquire hot update data, which includes change information for cloud services, associated information for cloud services, and standard update entry information;
[0018] Obtain the basic environment information corresponding to the cloud service, which includes the deployment information and instance information of the cloud service.
[0019] The change information is transformed based on the instance information corresponding to the cloud service to obtain the change information for each instance corresponding to the cloud service;
[0020] The instance update order corresponding to each instance change information is determined based on the deployment and association information of the cloud service.
[0021] The cloud service is hot-updated by using the change information of each instance in the order of instance updates through the standard update entry information, and the updated cloud service is obtained.
[0022] Fourthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, performs the following steps:
[0023] Acquire hot update data, which includes change information for cloud services, associated information for cloud services, and standard update entry information;
[0024] Obtain the basic environment information corresponding to the cloud service, which includes the deployment information and instance information of the cloud service.
[0025] The change information is transformed based on the instance information corresponding to the cloud service to obtain the change information for each instance corresponding to the cloud service;
[0026] The instance update order corresponding to each instance change information is determined based on the deployment and association information of the cloud service.
[0027] The cloud service is hot-updated by using the change information of each instance in the order of instance updates through the standard update entry information, and the updated cloud service is obtained.
[0028] Fifthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, performs the following steps:
[0029] Acquire hot update data, which includes change information for cloud services, associated information for cloud services, and standard update entry information;
[0030] Obtain the basic environment information corresponding to the cloud service, which includes the deployment information and instance information of the cloud service.
[0031] The change information is transformed based on the instance information corresponding to the cloud service to obtain the change information for each instance corresponding to the cloud service;
[0032] The instance update order corresponding to each instance change information is determined based on the deployment and association information of the cloud service.
[0033] The cloud service is hot-updated by using the change information of each instance in the order of instance updates through the standard update entry information, and the updated cloud service is obtained.
[0034] The aforementioned cloud service update method, apparatus, computer equipment, storage medium, and computer program product acquire hot update data, including change information, associated information, and standard update entry information corresponding to the cloud service; acquire basic environment information, including deployment information and instance information; convert the change information using the instance information to obtain change information for each instance; determine the instance update order using the deployment and associated information; and finally perform a hot update of the cloud service using the instance change information through the standard update entry information according to the instance update order, thereby updating the cloud service. By using hot update data and basic environment information, the cloud service can be updated quickly, avoiding the need to use change control tables to update cloud service products, thus improving the update efficiency of cloud services. Attached Figure Description
[0035] Figure 1This is an application environment diagram of a cloud service update method in one embodiment;
[0036] Figure 2 This is a flowchart illustrating a cloud service update method in one embodiment;
[0037] Figure 3 This is a schematic diagram of the process for obtaining hot update data in one embodiment;
[0038] Figure 4 This is a flowchart illustrating the process of obtaining the modified document in one embodiment;
[0039] Figure 5 A schematic diagram illustrating the creation of a change file page for a specific implementation;
[0040] Figure 6 This is a schematic diagram illustrating the process of updating cloud services in one embodiment.
[0041] Figure 7 This is a schematic diagram illustrating the process of obtaining at least two updated cloud services in one embodiment.
[0042] Figure 8 This is a schematic diagram of the service update topology in a specific embodiment;
[0043] Figure 9 This is a schematic diagram of a page where hot updates are performed in a specific embodiment;
[0044] Figure 10 This is a schematic diagram of the overall update information page in a specific embodiment;
[0045] Figure 11 This is a schematic diagram illustrating the generation of an update report in a specific embodiment;
[0046] Figure 12 This is a flowchart illustrating a cloud service update method in a specific embodiment.
[0047] Figure 13 This is a schematic diagram of the architecture of a cloud service update method in a specific embodiment;
[0048] Figure 14 for Figure 13 A schematic diagram illustrating the change information obtained in a specific embodiment;
[0049] Figure 15 for Figure 13 A schematic diagram of the execution engine architecture in a specific embodiment;
[0050] Figure 16 for Figure 13 A schematic diagram of the three-layer model in a specific embodiment;
[0051] Figure 17This is a structural block diagram of a cloud service update device in one embodiment;
[0052] Figure 18 This is an internal structural diagram of a computer device in one embodiment;
[0053] Figure 19 This is a diagram of the internal structure of a computer device in another embodiment. Detailed Implementation
[0054] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0055] Cloud technology refers to a hosting technology that unifies a series of resources such as hardware, software, and networks within a wide area network or local area network to achieve data computing, storage, processing, and sharing.
[0056] Cloud technology is a collective term for network technologies, information technologies, integration technologies, management platform technologies, and application technologies applied to the cloud computing business model. It can form resource pools, providing flexible and convenient on-demand access. Cloud computing technology will become a crucial support. Backend services of technical network systems require substantial computing and storage resources, such as video websites, image websites, and many portal websites. With the rapid development and application of the internet industry, every item may have its own identification mark in the future, requiring transmission to backend systems for logical processing. Data at different levels will be processed separately, and various industry data will all require robust system support, which can only be achieved through cloud computing.
[0057] A private cloud is created within a firewall, housing cloud infrastructure and hardware / software resources for various departments within an organization or enterprise to share resources within a data center. Besides hardware resources, creating a private cloud typically involves cloud equipment (IaaS, Infrastructure as a Service) software. Private cloud computing also comprises three layers: cloud hardware, cloud platform, and cloud services. The difference is that cloud hardware consists of the user's own personal computer or server, rather than the cloud computing vendor's data center. Cloud computing vendors build data centers to provide public cloud services to millions of users, thus requiring hundreds of thousands or even millions of servers. For individuals, private cloud computing serves only family and friends; for enterprises, it serves only their own employees, customers, and suppliers. Therefore, the personal computers or servers of individuals or enterprises are sufficient to provide cloud services.
[0058] The cloud service update method provided in this application embodiment can be applied to, for example, Figure 1 In the application environment shown, terminal 102 communicates with server 104 of the cloud service management platform via a network. Server 104 obtains hot update data through terminal 102, which includes change information, associated information, and standard update entry information for the cloud service. Server 104 obtains basic environment information for the cloud service, including deployment information and instance information. Server 104 converts the change information based on the instance information to obtain change information for each instance of the cloud service. Server 104 determines the instance update order based on the deployment and associated information. Server 104 performs a hot update of the cloud service using the instance change information through the standard update entry information according to the instance update order, thus updating the cloud service. The server can be an independent physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms. The terminal can be a smartphone, tablet, laptop, desktop computer, smart speaker, smartwatch, etc., but is not limited to these. The terminal and the server can be connected directly or indirectly through wired or wireless communication, which is not limited herein.
[0059] In one embodiment, such as Figure 2 As shown, a cloud service update method is provided, which can be applied to... Figure 1 Taking a server as an example, it can be understood that this method can also be applied to a terminal, and also to a system that includes both a terminal and a server, and is implemented through the interaction between the terminal and the server. In this embodiment, the method includes the following steps:
[0060] Step 202: Obtain hot update data. Hot update data includes change information corresponding to cloud services, related information corresponding to cloud services, and standard update entry information.
[0061] Hot update data is used to perform hot updates of cloud services on a cloud platform, which can be a public cloud platform, private cloud platform, or hybrid cloud platform. Hot updates are an instant update method that does not require re-downloading and installation, ensuring the normal and stable operation of cloud services. Change information corresponding to cloud services is used to update these services, including the update process steps and the programs required to implement them. Association information corresponding to cloud services characterizes their dependencies, referring to the objects that the update depends on. Standard update entry information refers to the unified update execution entry point during hot updates, used to perform hot updates of different cloud services. This standard update entry point can be obtained by standardizing the execution entry points used by different cloud services during updates. The hot update is then initiated using this execution entry point information.
[0062] Specifically, the cloud product management platform's server receives a hot update instruction for the cloud service, retrieves hot update data based on the instruction, parses the hot update data, and obtains the change information, associated information, and standard update entry information corresponding to the cloud service. In one embodiment, the hot update data may include change information, associated information, and standard update entry information corresponding to different cloud services.
[0063] In one embodiment, when performing a hot update of a cloud service on a private cloud platform, the server of the private cloud platform can obtain the hot update data uploaded by the terminal. When performing a hot update of a cloud service on a public cloud platform, the server of the public cloud platform can obtain the hot update data uploaded by the terminal, or it can directly obtain the hot update data from the database, or it can obtain the hot update data from the Internet.
[0064] Step 204: Obtain the basic environment information corresponding to the cloud service. The basic environment information includes the deployment information and instance information of the cloud service.
[0065] The basic environment information refers to the infrastructure environment information of the cloud platform on which the cloud service resides. This basic environment information includes the deployment information and instance information of the cloud service. Deployment information refers to the hardware device information within the cloud platform, including the region and address of the hardware device. Instance information refers to the specific information of the cloud service instance, such as the number of instances, the running device, running address, and running region. A cloud service instance can refer to a service process running a cloud service product allocated on a physical machine. The same cloud service can have different cloud service instances within a cloud platform, and these instances can be deployed on different cloud platform hardware devices.
[0066] Specifically, the server can collect basic environment information of the cloud platform to which the cloud service belongs, or it can retrieve the basic environment information of the cloud platform to which the cloud service belongs from the database. In one embodiment, the basic environment information of different private clouds is different, and when performing hot updates on cloud services in a private cloud, it is necessary to adaptively identify the basic environment information corresponding to that private cloud.
[0067] Step 206: Based on the instance information corresponding to the cloud service, the change information is converted to obtain the change information of each instance corresponding to the cloud service.
[0068] The conversion process refers to adapting and converting change information into the change information required for hot updates of cloud service instances. Instance change information refers to the change information used by cloud service instances during hot updates. Different cloud service instances have different instance change information, and each cloud service instance corresponds to its own instance change information.
[0069] Specifically, the server transforms the change information based on the instance information corresponding to the cloud service. The number of instance change information after transformation can be determined based on the number of cloud service instances in the instance information. Then, the change information can be adaptively transformed based on the address information of the cloud service instances in the instance information to obtain the change information of each instance corresponding to the cloud service.
[0070] Step 208: Determine the instance update order corresponding to each instance change information based on the deployment information and association information of the cloud service.
[0071] Deployment information refers to the specific deployment location information of the cloud service instance. Instance update order refers to the order in which cloud service instances are hot-updated, which can include serial update order and parallel update order. Serial update order refers to the order in which cloud service instances are hot-updated sequentially, while parallel update order refers to the order in which cloud service instances can be hot-updated simultaneously.
[0072] Specifically, the server can determine the hot update order of cloud service instances corresponding to each instance change information based on the deployment information and association information of the cloud service, thus obtaining the instance update order. Specifically, the update order of the cloud service can be determined based on the address information of the cloud service in the deployment information and the dependencies of the cloud service instances in the association information. This update order can include serial update order and parallel update order, resulting in the instance update order. In one embodiment, the server can return the deployment information and association information of the cloud service to the terminal for display. The user can determine the update order based on the deployment information and association information of the cloud service, the terminal obtains the update order of the cloud service instances, sends it to the server, and the server obtains the instance update order.
[0073] Step 210: Perform a hot update of the cloud service using the change information of each instance through the standard update entry information according to the instance update order to obtain the updated cloud service.
[0074] Among them, updating cloud services refers to cloud services that have been hot-updated.
[0075] Specifically, the cloud service enters the hot update execution entry of each cloud service instance through the standard update entry information according to the instance update order. Then, the hot update is performed using the corresponding instance change information through the hot update execution entry of each cloud service instance. When the hot update is completed, the updated cloud service instances are obtained, that is, the updated cloud service is obtained.
[0076] The aforementioned cloud service update method acquires hot update data, including change information, associated information, and standard update entry information for the cloud service; it also acquires basic environment information, including deployment and instance information; the change information is transformed using the instance information to obtain change information for each instance; the deployment and associated information are then used to determine the instance update order; and finally, the cloud service is hot-updated using the instance change information through the standard update entry information according to the instance update order. This method rapidly updates the cloud service by using hot update data and basic environment information, avoiding the need for change control tables and thus improving update efficiency.
[0077] In one embodiment, such as Figure 3 As shown, step 202 involves obtaining the hot update data corresponding to the cloud service. The hot update data includes change information, associated information, and standard update entry information, including:
[0078] Step 302: Obtain the hot update request, which carries the changed files.
[0079] Among them, the change file refers to the file containing the information required during hot updates.
[0080] Specifically, the server receives a hot update request sent by the management terminal, which carries the changed files uploaded by the terminal. These changed files can be uploaded to the cloud service in the form of a change data packet.
[0081] Step 304: Parse the change file to obtain the change information to be verified and the change description information corresponding to the cloud service.
[0082] Among them, the change information to be verified refers to the change information that needs to be validated. The change description information is based on a standard format and specification document and is used to describe the deployment and update information of cloud services. It contains two parts: the standard part, such as the basic information of the cloud service, will not change, while the changed part, such as the version number, is the updated version.
[0083] Specifically, the server parses the change file to obtain the content in the change text, which in turn yields the change information to be verified for the cloud service and the change description information for the cloud service.
[0084] Step 306: Verify the validity of the change information to be verified. When the validity verification is successful, obtain the change information corresponding to the cloud service, and determine the associated information and the standard update entry information corresponding to the cloud service from the change description information.
[0085] Among these, validity verification refers to verifying whether the changed information can be used normally. This validity verification can include verifying the syntactic correctness of the changed information, the correctness of the cloud service, and the risk level of the change.
[0086] Specifically, the server verifies the validity of the change information to be verified. If the validity verification fails, it means the change information is invalid and cannot be hot-updated; in this case, the change file needs to be retrieved again. If the validity verification passes, it means the change information is valid and can be directly used as the corresponding change information for the cloud service. During validity verification, the syntax of the change information to be verified is first checked. If the syntax is correct, the correctness of the cloud service is verified. If the cloud service is correct, the change risk level is checked to see if it meets the change threshold. If it does, the validity verification passes, and the change information corresponding to the cloud service is obtained. Then, the associated information and standard update entry information for the cloud service are determined from the change description information.
[0087] In the above embodiments, the change information is obtained by parsing the change file and then validally verifying it. Then, the associated information of the cloud service and the standard update entry information of the cloud service are determined from the change description information, which improves the accuracy of the obtained information.
[0088] In one embodiment, such as Figure 4 As shown, before step 202, before obtaining the hot update request, the process also includes:
[0089] Step 402: Obtain the cloud service's pending change information through the change file creation page.
[0090] The Change Document Creation page is where change documents are created. On this page, you can arrange each change step, command, and description for the cloud service, as well as the change order. This page can also be coded by cloud service component, encoding the change steps, commands, descriptions, and change order for each component. The change order of components within the same cloud service can be adjacent or non-adjacent. Change information awaiting verification refers to change information that requires validity verification.
[0091] Specifically, the management terminal displays the change file creation page returned from the server. Users create change files on the change file creation page. When the creation is complete, the management terminal receives the creation completion instruction. The management terminal then obtains the pending change information of the cloud service through the change file creation page and sends the pending change information of the cloud service to the server. The server obtains the pending change information of the cloud service through the change file creation page.
[0092] In a specific embodiment, such as Figure 5 The image shows a schematic diagram of the change file creation page. The change file is created in the form of a change order. Specifically, on the change file creation page, you can select the change component information of the cloud service product to be hot-updated. The change component information includes the component name, component type, component architecture, component deployment level, and update version, etc. Then, create a change process, which includes a preparation phase, an implementation phase, and a verification phase. Different execution commands can be created for hot updates in different phases.
[0093] Step 404: When the validity verification of the pending change information of the cloud service is passed, determine the corresponding change information of the cloud service based on the pending change information of the cloud service.
[0094] Specifically, the server then verifies the validity of the change information to be verified. This can include verifying the validity of each update step within the change information, as well as verifying the change level. If a change is classified as high-risk, a second confirmation can be required to reduce erroneous operations. For example, steps involving database operations can be flagged as high-risk and require secondary confirmation before verification can proceed. Furthermore, duplicate update steps can be merged based on the cloud service name, and the change information to be verified can be standardized to obtain the change information corresponding to the cloud service.
[0095] Step 406: Obtain the associated information and standard update entry information of the server, and obtain the change description information of the cloud service based on the associated information and standard update entry information.
[0096] Among them, the change description information is the description information required for hot updates, including the associated information and the standard update entry information.
[0097] Specifically, the server obtains the associated information and standard update entry information corresponding to the server, and obtains the change description information corresponding to the cloud service based on the associated information and standard update entry information. In one embodiment, the change description information may also include the cloud service name, version name, architecture name, etc.
[0098] Step 408: Based on the change information and change description information corresponding to the cloud service, convert the executable file to obtain the change file.
[0099] Specifically, the change information and change description information corresponding to the cloud service are converted into a file that the cloud service can recognize, thus obtaining the change file.
[0100] In one specific embodiment, a standardized change order can be obtained through the change document creation page. This change order can be in YAML (a highly readable format used to express data serialization) format. Then, the heterogeneous executable program corresponding to the change steps in the change order, and the corresponding standard descriptor file for the executable program are obtained. This descriptor file includes the software name, version, description, architecture, and dependency information. Finally, a change package is obtained based on the change order, executable program, and descriptor file, and this change package is used as hot update data.
[0101] In the above embodiments, obtaining the modified file through the modified file creation page improves the efficiency of obtaining the modified file and makes it more convenient for users.
[0102] In one embodiment, after step 408, after converting the executable file based on the change information and change description information corresponding to the cloud service to obtain the change file, the method further includes:
[0103] Obtain the test environment information corresponding to the cloud service, and perform hot update test on the changed file in the test environment corresponding to the test environment information; when the hot update test passes, generate a test pass tag corresponding to the changed file, associate the changed file with the test pass tag, and obtain the changed file after the test.
[0104] The test environment information refers to the basic environment information of the cloud service being simulated during the test. This test environment information is largely consistent with the basic environment information of the real cloud. The test environment refers to the basic environment simulated based on the test environment information. The test pass label is used to indicate that the change file has passed the test, signifying that the change file is executable and valid.
[0105] Specifically, the server can obtain the test environment information corresponding to the cloud service and perform hot update tests on the changed files in the corresponding test environment. The steps performed during the hot update test are exactly the same as those performed during the actual hot update. If the hot update test fails, it indicates that there is a problem with the changed files, and the changed files need to be modified. When the hot update test passes, a test pass tag is generated for the changed files. The changed files are associated with the test pass tag to obtain the tested changed files. At this point, the tested changed files are in a usable state. In one embodiment, the tested changed files can be uploaded to various private cloud environments to perform hot updates of the cloud service.
[0106] Step 202, obtain the hot update request, including:
[0107] The target hot update request is obtained, and the target hot update request carries the changed files after testing.
[0108] Specifically, when the server receives a target hot update request sent by the management terminal, it parses the target hot update request and obtains the test-modified file uploaded by the management terminal.
[0109] In the above embodiments, by testing the changed files in a test environment and using the changed files that pass the test for hot updates, the accuracy and stability of hot updates can be improved.
[0110] In one embodiment, step 206 involves converting the change information based on the instance information corresponding to the cloud service to obtain the change information for each instance corresponding to the cloud service, including:
[0111] The number of cloud service instances and their operational information are determined from the instance information corresponding to the cloud service. Based on the number of cloud service instances and their operational information, the change information is adaptively replicated to obtain the change information for each instance corresponding to the cloud service.
[0112] The number of cloud service instances refers to the number of cloud service instances deployed within the cloud to which the service belongs. For example, in a private cloud, cloud service instances may be deployed in different regions or in different data centers. Cloud service instance runtime information refers to the specific location information of the cloud service instance, such as its address.
[0113] Specifically, the server can count the total number of cloud service instances corresponding to a given cloud service based on the instance information, and then determine the operational information of each cloud service instance from the instance information. Next, based on the number of cloud service instances, the server determines the number of cloud service instance change messages to generate; that is, each cloud service instance corresponds to one instance change message. Then, the operational information of each cloud service instance is used to adaptively replicate the change messages, resulting in the change messages for each instance corresponding to the cloud service. Specifically, the cloud service information in the change messages can be changed to the cloud service instance operational information, and then each instance change message can be executed. This enables hot updates of the corresponding cloud service instances, ensuring the accuracy of hot updates for cloud services.
[0114] In one embodiment, step 208, determining the instance update order corresponding to each instance change information based on the deployment information and association information of the cloud service, includes:
[0115] Based on the deployment information corresponding to the cloud service, obtain the deployment change order corresponding to the change information of each instance; determine the step change order of the change steps in the change information of each instance according to the dependency relationship of the change steps in the associated information; and obtain the instance update order corresponding to the change information of each instance based on the deployment change order and the step change order.
[0116] Deployment information refers to the specific deployment location information of the instance corresponding to the cloud service. Deployment change order refers to the update order of the cloud service determined based on the deployment information. Step change order refers to the execution order of the update steps used during the update. Change step dependencies refer to the sequential relationship between the execution of change steps.
[0117] Specifically, the server can determine the deployment change order of cloud service instances based on the importance of their deployment locations in the cloud service deployment information; for example, more important locations are hot-updated first. Alternatively, the server can determine the deployment change order based on pre-set change priorities corresponding to the deployment locations of the cloud service instances in the deployment information; the higher the pre-set change priority for a location, the earlier the cloud service instance will be hot-updated. Then, the change steps in the instance change information corresponding to each cloud service instance are sorted according to the dependencies of the change steps in the associated information to obtain the step change order for each cloud service instance. The deployment change order and the step change order then serve as the instance update order corresponding to each instance change information, that is, the order in which each instance change information is executed and the order in which the change steps are executed when the instance change information is executed.
[0118] In one embodiment, the server can directly obtain a pre-set update order for cloud service instances and then perform a hot update using this pre-set update order. In another embodiment, the server can return the cloud service instances to be hot-updated to the management terminal for display. Users can arrange the update order of cloud service instances through the management terminal. The server obtains the arranged update order of cloud service instances and uses the arranged update order to perform a hot update.
[0119] In the above embodiments, by determining the deployment change order and the step change order, and then obtaining the instance update order corresponding to each instance change information based on the deployment change order and the step change order, the accuracy of the instance update order is improved.
[0120] In one embodiment, such as Figure 6 As shown, in step 210, the cloud service is hot-updated using the change information of each instance through the standard update entry information according to the instance update order, resulting in the updated cloud service, including:
[0121] Step 602: Determine the current change information of the current cloud service instance from the change information of each instance based on the instance update order.
[0122] Here, "current cloud service instance" refers to the cloud service instance that currently requires hot updating among all cloud service instances. "Current change information" refers to the instance change information corresponding to the current cloud service instance in each instance change information.
[0123] Specifically, the server performs hot updates of cloud service instances according to the instance update order. That is, each cloud service instance is used as the current cloud service instance according to the instance update order, and the current change information of the current cloud service instance is determined from the change information of each instance.
[0124] Step 604: Use the standard update entry information to determine the current update entry information corresponding to the current change information.
[0125] The current update entry information refers to the entry information for executing the current change information. The execution of the current change information is initiated through this current update entry information, which is the execution entry point for hot updates of a current cloud service instance.
[0126] Specifically, the server determines the update entry point corresponding to the current change information based on the standard update entry point information. Different cloud service instances can have different update entry points, and different cloud services can also have different update entry points. The standard update entry point information is unified, and the update entry point information for each cloud service instance can be obtained through this standard update entry point information.
[0127] Step 606: Call the current update entry information and use the current change information to perform a hot update on the current cloud service instance to obtain the current updated cloud service instance.
[0128] The currently updated cloud service instance refers to the updated cloud service instance corresponding to the current cloud service instance.
[0129] Specifically, the server invokes the current update entry information to perform a hot update of the current cloud service instance using the current change information. This means executing the change steps in the current change information sequentially. Once execution is complete, the hot update is finished, and the updated cloud service instance is obtained. Hot updates of cloud services include, but are not limited to, upgrading, expanding, migrating, and scaling down cloud services.
[0130] Step 608: Perform hot updates on the cloud service instances corresponding to the cloud services in the order of instance updates to obtain the updated cloud services.
[0131] Specifically, the server performs hot updates on each cloud service instance corresponding to the cloud service according to the instance update order. When all cloud service instances have completed the hot updates, the updated cloud service is obtained.
[0132] In the above embodiments, the current update entry information corresponding to the current change information is determined by using standard update entry information, and then the current cloud service instance is hot-updated by calling the current update entry information and using the current change information to obtain the current updated cloud service instance, thereby improving the efficiency and accuracy of cloud service instance updates.
[0133] In one embodiment, the current instance change information includes changes to the executable program;
[0134] Step 606: Use the current update entry information and current change information to perform a hot update on the current cloud service instance, obtaining the currently updated cloud service instance, including:
[0135] Obtain the execution channel corresponding to the modified executable program; call the current update entry information to execute the modified executable program through the execution channel; when the modified executable program completes execution, obtain the current update cloud service instance.
[0136] Among these, the modified executable program refers to the program that needs to be executed when the modification steps in the modification information are performed. The execution channel refers to the execution method used, including but not limited to container (Kubernetes) channels, remote (SSH) execution channels, agent execution channels, etc.
[0137] Specifically, the server obtains the execution channel corresponding to the modified executable program, and then uses the execution channel to call the current update entry information to execute the modified executable program. When the modified executable program is completed, the current update cloud service instance is obtained.
[0138] In the above embodiments, by calling the current update entry information to execute the changed executable program through the execution channel, the update efficiency and accuracy of hot updates are improved.
[0139] In one embodiment, the cloud service includes at least two components; the cloud service update method further includes:
[0140] The component update order of at least two components is determined based on the component dependencies in the association information.
[0141] Among them, the component update order is used to characterize the update order of different components in the cloud service.
[0142] Specifically, the server obtains hot update data, which includes change information for at least two cloud service components, association information for at least two cloud service components, and standard update entry information. It then obtains the basic environment information for the cloud services, including deployment information and instance information for at least two cloud service components. Based on the instance information for at least two cloud service components, the change information is transformed to obtain the change information for each instance of each of the at least two cloud service components. Based on the deployment information and association information for each of the at least two cloud service components, the server determines the instance update order for the at least two cloud service components corresponding to the change information for each component instance. Finally, the server can also determine the component update order for the at least two components based on the component dependencies in the association information.
[0143] Step 210 involves performing a hot update of the cloud service using the change information of each instance according to the instance update order through the standard update entry information, resulting in an updated cloud service, including:
[0144] Based on the instance update order and component update order, the change information of each instance is used to perform a hot update on the cloud service, which includes at least two components, through the standard update entry information, to obtain the target updated cloud service.
[0145] Specifically, when updating cloud service components, the server performs hot updates of the cloud service components according to the component update order. Then, during the hot update of cloud service components, each component instance corresponding to the server component is updated sequentially according to the instance update order. That is, the change information of each instance is used to perform hot updates of the cloud service components through standard update entry information. When all cloud service components are updated, the target updated cloud service is obtained. In one embodiment, all components in the cloud service can be updated, or only some components in the cloud service can be updated. The different components in the cloud service can have the same architecture or different architectures. That is, at least two components included in the cloud service have different architectures.
[0146] In the above embodiments, when the cloud service includes at least two components, the component update order of the at least two components is determined according to the component dependency relationship in the association information. Then, according to the instance update order and the component update order, the cloud service including at least two components is hot-updated using the change information of each instance through the standard update entry information to obtain the target updated cloud service, thereby improving the efficiency of cloud service updates.
[0147] In one embodiment, the cloud service includes at least two; such as Figure 7 As shown, cloud service update methods also include:
[0148] Step 702: Obtain target basic environment information corresponding to at least two cloud services. The target basic environment information includes deployment information and instance information corresponding to at least two cloud services.
[0149] Specifically, the server retrieves hot update data, which includes change information for each cloud service, associated information for each cloud service, and standard update entry information. Then, the server retrieves the target infrastructure information for each cloud service, which includes deployment information for at least two cloud services and instance information for at least two cloud services.
[0150] Step 704: Based on the instance information corresponding to at least two cloud services, the change information corresponding to at least two cloud services is transformed to obtain the instance change information corresponding to at least two cloud services.
[0151] Specifically, the server transforms the change information corresponding to each cloud service, that is, it adapts the change information according to the number of instances and running information corresponding to each cloud service to obtain the instance change information of each cloud service instance corresponding to each cloud service.
[0152] Step 706: Determine the instance update order of each instance change information corresponding to at least two cloud services based on the deployment information and association information corresponding to at least two cloud services.
[0153] Step 708: Determine the service update order of at least two cloud services based on the dependency relationship of cloud services in the association information corresponding to at least two cloud services.
[0154] Among them, instance update order refers to the update order of each cloud service instance corresponding to each cloud service, and service update order refers to the update order of each cloud service.
[0155] Specifically, the server determines the instance update order for each cloud service instance based on the location information of the cloud service instance in the deployment information and the dependency relationships of the cloud service instances in the association information. That is, the execution order of instance change information for each cloud service instance. Then, it determines the service update order for at least two cloud services based on the dependency relationships of the cloud services in the association information.
[0156] Step 710: Using the change information of each instance, perform hot updates on at least two cloud services through the standard update entry information according to the service update order and instance update order to obtain at least two updated cloud services.
[0157] Specifically, the server performs hot updates to cloud services sequentially according to the service update order. When a cloud service is hot updated, the corresponding instance change information is used to update the cloud service instances sequentially according to the instance update order until all cloud service instances are updated. Once all cloud service instances are updated, the cloud service update is complete, and then the next cloud service is updated. Finally, when all cloud services are hot updated, each updated cloud service is obtained.
[0158] In one embodiment, when performing hot updates on cloud services in a private cloud, different cloud services are composed of components with different architectures, such as container components, database components, and physical machine components. Different cloud services can also run on different environments, such as physical machines, virtual machines, and containers. During hot updates, the cloud services can be updated within the corresponding environment. For example, hot updates for cloud services that execute scripts can be performed on physical machines, while hot updates for cloud services that execute commands can be performed on virtual machines or containers.
[0159] In one embodiment, when a server performs a hot update, it can generate a service update topology based on the service update order, and then perform a hot update on the cloud service based on the service update topology. In a specific embodiment, such as... Figure 8The diagram illustrates the service update topology. During a hot update, changes to each cloud service product are executed sequentially. Based on the dependencies indicated by the arrows, a hot update for the next cloud service product cannot proceed until either cloud service products 3, 4, and 5 or cloud service products 2 and 7 have completed their updates. However, cloud service products 3, 4, and 5, and cloud service products 2 and 7 can be executed concurrently. This service update topology achieves dependency-based execution of cloud service products, thereby improving the efficiency of hot updates.
[0160] In the above embodiments, when there are at least two cloud services, the service update order and the instance update order can be determined. Then, according to the service update order and the instance update order, the change information of each instance is used to perform hot updates on at least two cloud services through the standard update entry information, so as to obtain at least two updated cloud services. This allows for the rapid updating of multiple cloud services and improves the efficiency of cloud service updates.
[0161] In one embodiment, the cloud service update method further includes:
[0162] The system acquires cloud service operational status data during hot updates at preset time intervals. When the operational status data fails to meet a preset stability threshold, a hot update anomaly message is generated. An alarm is triggered based on the hot update anomaly message. Upon receiving a hot update stop command, the system stops the cloud service hot update process accordingly.
[0163] The preset time interval refers to a pre-set time interval for collecting operational status data. Operational status data refers to the status data of the cloud service used to characterize the hot update process. Different cloud services have different status data; for example, message queue cloud services collect key metrics such as queue length and message sending / receiving rate, while database cloud services collect key metrics such as TPS (transactions per second), QPS (queries per second), and RT (response time, the time from request to completion of a transaction). The preset stability threshold refers to a pre-set threshold for the status data of the cloud service operating normally during the hot update process. Hot update anomaly information is used to characterize anomalies that occur in the cloud service during the hot update process.
[0164] Specifically, the server acquires the cloud service's operational status data during the hot update process at preset time intervals. It then compares the key indicator values in the operational status data with preset stability thresholds. When the operational status data fails to meet the preset stability thresholds, it indicates an anomaly has occurred during the hot update process. In this case, hot update anomaly information is generated and used to issue an alarm. Users can decide whether to stop the hot update based on the alarm. When it is necessary to stop the hot update, the server receives a hot update stop command and stops the cloud service's hot update accordingly. In a specific embodiment, such as... Figure 9The image shows a schematic of a hot update execution page. This page displays the current status ("In Progress"), the overall progress of the hot update, and the update process of the cloud service components being updated. When an alarm is received, the user can pause or stop the hot update by clicking "Pause Changes" or "Stop Changes." In a specific example, such as... Figure 10 The image shows a schematic diagram of the overall update information page for cloud services. This page displays the number of changes to the cloud service product in the past month, statistics on the changes, and basic information on the operational status of the cloud product. From this page, one can clearly understand the operational status and changes of the cloud service, making it convenient to use.
[0165] In one embodiment, after performing a hot update of the cloud service using the change information of each instance in the order of instance updates through the standard update entry information to obtain the updated cloud service, the method further includes:
[0166] Obtain update operation status data corresponding to the updated cloud service, and obtain historical operation status data corresponding to the cloud service; generate an update report based on the update operation status data and historical operation status data.
[0167] Among them, updated running status data refers to the running status data collected during the current hot update, while historical running status data refers to the running status data collected during the historical hot update.
[0168] Specifically, the server can obtain update runtime status data corresponding to the updated cloud service, and also obtain historical runtime status data for the corresponding cloud service. Then, it generates an update report based on the update runtime status data and the historical runtime status data. In a specific embodiment, an observation platform can be used to obtain basic environmental data and cloud service runtime status data of the cloud environment during the cloud service hot update process. For example... Figure 11 The diagram illustrates how the observation platform generates update reports. During the hot update process, the observation platform monitors the entire process to ensure that the hot update's progress and results do not affect the stability of cloud products. The platform acquires the status during the update process and performs impact analysis for each cloud service hot update. It provides a real-time log and overview of key status indicators during the hot update process, displaying status data collected from business, management, support components, and physical resources dimensions on the hot update task page. Furthermore, an update report is output after the hot update is complete. The update report displays a one-hour time series graph of key status indicators before and after the hot update, the hot update time, the increase in alarms during the hot update, the operational status of cloud service components, and more.
[0169] In a specific embodiment, such as Figure 12As shown, a cloud service update method is provided, which specifically includes the following steps:
[0170] Step 1202: Obtain the hot update request, which carries the changed files; parse the changed files to obtain the unverified change information and change description information corresponding to the components in each cloud service. The components in a cloud service can be a subset of the components of that cloud service, or all of them.
[0171] Step 1204: When the validity verification of the change information to be verified passes, the change information corresponding to the components in each cloud service is obtained, and the association information and standard update entry information corresponding to the components in each cloud service are determined from the change description information.
[0172] Step 1206: Obtain the basic environment information corresponding to the cloud service. The basic environment information includes the deployment information of the components in each cloud service and the instance information of the components in each cloud service.
[0173] Step 1208: Determine the number of component instances and the running information of component instances in each cloud service from the instance information corresponding to the components in each cloud service; adaptively replicate the change information based on the number of components and the running information of component instances in each cloud service to obtain the change information of each instance corresponding to the components in each cloud service.
[0174] Step 1210: Determine the service update order, component update order, and instance update order based on the deployment information and association information of the components in each cloud service.
[0175] Step 1212: Following the service update order, component update order, and instance update order, perform hot updates on the cloud services using the instance change information through the standard update entry information to obtain updated cloud services. Specifically, during the update, first determine the cloud service to be hot-updated according to the service update order; then determine the components to be hot-updated according to the component hot update order of that cloud service; next, determine the component instances to be hot-updated according to the instance update order of the component to be hot-updated; and then update the component instances. Once the component instances have been updated according to the instance update order, the next component is retrieved and hot-updated according to the component update order, and so on, until the component hot-updations for the cloud service are complete according to the component update order. Then, the next cloud service is retrieved and hot-updated according to the service update order, and so on, until all cloud services have been hot-updated according to the service update order, resulting in all updated cloud services. This improves the update efficiency and stability of cloud services.
[0176] In one specific embodiment, this cloud service update method is applied to update heterogeneous cloud service products in a private cloud. For example... Figure 13 The diagram shows the architecture of the cloud service update method, which includes a change package generation part and a heterogeneous cloud service update part in a private cloud.
[0177] Specifically, regarding the change package generation, the process involves generating change packages on the cloud provider's server. Module X retrieves change orders, and a change flow for each cloud service product can be created via a change file creation page. This flow can include preparation, implementation, and verification phases. Alternatively, existing templates can be used to create change flows for each cloud service product. The version, architecture, and other parameter information for each cloud service product are then obtained. The validity of each change flow step in the change order is verified, and a change level assessment is performed. Duplicate change flows are merged based on the cloud service product name. Based on the created change flows for each cloud service product, along with the product's version, architecture, and other parameter information, a document-based change order is generated. This document-based change order is then converted into executable change information using the change orchestration engine module A. This executable change information can be in YAML format and can be executed by the private cloud platform.
[0178] like Figure 14 The diagram illustrates the transformation of change information by the change orchestration engine module A. A single change order can contain change processes for various heterogeneous cloud service products, such as cloud service products with image components, binary components, and database types. Each cloud service product's change process is converted into a workflow, which is a sequential set of commands. Therefore, the change information obtained after transforming the change order is a sequential set of workflows.
[0179] Then, the change package creation center module B generates a standard descriptive file corresponding to the change information. This standard descriptive file includes the cloud service product name, version, description, architecture, dependency information, and hot update execution entry point information. Next, the package output factory module C generates the change package, i.e., the change file. Specifically, the package output factory module C converts the change order, the standard descriptive file, and the update procedures for heterogeneous cloud products, such as binary programs, scripts, Docker images, etc., into files recognizable by the private cloud platform, thus obtaining the change file, i.e., the change package. The update procedures for heterogeneous cloud products are used when executing the change steps in the change order.
[0180] Finally, sandbox testing is conducted using module D. This involves selecting the same basic environment as the private cloud platform and then performing hot update verification on the change package within that environment. If the test fails, an error message is provided, allowing developers to make secondary modifications. If verification succeeds, the change package is tagged as valid, indicating that it is executable and effective. At this point, the change package becomes a releasable change package and can be deployed to various private cloud environments to perform hot updates of cloud service products. There can be N (positive integer) private clouds.
[0181] For updates to heterogeneous cloud services in private clouds, this change package allows for hot updates of corresponding cloud service products across different private clouds. Different private clouds have different infrastructure environments. For example, private cloud 1 has one region (a cloud region, i.e., a region where AWS provides cloud services, designed to allow users to access services from nearby locations and reduce network latency; typically, several availability zones within a city constitute a cloud region), and this cloud region contains one data center. Private cloud environment 2 has two cloud regions, each with two data centers. Specifically: In the management platform of private cloud 1, the obtained change package is parsed using the change package parser E to obtain change information, related information, and standard update entry information. Then, the basic environment information corresponding to that private cloud is obtained, such as cloud region information, data center information, cloud service product deployment information, and instance distribution of cloud service products. Finally, the change information is validated, including verification of the syntax correctness of the change information, verification of the correctness of the cloud service products, and a change risk level warning, etc.
[0182] Then, converter F adapts and converts the change information based on the basic environment information corresponding to the private cloud. That is, it generates an equal number of instance change information based on the number of instances of the cloud service product. For example, if the cloud service product has two instances deployed in private cloud 1, the change information corresponding to the cloud service product will be split into two sub-change information. Each sub-change information corresponds to a running cloud service instance, and the execution of this sub-change information is a hot update of the running instance.
[0183] The analyzer G then uses the change information and basic environment information to generate the change order for each cloud service instance. It can obtain a specified execution order based on region information, data center information, and cloud service product deployment information; for example, executing cloud region 1 first, then cloud region 2, or executing data center 2 first, then data center 1, etc. If changes are made to the database cloud service, a change notification can be provided for secondary confirmation to ensure security. The analyzer G outputs the change order for each cloud service instance and its corresponding executable program.
[0184] Executor H performs hot updates, meaning it updates the cloud service instance using the change information according to the order of changes. Within Executor H, hot updates are performed through an execution engine, such as... Figure 15 The diagram illustrates the architecture of the execution engine, which comprises a three-layer architecture. The bottom layer consists of reusable atomic commands (Commands), providing basic, general functionalities such as downloading files or pushing images. Multiple atomic commands are combined into a WorkflowTemplate based on business scenarios. The WorkflowTemplate provides orchestration at the business component level. For example, updating database cloud service components might use atomic commands like downloading files or executing scripts, and these commands are configured to execute on their respective execution machines. Multiple workflow templates are combined into a tFlow, which determines the execution order of the WorkflowTemplate. Furthermore, the WorkflowTemplate is a static template that is converted into a TemplateInstance during the execution phase. The execution engine can generate a change topology based on the change order, and then execute the changes sequentially and concurrently according to the change topology to obtain the updated cloud service.
[0185] In practice, the execution engine uses a three-layer model to complete standardized hot updates of heterogeneous cloud service products. For example... Figure 16The diagram shows a three-layer architecture. Cloud service products are abstracted into an application model. A cloud service product can contain multiple cloud product components, such as cloud service product 1 including agent components, service components, etc. Hot updates of cloud service products specifically involve hot updates of cloud product components. This application model has a three-layer structure: application description, component description, and load description. The application description contains information such as the name and description of the cloud service product. Cloud service products with different architectures are logically described uniformly through the application. The component description is for components such as agents, including the component's name, architecture, description, dependencies, etc., because different components have different architectures. The load description specifically includes the update programs corresponding to heterogeneous components: such as image programs, database programs, binary programs, and other executable programs. Image programs are described and executed using Dockerfiles (text files used to build images, containing instructions and descriptions required for image building). Binary programs are executed using workflows, and database programs, etc., can be executed using shell (script) commands. The load balancer specification defines the execution entry point for the change information file. Descriptions of update entry points for heterogeneous cloud server products must be included in this file. During execution, the process uniformly begins from the change information file. For image-based load balancers, the Dockerfile is executed; for binary load balancers, a workflow is scheduled; and for database load balancers, shell or other command-line text is executed directly. Furthermore, changes to heterogeneous cloud service products can be executed on different infrastructures. For example, scripts can be executed on physical machines, and commands can be executed within Docker containers. The execution engine utilizes different execution channels to achieve hot updates across different infrastructures, including Kubernetes, agent, and SSH execution channels. These channels enable hot updates of different cloud service products in different infrastructure environments.
[0186] Finally, the observation platform I monitors the cloud service hot update process, issuing alerts to ensure the entire hot update is stable and thus avoid affecting the normal use of the cloud service. It can also generate update reports, improving the efficiency of hot updates and facilitating user management of cloud service products.
[0187] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0188] Based on the same inventive concept, this application also provides a cloud service update apparatus for implementing the cloud service update method described above. The solution provided by this apparatus is similar to the implementation described in the above method; therefore, the specific limitations in one or more cloud service update apparatus embodiments provided below can be found in the limitations of the cloud service update method described above, and will not be repeated here.
[0189] In one embodiment, such as Figure 17 As shown, a cloud service update device 1700 is provided, including: a data acquisition module 1702, an information acquisition module 1704, a conversion module 1706, a sequence generation module 1708, and an update module 1710, wherein:
[0190] Data acquisition module 1702 is used to acquire hot update data, which includes change information corresponding to cloud services, related information corresponding to cloud services, and standard update entry information.
[0191] The information acquisition module 1704 is used to acquire the basic environment information corresponding to the cloud service. The basic environment information includes the deployment information and instance information of the cloud service.
[0192] The conversion module 1706 is used to convert change information based on the instance information corresponding to the cloud service to obtain change information for each instance corresponding to the cloud service.
[0193] The sequence generation module 1708 is used to determine the instance update order corresponding to each instance change information based on the deployment information and association information of the cloud service.
[0194] The update module 1710 is used to perform hot updates of cloud services by using the change information of each instance in the order of instance updates through the standard update entry information, so as to obtain updated cloud services.
[0195] In one embodiment, the data acquisition module 1702 is further configured to acquire a hot update request, which carries a change file; parse the change file to obtain the change information to be verified and the change description information corresponding to the cloud service; verify the validity of the change information to be verified; when the validity verification passes, obtain the change information corresponding to the cloud service, and determine the associated information and the standard update entry information corresponding to the cloud service from the change description information.
[0196] In one embodiment, the cloud service update device 1700 further includes:
[0197] The file acquisition module is used to obtain the pending change information of cloud services through the change file creation page; when the validity verification of the pending change information of cloud services is successful, the corresponding change information of cloud services is determined based on the pending change information of cloud services; the associated information and standard update entry information of cloud services are obtained, and the change description information of cloud services is obtained based on the associated information and standard update entry information; the executable file is converted based on the change information and change description information of cloud services to obtain the change file.
[0198] In one embodiment, the cloud service update device 1700 further includes: a test module, configured to obtain test environment information corresponding to the cloud service, and perform hot update test on the changed file in the test environment corresponding to the test environment information; when the hot update test passes, generate a test pass tag corresponding to the changed file, associate the changed file with the test pass tag, and obtain the tested changed file.
[0199] The data acquisition module 1702 is also used to acquire the target hot update request, which carries the changed files after testing.
[0200] In one embodiment, the conversion module 1706 is further configured to determine the number of cloud service instances and the running information of cloud service instances from the instance information corresponding to the cloud service; and to adaptively copy the change information based on the number of cloud service instances and the running information of cloud service instances to obtain the change information of each instance corresponding to the cloud service.
[0201] In one embodiment, the sequence generation module 1708 is further configured to obtain the deployment change order corresponding to each instance change information based on the deployment information corresponding to the cloud service; determine the step change order of the change steps in each instance change information according to the dependency relationship of the change steps in the associated information; and obtain the instance update order corresponding to each instance change information based on the deployment change order and the step change order.
[0202] In one embodiment, the update module 1710 is further configured to determine the current change information of the current cloud service instance from the change information of each instance based on the instance update order; determine the current update entry information corresponding to the current change information using the standard update entry information; call the current update entry information to perform a hot update on the current cloud service instance using the current change information to obtain the current updated cloud service instance; and perform hot updates on the cloud service instances corresponding to the cloud service in sequence according to the instance update order to obtain the updated cloud service.
[0203] In one embodiment, the current instance change information includes a changed executable program; the update module 1710 is also used to obtain the execution channel corresponding to the changed executable program; call the current update entry information to execute the changed executable program through the execution channel, and when the changed executable program is completed, the current updated cloud service instance is obtained.
[0204] In one embodiment, the cloud service includes at least two components; the cloud service update device 1700 further includes:
[0205] The component order determination module is used to determine the component update order of at least two components based on the component dependencies in the association information;
[0206] The update module 1710 is also used to perform hot updates on cloud services including at least two components by using the change information of each instance according to the instance update order and component update order through the standard update entry information, so as to obtain the target updated cloud service.
[0207] In one embodiment, the cloud service includes at least two; the cloud service update device 1700 further includes:
[0208] At least two cloud service update modules are used to obtain target basic environment information corresponding to at least two cloud services. The target basic environment information includes deployment information and instance information corresponding to at least two cloud services. Based on the instance information corresponding to at least two cloud services, the change information corresponding to at least two cloud services is transformed to obtain the instance change information corresponding to each of the at least two cloud services. Based on the deployment information and the association information corresponding to at least two cloud services, the instance update order of the instance change information corresponding to at least two cloud services is determined. Based on the cloud service dependencies in the association information corresponding to at least two cloud services, the service update order of at least two cloud services is determined. According to the service update order and the instance update order, the at least two cloud services are hot-updated using the instance change information through the standard update entry information to obtain at least two updated cloud services.
[0209] In one embodiment, the cloud service update device 1700 further includes:
[0210] The Stop Update module is used to obtain the running status data of the cloud service during the hot update process at preset time intervals. When the running status data does not meet the preset stability threshold, hot update abnormal information is generated; alarm prompts are made based on the hot update abnormal information; when a hot update stop command is received, the hot update of the cloud service is stopped according to the hot update stop command.
[0211] In one embodiment, the cloud service update device 1700 further includes:
[0212] The report generation module is used to obtain the update operation status data corresponding to the updated cloud service, and to obtain the historical operation status data corresponding to the cloud service; and to generate an update report based on the update operation status data and the historical operation status data.
[0213] Each module in the aforementioned cloud service update device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can call and execute the operations corresponding to each module.
[0214] In one embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 18 As shown, this computer device includes a processor, memory, input / output interfaces (I / O), and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides the environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The database stores hot-update data and cloud service data. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communicating with external terminals via a network connection. When the computer program is executed by the processor, it implements a cloud service update method.
[0215] In one embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 19As shown, the computer device includes a processor, memory, input / output interfaces, a communication interface, a display unit, and an input device. The processor, memory, and input / output interfaces are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interfaces. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The input / output interfaces are used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, NFC (Near Field Communication), or other technologies. When the computer program is executed by the processor, it implements a cloud service update method. The display unit of the computer device is used to form a visually visible image. It can be a display screen, a projection device, or a virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.
[0216] Those skilled in the art will understand that Figure 17 Alternatively, the structure shown in Figure 18 is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0217] In one embodiment, a computer device is also provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps in the above method embodiments.
[0218] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the steps in the above method embodiments.
[0219] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above method embodiments.
[0220] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data shall comply with the relevant laws, regulations and standards of the relevant countries and regions.
[0221] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.
[0222] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0223] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A cloud service update method, characterized in that, The method includes: Acquire hot update data, which includes change information corresponding to the cloud service, associated information corresponding to the cloud service, and standard update entry information; Obtain the basic environment information corresponding to the cloud service, including the deployment information and instance information corresponding to the cloud service; The change information is converted based on the instance information corresponding to the cloud service to obtain the instance change information corresponding to the cloud service, including: determining the number of instance change information after conversion based on the number of cloud service instances in the instance information, and adaptively converting the change information based on the address information of the cloud service instances in the instance information to obtain the instance change information corresponding to the cloud service. The instance update order corresponding to each instance change information is determined based on the deployment information and the associated information of the cloud service. According to the instance update order, the cloud service is hot-updated using the change information of each instance through the standard update entry information to obtain the updated cloud service.
2. The method according to claim 1, characterized in that, The acquisition of hot update data includes: A hot update request is obtained, which carries the changed files; The modified file is parsed to obtain the unverified modification information and the modification description information corresponding to the cloud service. The validity of the change information to be verified is verified. When the validity verification is successful, the change information corresponding to the cloud service is obtained, and the associated information and the standard update entry information corresponding to the cloud service are determined from the change description information.
3. The method according to claim 2, characterized in that, Before obtaining the hot update request, the following is also included: Obtain the pending change information of the cloud service through the change file creation page; When the validity verification of the pending change information of the cloud service is successful, the change information corresponding to the cloud service is determined based on the pending change information of the cloud service. Obtain the associated information and standard update entry information corresponding to the cloud service, and obtain the change description information corresponding to the cloud service based on the associated information and standard update entry information; The executable file is converted based on the change information and change description information corresponding to the cloud service to obtain the change file.
4. The method according to claim 3, characterized in that, After converting the executable file based on the change information and change description information corresponding to the cloud service to obtain the changed file, the process further includes: Obtain the test environment information corresponding to the cloud service, and perform a hot update test on the changed file in the test environment corresponding to the test environment information; When the hot update test passes, a test pass tag is generated corresponding to the changed file. The changed file is then associated with the test pass tag to obtain the tested changed file. The process of obtaining a hot update request includes: A target hot update request is obtained, which carries the changed files after the test.
5. The method according to claim 1, characterized in that, The process of converting the change information based on the instance information corresponding to the cloud service to obtain the change information for each instance corresponding to the cloud service includes: The number of cloud service instances and the running information of the cloud service instances are determined from the instance information corresponding to the cloud service. The change information is adaptively replicated based on the number of cloud service instances and the running information of the cloud service instances to obtain the change information for each instance corresponding to the cloud service.
6. The method according to claim 1, characterized in that, The step of determining the instance update order corresponding to each instance change information based on the deployment information and the association information of the cloud service includes: Based on the deployment information corresponding to the cloud service, obtain the deployment change order corresponding to the change information of each instance; The order of steps in the change information of each instance is determined according to the dependency relationship of the change steps in the associated information. The instance update order corresponding to each instance change information is obtained based on the deployment change order and the step change order.
7. The method according to claim 1, characterized in that, The step of hot-updating the cloud service using the change information of each instance according to the instance update order through the standard update entry information to obtain the updated cloud service includes: The current change information of the current cloud service instance is determined from the change information of each instance based on the instance update order; The standard update entry information is used to determine the current update entry information corresponding to the current change information; The current cloud service instance is hot-updated by calling the current update entry information and using the current change information to obtain the current updated cloud service instance; The cloud service instances corresponding to the cloud service are hot-updated sequentially according to the instance update order to obtain the updated cloud service.
8. The method according to claim 7, characterized in that, The current change information includes changes to the executable program; The step of calling the current update entry information and using the current change information to perform a hot update on the current cloud service instance to obtain the current updated cloud service instance includes: Obtain the execution channel corresponding to the modified executable program; The current update entry information is invoked to execute the change executable program through the execution channel. When the change executable program completes execution, the current update cloud service instance is obtained.
9. The method according to claim 1, characterized in that, The cloud service includes at least two components; the method further includes: The component update order of the at least two components is determined based on the component dependencies in the association information; The step of hot-updating the cloud service using the change information of each instance according to the instance update order through the standard update entry information to obtain the updated cloud service includes: According to the instance update order and the component update order, the cloud service including at least two components is hot-updated using the change information of each instance through the standard update entry information to obtain the target updated cloud service.
10. The method according to claim 1, characterized in that, The cloud services include at least two; the method further includes: Obtain the target basic environment information corresponding to the at least two cloud services, wherein the target basic environment information includes the deployment information and instance information corresponding to the at least two cloud services; Based on the instance information corresponding to the at least two cloud services, the change information corresponding to the at least two cloud services is transformed to obtain the instance change information corresponding to the at least two cloud services. The instance update order of each instance change information corresponding to the at least two cloud services is determined based on the deployment information and association information corresponding to the at least two cloud services. The service update order of the at least two cloud services is determined based on the dependency relationship of the cloud services in the association information corresponding to the at least two cloud services. According to the service update order and instance update order, the change information of each instance is used to perform hot updates on at least two cloud services through the standard update entry information to obtain at least two updated cloud services.
11. The method according to claim 1, characterized in that, The method further includes: The cloud service's operational status data is acquired at preset time intervals during the hot update process. When the operational status data does not meet a preset stability threshold, hot update anomaly information is generated. An alarm will be triggered based on the aforementioned hot update anomaly information; When a hot update stop command is received, the hot update of the cloud service is stopped according to the hot update stop command.
12. The method according to claim 1, characterized in that, After performing a hot update of the cloud service using the change information of each instance according to the instance update order through the standard update entry information to obtain the updated cloud service, the process further includes: Obtain the update running status data corresponding to the updated cloud service, and obtain the historical running status data corresponding to the cloud service; An update report is generated based on the updated operating status data and the historical operating status data.
13. A cloud service update device, characterized in that, The device includes: The data acquisition module is used to acquire hot update data, which includes change information corresponding to the cloud service, related information corresponding to the cloud service, and standard update entry information. The information acquisition module is used to acquire the basic environment information corresponding to the cloud service, including the deployment information and instance information corresponding to the cloud service. The conversion module is used to convert the change information based on the instance information corresponding to the cloud service to obtain the instance change information corresponding to the cloud service. The conversion module includes: determining the number of instance change information after conversion based on the number of cloud service instances in the instance information; and adaptively converting the change information based on the address information of the cloud service instances in the instance information to obtain the instance change information corresponding to the cloud service. The sequence generation module is used to determine the instance update order corresponding to each instance change information based on the deployment information and the association information of the cloud service; The update module is used to perform a hot update of the cloud service by using the change information of each instance according to the update order of the instances through the standard update entry information, so as to obtain the updated cloud service.
14. The apparatus according to claim 13, characterized in that, The data acquisition module is also used to acquire a hot update request, which carries a change file; and to parse the change file to obtain the unverified change information and the change description information corresponding to the cloud service. The validity of the change information to be verified is verified. When the validity verification is successful, the change information corresponding to the cloud service is obtained, and the associated information and the standard update entry information corresponding to the cloud service are determined from the change description information.
15. The apparatus according to claim 14, characterized in that, The device further includes: The file acquisition module is used to obtain the pending verification change information of the cloud service through the change file creation page; when the validity verification of the pending verification change information of the cloud service is successful, the module determines the change information corresponding to the cloud service based on the pending verification change information of the cloud service; obtains the associated information and standard update entry information corresponding to the cloud service, and obtains the change description information corresponding to the cloud service based on the associated information and standard update entry information; and performs executable file conversion based on the change information and change description information corresponding to the cloud service to obtain the change file.
16. The apparatus according to claim 15, characterized in that, The device further includes: The testing module is used to obtain the test environment information corresponding to the cloud service, and perform hot update test on the changed file in the test environment corresponding to the test environment information; when the hot update test passes, a test pass tag corresponding to the changed file is generated, and the changed file is associated with the test pass tag to obtain the changed file after the test; The data acquisition module is also used to acquire a target hot update request, which carries the changed file after the test.
17. The apparatus according to claim 13, characterized in that, The conversion module is further configured to determine the number of cloud service instances and the running information of cloud service instances from the instance information corresponding to the cloud service; and to adaptively replicate the change information based on the number of cloud service instances and the running information of cloud service instances to obtain the change information of each instance corresponding to the cloud service.
18. The apparatus according to claim 13, characterized in that, The sequence generation module is further configured to obtain the deployment change order corresponding to each instance change information based on the deployment information corresponding to the cloud service; and determine the step change order of the change steps in each instance change information according to the dependency relationship of the change steps in the associated information. The instance update order corresponding to each instance change information is obtained based on the deployment change order and the step change order.
19. The apparatus according to claim 13, characterized in that, The update module is further configured to determine the current change information of the current cloud service instance from the instance change information based on the instance update order; and to determine the current update entry information corresponding to the current change information using the standard update entry information; The current cloud service instance is hot-updated by calling the current update entry information and using the current change information to obtain the current updated cloud service instance; The cloud service instances corresponding to the cloud service are hot-updated sequentially according to the instance update order to obtain the updated cloud service.
20. The apparatus according to claim 19, characterized in that, The current change information includes changes to the executable program; The update module is also used to obtain the execution channel corresponding to the modified executable program; The current update entry information is invoked to execute the change executable program through the execution channel. When the change executable program completes execution, the current update cloud service instance is obtained.
21. The apparatus according to claim 13, characterized in that, The cloud service includes at least two components; the device further includes: A component order determination module is used to determine the component update order of the at least two components based on the component dependency relationship in the association information; The update module is also used to perform a hot update on the cloud service, which includes at least two components, by using the change information of each instance through the standard update entry information according to the instance update order and the component update order, so as to obtain the target updated cloud service.
22. The apparatus according to claim 13, characterized in that, The cloud service includes at least two; the device also includes: At least two cloud service update modules are used to obtain target basic environment information corresponding to the at least two cloud services, the target basic environment information including deployment information and instance information corresponding to the at least two cloud services; convert the change information corresponding to the at least two cloud services based on the instance information to obtain instance change information corresponding to each of the at least two cloud services; determine the instance update order of the instance change information corresponding to each of the at least two cloud services based on the deployment information and the association information corresponding to the at least two cloud services; determine the service update order of the at least two cloud services based on the cloud service dependencies in the association information; and perform hot updates on the at least two cloud services using the instance change information through the standard update entry information according to the service update order and instance update order to obtain at least two updated cloud services.
23. The apparatus according to claim 13, characterized in that, The device further includes: The stop update module is used to acquire the running status data of the cloud service during the hot update process at preset time intervals, generate hot update abnormal information when the running status data does not meet the preset stability threshold, provide an alarm based on the hot update abnormal information, and stop the hot update of the cloud service according to the hot update stop command when a hot update stop command is received.
24. The apparatus according to claim 13, characterized in that, The device further includes: The report generation module is used to obtain update operation status data corresponding to the updated cloud service and obtain historical operation status data corresponding to the cloud service; and generate an update report based on the update operation status data and the historical operation status data.
25. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 12.
26. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 12.
27. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 12.