Orchestration Method, Device, Computer Equipment and Storage Medium of Cloud Resources

By obtaining the orchestration template information of cloud resources and converting it into orchestration scripts, matching interface requests are generated, the orchestration inefficiency caused by differences between different clouds is solved, efficient management and unified orchestration of multi-cloud resources are achieved, and user experience and cloud service provider management efficiency is improved.

CN114237871BActive Publication Date: 2025-07-25SHANGHAI PUDONG DEVELOPMENT BANK
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202111403785.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-11-24
Publication Date
2025-07-25
Estimated Expiration
2041-11-24

AI Technical Summary

Technical Problem

In the prior art, due to the differences between different clouds, cloud orchestration platforms are inefficient and have poor user experience when managing multiple types of cloud resources, and cloud service providers need to invest a lot of costs in multi-cloud management.

Method used

By obtaining the orchestration template information of cloud resources, using preset script conversion rules to convert it into orchestration scripts, and generating interface requests that match the target cloud environment to realize orchestration operations of the target cloud resources.

Benefits of technology

The orchestration process of multi-cloud resources has been simplified, the multi-cloud orchestration capabilities have been improved, the management costs of cloud service providers have been reduced, and the user experience has been improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114237871B_ABST
    Figure CN114237871B_ABST
Patent Text Reader

Abstract

The present application relates to a method, apparatus, computer device, storage medium, and computer program product for cloud resource orchestration. The method includes: obtaining orchestration template information including the target state information of the target cloud resource, and converting the orchestration template information into an orchestration script for orchestrating the target cloud resource based on a preset script conversion rule; orchestrating the target cloud resource based on the orchestration script to obtain an orchestration result of the target cloud resource. Since various types of cloud resources can generate orchestration template information in the same format, an executable file script can be generated based on the orchestration template information. When the file script is executed, the orchestration of all types of cloud resources is realized, unifying and simplifying the orchestration processes of multiple cloud resources, supporting multi-cloud heterogeneity, and making the resource information of the cloud platform orchestration consistent with the resource information of the underlying cloud environment, thereby improving the multi-cloud orchestration ability.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of cloud resources, and particularly to an orchestration method, device, computer device, and storage medium for cloud resources. Background Art

[0002] With the rapid development of cloud computing technology, cloud computing technology has been widely used in various industries. In actual application scenarios, users will use multiple types of clouds. Also, due to the large differences between various types of clouds, how to facilitate users to orchestrate multiple types of clouds on the cloud orchestration platform is a problem faced by current cloud providers.

[0003] In related technologies, due to the differences between different clouds, when the unified cloud management platform orchestrates third-party cloud resources, it is necessary to manage all resources on the third-party cloud platform, that is, develop functions that are exactly the same as those of the third-party cloud platform, or directly jump to the page of the corresponding third-party cloud platform and complete the corresponding operations on its platform. Both of the above methods will result in low efficiency when orchestrating multiple cloud resources. Summary of the Invention

[0004] Based on this, it is necessary to provide an orchestration method, device, computer device, and storage medium for cloud resources that can improve the orchestration efficiency and reduce the pressure on the cloud orchestration platform for the above technical problems.

[0005] In a first aspect, this application provides an orchestration method for cloud resources. The method includes:

[0006] Obtain the orchestration template information of the target cloud resources, where the orchestration template information includes the target status information of the target cloud resources;

[0007] According to the preset script conversion rules, convert the orchestration template information into an orchestration script, where the orchestration script is an executable file for orchestrating the target cloud resources;

[0008] Generate a target interface request according to the preset interface request generation tool and the orchestration script, where the target interface request matches the interface of the target cloud environment where the target cloud resources are located;

[0009] Based on the target interface request, perform an orchestration operation on the target cloud resources in the target cloud environment.

[0010] In one embodiment, the obtaining the orchestration template information of the target cloud resources includes:

[0011] Generate at least one orchestration component corresponding to the target cloud resources through a preset key-value type language template and preset cloud resource configuration parameters;

[0012] Based on a preset combination rule, at least one orchestration component is combined to obtain orchestration template information.

[0013] In one embodiment, the obtaining of the orchestration template information of the target cloud resource includes:

[0014] Scanning the cloud environment where the target cloud resource is located through a preset status scanning tool to obtain the scanning template information of the cloud resource, and the scanning template information includes the resource status information of the target cloud resource;

[0015] Based on a preset key-value format conversion rule, converting the scanning template information into orchestration template information.

[0016] In one embodiment, the combining of at least one orchestration component based on a preset combination rule to obtain orchestration template information includes:

[0017] In the case of multiple orchestration components, based on the preset combination rule, determining the association information between the orchestration components;

[0018] After adding the association information to each orchestration component respectively, combining the multiple orchestration components to obtain orchestration template information.

[0019] In one of the embodiments, the method further includes:

[0020] Obtaining an orchestration result;

[0021] According to the orchestration result, updating the status file of the target cloud environment, where the status file is a resource attribute file for recording cloud resources.

[0022] In one of the embodiments, after the step of orchestrating the target cloud resource in the target cloud environment, the method further includes:

[0023] Storing the orchestration template information into a preset cloud resource orchestration template database.

[0024] In a second aspect, the present application further provides an orchestration device for cloud resources, and the device includes:

[0025] An obtaining module, configured to obtain the orchestration template information of the target cloud resource, where the orchestration template information includes the target status information of the target cloud resource;

[0026] A conversion module, configured to convert the orchestration template information into an orchestration script according to a preset script conversion rule, where the orchestration script is an executable file for orchestrating the target cloud resource;

[0027] A generation module, configured to generate a tool and the orchestration script according to a preset interface request, and generate a target interface request, where the target interface request matches the interface of the target cloud environment where the target cloud resource is located;

[0028] An orchestration module, configured to perform an orchestration operation on the target cloud resource in the target cloud environment based on the target interface request.

[0029] In one embodiment, the obtaining module is specifically configured to:

[0030] Generate at least one orchestration component corresponding to the target cloud resource through a preset key-value type language template and preset cloud resource configuration parameters;

[0031] Combine at least one orchestration component based on a preset combination rule to obtain orchestration template information.

[0032] In one embodiment, the obtaining module is further specifically configured to:

[0033] Scan the cloud environment where the target cloud resource is located through a preset status scanning tool to obtain scanning template information of the cloud resource, where the scanning template information includes resource status information of the target cloud resource;

[0034] Convert the scanning template information into orchestration template information based on a preset key-value format conversion rule.

[0035] In one embodiment, the obtaining module is further specifically configured to:

[0036] In the case of multiple orchestration components, determine association information between the orchestration components based on the preset combination rule;

[0037] After adding the association information to each orchestration component respectively, combine the multiple orchestration components to obtain orchestration template information.

[0038] In one of the embodiments, the device further includes:

[0039] An update module, configured to obtain an orchestration result; and update a status file of the target cloud environment according to the orchestration result, where the status file is a resource attribute file for recording cloud resources.

[0040] In one of the embodiments, the device further includes:

[0041] A storage module, configured to store the orchestration template information in a preset cloud resource orchestration template database.

[0042] In a third aspect, the present application further provides a computer device. The computer device includes a memory and a processor. The memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:

[0043] Obtain the orchestration template information of the target cloud resource, where the orchestration template information includes the target status information of the target cloud resource;

[0044] According to the preset script conversion rules, convert the orchestration template information into an orchestration script, where the orchestration script is an executable file for orchestrating the target cloud resource;

[0045] Generate a target interface request according to the preset interface request generation tool and the orchestration script, where the target interface request matches the interface of the target cloud environment where the target cloud resource is located;

[0046] Based on the target interface request, perform an orchestration operation on the target cloud resource in the target cloud environment.

[0047] In a fourth aspect, the present application further provides a computer-readable storage medium. The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the following steps are implemented:

[0048] Obtain the orchestration template information of the target cloud resource, where the orchestration template information includes the target status information of the target cloud resource;

[0049] According to the preset script conversion rules, convert the orchestration template information into an orchestration script, where the orchestration script is an executable file for orchestrating the target cloud resource;

[0050] Generate a target interface request according to the preset interface request generation tool and the orchestration script, where the target interface request matches the interface of the target cloud environment where the target cloud resource is located;

[0051] Based on the target interface request, perform an orchestration operation on the target cloud resource in the target cloud environment.

[0052] In a fifth aspect, the present application further provides a computer program product. The computer program product includes a computer program, and when the computer program is executed by a processor, the following steps are implemented:

[0053] Obtain the orchestration template information of the target cloud resource, where the orchestration template information includes the target status information of the target cloud resource;

[0054] According to the preset script conversion rules, convert the orchestration template information into an orchestration script, where the orchestration script is an executable file for orchestrating the target cloud resource;

[0055] Generate a target interface request according to a preset interface request generation tool and the orchestration script, where the target interface request matches the interface of the target cloud environment where the target cloud resource is located;

[0056] Based on the target interface request, perform an orchestration operation on the target cloud resource in the target cloud environment.

[0057] The above cloud resource orchestration method, device, computer device, storage medium and computer program product obtain orchestration template information including the target status information of the target cloud resource, and based on preset script conversion rules, convert the orchestration template information into an orchestration script for orchestrating the target cloud resource; based on the orchestration script, orchestrate the target cloud resource to obtain the orchestration result of the target cloud resource. Since various types of cloud resources can generate orchestration template information in the same format, an executable file script can be generated based on this orchestration template information. When the file script is executed, the orchestration of all types of cloud resources is achieved, unifying and simplifying the orchestration processes of multiple cloud resources, supporting multi-cloud heterogeneity, and making the resource information of the unified cloud platform orchestration consistent with the resource information of the underlying cloud environment, thereby improving the multi-cloud orchestration ability. Description of the Drawings

[0058] Figure 1 It is a flowchart of the cloud resource orchestration method in an embodiment;

[0059] Figure 2 It is a flowchart of the process of combining orchestration components in an embodiment;

[0060] Figure 3 It is a flowchart of the process of converting scanned template information into orchestration template information in an embodiment;

[0061] Figure 4 It is a flowchart of the process of combining multiple orchestration components in an embodiment;

[0062] Figure 5 It is a flowchart of the update process in an embodiment;

[0063] Figure 6 It is a schematic diagram of the cloud resource orchestration operation in an embodiment;

[0064] Figure 7 It is a structural block diagram of the cloud resource orchestration device in an embodiment;

[0065] Figure 8 It is an internal structure diagram of a computer device in an embodiment. Detailed Description of the Invention

[0066] In order to make the objectives, technical solutions and advantages of the present application more clear and understandable, the present application will be further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0067] In the related art, the cloud platform bears and supports various industry applications upwards, and manages and schedules resources downwards. It supports users to fill in cloud resource parameters on the cloud management platform portal. The backend service receives the cloud resource parameters and converts them into service requests in the corresponding format for driving the cloud environment, so as to realize the deployment of cloud resources. In a multi-cloud scenario, for cloud service providers, due to the differences between different clouds, the ways for cloud service providers to manage different clouds are not unified, resulting in that cloud service providers must invest a large amount of costs in multi-cloud management. For users, applying for resources of different clouds requires different processes, which reduces the user experience. At the same time, the differences in cloud types will lead to huge efforts and time consumption for unified management of multi-cloud platform resources.

[0068] In one embodiment, as Figure 1 shown, a cloud resource orchestration method is provided. In this embodiment, an example is given where this method is applied to a terminal. It can be understood that this method can also be applied to a server, and can also be applied to a system including a terminal and a server, and is realized through the interaction between the terminal and the server. The above terminal can be, but is not limited to, various personal computers, laptop computers, smart phones, tablet computers, Internet of Things devices and portable wearable devices. The Internet of Things devices can be smart speakers, smart TVs, smart air conditioners, smart in-vehicle devices, etc. The portable wearable devices can be smart watches, smart bracelets, head-mounted devices, etc. The server can be realized by an independent server or a server cluster composed of multiple servers. In this embodiment, the cloud resource orchestration method includes the following steps:

[0069] Step 102, obtain the orchestration template information of the target cloud resource.

[0070] Among them, the orchestration template information includes the target status information of the target cloud resource.

[0071] Specifically, the target cloud resources can be one or more cloud resources determined according to the user's orchestration strategy. Cloud resources are cloud services provided by a cloud (cloud service provider) for external devices, and such cloud services can include virtual machines, virtual networks, load balancers, and public IP addresses (Internet Protocol Addresses), etc. The terminal can be a management device, an orchestration device, or a control device in an actual application scenario. The terminal can obtain the orchestration template information of the target cloud resources in a preset database. The target status information of the target cloud resources included in the orchestration template information of the target cloud resources is the configurable item information of the target cloud resources.

[0072] Step 104, convert the orchestration template information into an orchestration script according to the preset script conversion rules.

[0073] Among them, the orchestration script is an executable file for orchestrating the target cloud resources.

[0074] Specifically, the preset script conversion rules can be a strategy for converting the orchestration template information into an executable file. The terminal can generate an executable file corresponding to the orchestration template information, that is, the orchestration script, according to the pre-configured script conversion rules. The orchestration script is a tool for performing resource orchestration of cloud resources in an actual application scenario. The script conversion process can be: converting the configuration item information included in the orchestration template information into a script language in the form of a script language, and generating script statements for calling a cloud adapter that matches the cloud type of the target cloud resources. In this way, the process of converting the orchestration template information into an orchestration script can be: converting the configuration item information of the target cloud resources included in the orchestration template information into a target script language in script format, and then determining the script statements for calling the cloud adapter according to the cloud type of the target cloud resources. In this way, the terminal can combine to obtain the orchestration script according to the target script language and the script statements.

[0075] Optionally, the script conversion rules can be that, taking each orchestration component included in the orchestration template information as a unit, for each orchestration component, generate a corresponding module block. The name information of the module block can be a combination of service_type (such as: vnet) and the name of the target cloud resources (such as: vnet1). In this way, the terminal can convert according to the data type of the orchestration component into an orchestration script statement in the corresponding format. The address_space of the constant data type can be converted to address_space = "10.0.0.0 / 24", and the subnet_names of the array data type can be converted to subnet_names = ["sub1", "sub2"].

[0076] Step 106: Generate a target interface request according to a preset interface request generation tool and an orchestration script.

[0077] Among them, the target interface request matches the interface of the target cloud environment where the target cloud resource is located.

[0078] Specifically, the preset interface request generation tool may be a cloud adapter in the orchestration tool. The terminal can, according to the user's orchestration strategy, call the preset interface request generation tool and generate a target interface request that matches the target cloud environment where the target cloud resource is located according to the orchestration script.

[0079] Step 108: Based on the target interface request, perform an orchestration operation on the target cloud resource in the target cloud environment.

[0080] Specifically, when the terminal generates a target interface request, the terminal can perform an orchestration operation on the target cloud resource in the target cloud environment corresponding to the target cloud resource. That is to say, the process of executing the orchestration script is the process in which the terminal calls the preset interface request generation tool and, based on the interface request generation tool (cloud adapter), executes the orchestration script to perform an orchestration operation on the target cloud resource in the cloud environment. The above-mentioned orchestration operation may include a creation operation of the target cloud resource, an update operation of the target cloud resource, and a deletion operation of the target cloud resource.

[0081] In the above cloud resource orchestration method, by combining the acquisition of orchestration template information containing the target state information of the target cloud resource and, based on preset script conversion rules, converting the orchestration template information into an orchestration script for orchestrating the target cloud resource; based on the orchestration script, orchestrating the target cloud resource to obtain the orchestration result of the target cloud resource. Since various types of cloud resources can generate the same format of orchestration template information, an executable file script can be generated based on the orchestration template information. When the file script is executed, the orchestration of all types of cloud resources is realized, unifying and simplifying the orchestration processes of multiple cloud resources, supporting multi-cloud heterogeneity, and making the resource information of the cloud platform orchestration consistent with the resource information of the underlying cloud environment, thereby improving the multi-cloud orchestration ability.

[0082] The cloud resource orchestration method provided by the embodiments of the present invention is a simple and easy-to-use method for managing cloud resource orchestration. The process of orchestrating cloud resources is relatively simple, and it can also achieve multi-cloud management and improve the ability to reverse manage existing cloud resources. In a multi-cloud scenario, through the cloud resource orchestration method provided by this embodiment, for cloud service providers, even if there are differences between different clouds, cloud service providers can manage different clouds in a unified manner, reducing the cost of cloud service providers for multi-cloud management. For users, they can apply for resources from different clouds through a unified process, improving the user experience.

[0083] In one embodiment, as Figure 2 shown, the specific processing procedure of the step "obtaining the orchestration template information of the target cloud resource" includes:

[0084] Step 202, generating at least one orchestration component corresponding to the target cloud resource through a preset key-value type language template and preset cloud resource configuration parameters.

[0085] Specifically, the preset key-value type language may be the key-value type YAML markup language (YAML Ain't a Markup Language, another markup language). This YAML language is a markup language with key-value type characteristics, and the preset key-value type language template may be an initial template for configuring the parameters of cloud resources. The above-mentioned preset cloud resource configuration parameters are parameters of the inherent attributes of cloud resources, such as cloud resource name parameters, cloud resource specification parameters, cloud resource operating system version parameters, and cloud resource usage password parameters, etc. The terminal defines the preset cloud resource configuration parameters through the preset key-value type language, that is, adds the cloud resource configuration parameters in the form of key-value type language to the preset key-value type language template to obtain one or more orchestration components corresponding to the target cloud resource.

[0086] Optionally, the process of the terminal generating the orchestration component is actually a process of redefining the target cloud resource through key-value type configuration items. When the target cloud resource is a virtual network, the orchestration component corresponding to the virtual network is:

[0087]

[0088]

[0089] In the above-mentioned orchestration component, the preset cloud resource configuration parameters include attributes such as the name information of the virtual network, the information of the service type to which it belongs, the address segment information, the subnet name information, the address segment information of the subnet name, and custom tags.

[0090] In this way, the terminal configures the parameters of the target cloud resource (such as virtual machine name parameters, specification parameters, etc.) through the key-value type language, that is, the terminal defines the cloud resource (such as a virtual machine) through the key-value type YAML markup language. In this way, the target cloud resource defined by this YAML markup language is called an orchestration component.

[0091] Step 204, combining at least one orchestration component based on a preset combination rule to obtain the orchestration template information.

[0092] Specifically, the preset combination rule can be: when there is a dependency relationship between multiple orchestration components, the terminal needs to determine the association information (associated items) between the multiple orchestration components, and the terminal combines the multiple orchestration components based on the association information to obtain the orchestration template information. When there is no dependency relationship between multiple orchestration components, the terminal can directly combine the multiple orchestration components (directly place the multiple orchestration components together) to obtain the orchestration template information.

[0093] In this embodiment, by virtue of the characteristics of simplicity, high readability, and strong description ability of the preset key-value type language (YAML markup language), cloud resource orchestration components are defined in the form of key-value configuration items, which can efficiently integrate various virtual cloud resources and improve the flexibility of cloud resource orchestration.

[0094] In one embodiment, as Figure 3 shown, the specific processing procedure of the step "obtain the orchestration template information of the target cloud resource" includes:

[0095] Step 302, scan the cloud environment where the target cloud resource is located through a preset status scanning tool to obtain the scanning template information of the cloud resource.

[0096] Among them, the scanning template information includes the resource status information of the target cloud resource.

[0097] Specifically, the preset status scanning tool can be a status file extraction tool or a status file extraction algorithm, etc. For the cloud environment where the target cloud resource is located, the terminal can scan through the above preset status scanning tool to generate a file describing the resource status information of various cloud resources in the cloud resource in real time, that is, the scanning template information. This scanning template information is a file in JSON format.

[0098] Optionally, the above scanning template information is a mapping file of the inherent state of resources in the real cloud environment. This mapping file includes the inherent state attribute information of the source of the target cloud resource, such as: the name information of the virtual network, the network segment address information of the virtual network, the name and network segment information of the virtual subnet, the operating system version information of the virtual machine, the virtual machine SKU information (Stock Keeping Unit, inventory unit), etc. Different cloud environments have different scanning templates.

[0099] Step 304, convert the scanning template information into orchestration template information based on the preset key-value format conversion rule.

[0100] Specifically, the terminal can implement the above preset key-value format conversion rule through a conversion algorithm. This key-value format conversion rule can convert a file in JSON format into a file in YAML format, that is, the terminal can convert the scanning template information into orchestration template information.

[0101] In one embodiment, as Figure 4 shown, the specific processing procedure of step 204, "Based on a preset combination rule, combine at least one orchestration component to obtain orchestration template information", includes:

[0102] Step 402, in the case of having multiple orchestration components, determine the association information between each orchestration component based on a preset combination rule.

[0103] Specifically, the terminal can determine multiple orchestration components in response to the user's selection operation of the orchestration components. In this way, in the case where the terminal determines that there is a dependency relationship between multiple orchestration components, it is necessary to determine the association information between each orchestration component.

[0104] For example, the terminal can obtain two orchestration components, including a virtual machine orchestration component and a virtual subnet orchestration component under a virtual network. In this way, the association item (association information) between the virtual machine orchestration component and the virtual subnet orchestration component under the virtual network can be: "vnet_subnet_id: "vnet1.subnet1".

[0105] Step 404, after adding the association information to each orchestration component respectively, combine the multiple orchestration components to obtain orchestration template information.

[0106] Specifically, the terminal can add the association information to each orchestration component respectively and combine the multiple orchestration components. The terminal can combine each orchestration component in a way of connecting head to tail to obtain orchestration template information.

[0107] For example, the terminal can obtain a virtual machine (vm1) associated with a virtual subnet (vnet1) under a virtual network. In this way, the orchestration template information can be obtained by combining the orchestration component of the virtual machine and the orchestration component of the virtual subnet. The association item between the virtual machine (vm1) and the virtual subnet (subnet1) can be "vnet_subnet_id: "vnet1.subnet1"

[0108] In this embodiment, an orchestration template composed of multiple orchestration components is used. In the case where there is a dependency relationship between the orchestration components, a configuration item (association information) describing the dependency relationship is added to the orchestration components, which can efficiently manage various cloud resources.

[0109] In this embodiment, when the orchestration template generated based on multiple orchestration components is used by the user, there is no need to consider the order of resource deployment, which unifies the resource orchestration process. That is to say, the management method based on the orchestration template simplifies the complexity of resource orchestration and improves the user experience.

[0110] In one embodiment, as Figure 5As shown, after the steps of orchestrating target cloud resources in a target cloud environment, the cloud resource orchestration method further includes:

[0111] Step 502, obtain the orchestration result.

[0112] Specifically, after the terminal performs an orchestration operation in the cloud environment, the terminal will record the orchestration result after the orchestration operation on the cloud resources. The orchestration operation may include a cloud resource creation operation, a cloud resource update operation, and a cloud resource deletion operation.

[0113] Step 504, update the status file of the target cloud environment according to the orchestration result, where the status file is a resource attribute file for recording cloud resources.

[0114] Specifically, after the terminal obtains the orchestration result, it will update the status file of the target cloud environment according to the orchestration result, that is, after the terminal completes the cloud resource orchestration task, it will synchronously record the status information of the cloud resources into the status file. The update process may be that after the terminal deletes a target cloud resource in the target cloud environment, the terminal will delete the status information of the target cloud resource in the status file of the target cloud environment to indicate that the cloud resource no longer exists in the cloud environment.

[0115] In this embodiment, due to the adoption of a cloud adapter that is compatible with different cloud types, a general markup language and a general scripting language based on key-value configuration items, the entry for applying for cloud resources and the cloud resource orchestration management process are unified, improving the user experience and multi-cloud management capabilities. And it supports the import of existing resources, that is, reverse management of existing resources, solving the problem of inconsistent resource information between the cloud platform management and the underlying cloud environment resources.

[0116] In one embodiment, the cloud resource orchestration method further includes:

[0117] Store the orchestration template information in a preset cloud resource orchestration template database.

[0118] Specifically, the terminal can also store the obtained multiple pieces of orchestration template information in a preset cloud resource orchestration template database. The preset cloud resource orchestration template database may be a NoSQL database.

[0119] In this embodiment, by saving the orchestration template after each cloud resource orchestration task to the NoSQL database, it supports users to roll back to any historical version of the orchestration template later, greatly improving the convenience of cloud resource management and also contributing to improving the DevOps rapid delivery ability. At the same time, by comparing the current configuration data with the historical configuration data, the difference in the execution results of resource orchestration can be predicted, reducing the operation risk when actually executing the orchestration script.

[0120] Next, in combination withFigure 6 Describe in detail the cloud resource orchestration method described in the above embodiments.

[0121] An embodiment of the present invention provides a method for cloud resource orchestration and management based on a markup language and key-value configuration items, including: defining different cloud resources as different orchestration components through the key-value YAML markup language; combining at least one orchestration component to generate an orchestration template, or converting a scanned template exported from a cloud environment into an orchestration template according to preset template conversion rules; converting the orchestration template into an orchestration script according to script conversion rules; converting the orchestration template into an orchestration script according to specified rules; executing the orchestration script, that is, selecting a specified cloud adapter according to user requirements to achieve the orchestration (creation, update, deletion) of cloud resources in a cloud environment, which may include cloud type 1, cloud type 2, and so on. Record the cloud resource orchestration result, that is, after the cloud resource orchestration task is completed, synchronize and record the cloud resource status information into a status file, and at the same time record the orchestration template into a NoSQL database.

[0122] Specifically, the orchestration tool includes an orchestration script, a cloud adapter, and a status file, and can complete the management of the entire cloud infrastructure life cycle by calling the API interface provided by the underlying cloud environment. Taking a virtual network as an example, the orchestration template and orchestration script content of the virtual network are as follows:

[0123] Orchestration template:

[0124]

[0125]

[0126] Among them, the YAML markup language uses a colon structure to represent key: value, that is, in the form of key-value pairs. It supports three data types: object, array, and constant. For example: service_type is of constant type, subnet_names is of array type, and tags is of object type.

[0127] The terminal converts the orchestration script into an interface request adapted to the corresponding cloud environment according to user requirements through the cloud adapter. The status file is used to represent the status of cloud resources in the real cloud environment. After an orchestration operation is performed on the cloud resources, the terminal can update the cloud resource information recorded in the status file according to the orchestration result. That is to say, the status file is a mapping file of the real cloud environment status. The cloud environment supports a multi-cloud heterogeneous deployment method. The orchestration tool selects a specified cloud adapter to achieve the orchestration of resources of a specified cloud type.

[0128] In this embodiment, the status file records the status information of cloud resources in the current real environment. Before the orchestration script is executed, the orchestration script is compared with the status file to determine which cloud resources remain unchanged, which cloud resources need to be created, updated, or deleted, and then the target cloud resources are determined. Based on the above mechanism, the execution result of the orchestration script can be guaranteed to be idempotent, that is, the results generated by any number of executions of the same orchestration script are consistent.

[0129] In addition, before using the orchestration tool on the terminal to orchestrate cloud resources, an execution plan can be generated by comparing the orchestration script and the status file. The user can identify potential high-risk operations by analyzing the execution plan. The terminal can pause the high-risk operations (such as deleting resources) in the execution plan in response to the user's input for high-risk operations, thereby reducing the operation risk.

[0130] Specifically, the cloud adapter encapsulates interface requests for adapting to multiple cloud environments and can execute interface requests in a specified cloud environment according to user needs. At the same time, a unified markup language and scripting language are used to describe the cloud resource status, shielding the differences in the underlying multi-cloud heterogeneous environment and unifying the cloud resource orchestration entry, effectively improving the ability to orchestrate cloud resources in a multi-cloud coexistence scenario.

[0131] In an actual application scenario, for cloud resources deployed in a manner other than that described in the present invention, the cloud platform supports importing such resources, that is, reverse management of existing cloud resources, to ensure the consistency of the cloud resource information managed by the cloud platform and the cloud resource information in the real environment. The implementation method of importing existing resources is as follows: The cloud platform can export a scan template by scanning the underlying existing resource information. According to the template conversion rules, the scan template can be converted into an orchestration template and the same subsequent process can be executed. During the execution of the orchestration script, if the execution result returned by the cloud environment is that the resource already exists, it means that the resource is an existing resource, and the orchestration tool will automatically write the status information of the resource into the status file. Since the status file reflects the status information of the cloud resources actually managed by the cloud management platform, the reverse management of existing cloud resources can be achieved by using this method.

[0132] The orchestration template generated based on multiple orchestration components in this embodiment can support batch creation of different types of cloud resources. Also, since the dependency relationships between various cloud resources are determined in advance in this embodiment, there is no need for the user to consider the order of resource deployment. It also unifies the cloud resource application entry and the cloud resource orchestration management process, simplifying the complexity of resource orchestration. By using a specific language to describe the cloud infrastructure, the user can independently configure the orchestration template according to needs, that is, adjust the cloud resource configuration information, improving the flexibility of resource orchestration.

[0133] In this embodiment, after a cloud resource orchestration task is completed, the cloud environment information described in the orchestration template, the orchestration script, and the status file is consistent. Therefore, the consistency of user requirements, cloud platform resource information, and underlying cloud resource information can be ensured.

[0134] It should be understood that although the steps in the flowcharts involved in the above embodiments are shown in sequence according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless there is a clear description in this article, the execution of these steps has no strict order limit, and these steps can be executed in other orders. Moreover, at least some of the steps in the flowcharts involved in the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily executed 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 executed alternately or alternately with at least some of the steps or stages in other steps or other steps.

[0135] Based on the same inventive concept, an embodiment of the present application also provides an orchestration device for cloud resources for implementing the above-mentioned cloud resource orchestration method. The implementation solution provided by this device to solve problems is similar to the implementation solution described in the above method. Therefore, the specific limitations in one or more of the following embodiments of the cloud resource orchestration device can refer to the limitations on the cloud resource orchestration method in the above text, and will not be repeated here.

[0136] In one embodiment, as Figure 7 shown, an orchestration device 700 for cloud resources is provided, including: an acquisition module 701, a conversion module 702, a generation module 703, and an orchestration module 704, where:

[0137] The acquisition module 701 is used to acquire the orchestration template information of the target cloud resources, and the orchestration template information includes the target status information of the target cloud resources;

[0138] The conversion module 702 is used to convert the orchestration template information into an orchestration script according to the preset script conversion rules, and the orchestration script is an executable file for orchestrating the target cloud resources;

[0139] The generation module 703 is used to generate a target interface request according to the preset interface request generation tool and the orchestration script, and the target interface request matches the interface of the target cloud environment where the target cloud resources are located;

[0140] The orchestration module 704 is used to perform an orchestration operation on the target cloud resources in the target cloud environment based on the target interface request.

[0141] In one embodiment, the acquisition module is specifically used for:

[0142] Generate at least one orchestration component corresponding to the target cloud resource through a preset key-value type language template and preset cloud resource configuration parameters;

[0143] Based on a preset combination rule, combine at least one orchestration component to obtain orchestration template information.

[0144] In one embodiment, the obtaining module is further specifically configured to:

[0145] Scan the cloud environment where the target cloud resource is located through a preset status scanning tool to obtain scanning template information of the cloud resource, where the scanning template information includes resource status information of the target cloud resource;

[0146] Based on a preset key-value format conversion rule, convert the scanning template information into orchestration template information.

[0147] In one embodiment, the obtaining module is further specifically configured to:

[0148] In the case of having multiple orchestration components, determine the association information between the orchestration components based on the preset combination rule;

[0149] After adding the association information to each orchestration component respectively, combine the multiple orchestration components to obtain orchestration template information.

[0150] In one of the embodiments, the apparatus further includes:

[0151] An update module, configured to obtain an orchestration result; according to the orchestration result, update the status file of the target cloud environment, where the status file is a resource attribute file for recording cloud resources.

[0152] In one of the embodiments, the apparatus further includes:

[0153] A storage module, configured to store the orchestration template information in a preset cloud resource orchestration template database.

[0154] Each module in the above cloud resource orchestration apparatus 700 can be implemented in whole or in part by software, hardware, and their combination. The above modules can be embedded in or independent of a processor in a computer device in the form of hardware, or stored in a memory in the computer device in the form of software, so that the processor can call and execute the operations corresponding to the above respective modules.

[0155] In one embodiment, a computer device is provided. The computer device can be a server, and its internal structure diagram can be as Figure 8As shown in the figure. The computer device includes a processor, a memory, and a network interface connected through a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store relevant data of cloud resources. The network interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, it implements an orchestration method for cloud resources.

[0156] Those skilled in the art can understand that Figure 8 the structure shown in the figure is only a block diagram of some structures related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine some components, or have different component arrangements.

[0157] In one embodiment, a computer device is further provided, including a memory and a processor. A computer program is stored in the memory. When the processor executes the computer program, the steps in the above method embodiments are implemented.

[0158] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by the processor, the steps in the above method embodiments are implemented.

[0159] In one embodiment, a computer program product is provided, including a computer program. When the computer program is executed by the processor, the steps in the above method embodiments are implemented.

[0160] 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 for analysis, stored data, displayed data, etc.) involved in the present application are all information and data authorized by the user or fully authorized by all parties.

[0161] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by instructing relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above methods. Among them, any reference to a memory, database, or other medium used in the embodiments provided in the present application can include at least one of non-volatile and volatile memories. 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), magnetoresistive 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 be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc. The databases involved in the embodiments provided in the present application can include at least one of relational databases and non-relational databases. Non-relational databases can include distributed databases based on blockchain, etc., without limitation. The processors involved in the embodiments provided in the present application can be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, data processing logics based on quantum computing, etc., without limitation.

[0162] The technical features of the above embodiments can be combined arbitrarily. For the sake of concise description, 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, it should be considered as the scope recorded in this specification.

[0163] The above-described embodiments only represent several implementation manners of the present application. Their descriptions are relatively specific and detailed, but they should not be construed as limiting the patent scope of the present application. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several modifications and improvements can still be made, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the appended claims.

Claims

1. A method for orchestrating cloud resources, characterized in that, The method includes: Obtaining the orchestration template information of the target cloud resource, where the orchestration template information includes the target status information of the target cloud resource, and the target status information is the configurable item information of the target cloud resource; Converting the orchestration template information into an orchestration script according to a preset script conversion rule, where the orchestration script is an executable file for orchestrating the target cloud resource; Generating a target interface request according to a preset interface request generation tool and the orchestration script, where the target interface request matches the interface of the target cloud environment where the target cloud resource is located; Performing an orchestration operation on the target cloud resource in the target cloud environment based on the target interface request; The converting the orchestration template information into an orchestration script according to a preset script conversion rule includes: Converting the configuration item information of the target cloud resource in the orchestration template information into a target script language in script format, and determining a script statement for calling a cloud adapter according to the cloud type of the target cloud resource; combining the target script language and the script statement to obtain an orchestration script.

2. The method according to claim 1, wherein The obtaining the orchestration template information of the target cloud resource includes: Generating at least one orchestration component corresponding to the target cloud resource through a preset key-value type language template and preset cloud resource configuration parameters; Combining at least one orchestration component based on a preset combination rule to obtain orchestration template information.

3. The method according to claim 1, characterized in that, The obtaining the orchestration template information of the target cloud resource includes: Scanning the cloud environment where the target cloud resource is located through a preset status scanning tool to obtain the scanning template information of the cloud resource, where the scanning template information includes the resource status information of the target cloud resource; Converting the scanning template information into orchestration template information based on a preset key-value format conversion rule.

4. The method according to claim 2, wherein The combining at least one orchestration component based on a preset combination rule to obtain orchestration template information includes: In the case of multiple orchestration components, determining the association information between the orchestration components based on the preset combination rule; After adding the association information to each orchestration component respectively, combining the multiple orchestration components to obtain orchestration template information.

5. The method according to any one of claims 1 to 4, characterized in that After the step of performing an orchestration operation on the target cloud resource in the target cloud environment, the method further includes: Obtaining the orchestration result corresponding to the orchestration operation; Updating the status file of the target cloud environment according to the orchestration result, where the status file is a resource attribute file for recording cloud resources.

6. The method according to any one of claims 1 to 4, characterized in that, The method further includes: Storing the orchestration template information in a preset cloud resource orchestration template database.

7. An orchestration device for cloud resources, characterized in that, The apparatus includes: An obtaining module, configured to obtain the orchestration template information of the target cloud resource, where the orchestration template information includes the target status information of the target cloud resource, and the target status information is the configurable item information of the target cloud resource; A converting module, configured to convert the orchestration template information into an orchestration script according to a preset script conversion rule, where the orchestration script is an executable file for orchestrating the target cloud resource; A generation module, configured to generate a tool and the orchestration script according to a preset interface request, and generate a target interface request, where the target interface request matches the interface of the target cloud environment where the target cloud resource is located; An orchestration module, configured to perform an orchestration operation on the target cloud resource in the target cloud environment based on the target interface request; The conversion module is specifically configured to: convert the configuration item information of the target cloud resource in the orchestration template information into a target scripting language in script format, and determine a script statement for calling a cloud adapter according to the cloud type of the target cloud resource; and combine the target scripting language and the script statement to obtain an orchestration script.

8. A computer device, comprising a memory and a processor, the memory storing a computer program, characterized in that, When the processor executes the computer program, the steps of the method according to any one of claims 1 to 6 are implemented.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.

10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.

Citation Information

Patent Citations

  • Service orchestration method and system

    CN107302464A

  • Task arrangement method and system in hybrid cloud environment

    CN111552471A

  • Resource arrangement method and system, storage medium and electronic equipment

    CN111736994A