A method and apparatus for visual orchestration of cloud computing resources

By creating connection components and combining components, integrating resource components and connection components, as the smallest unit of orchestration, the problem of insufficient reusability and ease of use of existing cloud resource visual orchestration methods is solved, and the rapid construction of cloud computing clusters and effective verification of resource connections is achieved.

CN115664975BActive Publication Date: 2025-06-24FIBERHOME TELECOMMUNICATION TECHNOLOGIES CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211272314.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-10-18
Publication Date
2025-06-24
Estimated Expiration
2042-10-18

AI Technical Summary

Technical Problem

The existing cloud resource visual orchestration methods have problems such as insufficient reusability and poor ease of use, making it difficult for users to quickly build a composite cloud computing cluster, and the verification and display effect of resource connections is not reusable.

Method used

By creating connection components and combination components, defining constraints for connection components, integrating resource components and connection components into combination components, and using the combination components as the smallest unit of orchestration, the connection components are orchestrated and verified by using the connection components.

Benefits of technology

Improve the reusability and ease of use of cloud computing resources. Users can generate different combined components by reusing resource components and connecting components, simplifying the construction process of cloud computing clusters, and avoiding connection errors through the constraints of connecting components.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115664975B_ABST
    Figure CN115664975B_ABST
Patent Text Reader

Abstract

The present invention relates to the field of cloud computing technology, and particularly to a method and apparatus for visual orchestration of cloud computing resources. It mainly includes: creating connection components for connecting resource components and defining the constraint conditions of the connection components; integrating the resource components and the connection components into composite components and defining the constraint conditions of the composite components, and taking the composite components as the smallest unit of orchestration; using the connection components in the composite components to orchestrate each connection of the composite components, checking and validating according to the constraint conditions of the connection components, and screening out the connection components that can be connected to it when used in subsequent orchestration starting from a connection component. The present invention can improve the reusability of the orchestration components; and obtain the connection components for subsequent orchestration use through the screening of available connection components, thereby enhancing the usability.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of cloud computing technology, and in particular to a method and device for visually arranging cloud computing resources. Background Art

[0002] When using cloud computing systems, users usually need to create basic resources such as virtual machines, cloud disks, virtual network cards, virtual private clouds (VPCs), private networks, public networks, and load balancing, and then "assemble" these basic resources into a cloud computing cluster that can provide computing, storage, and network services. This "assembly" operation can be performed manually using command lines, creating resources one by one on the page and then performing resource binding, or it can be performed in batches using orchestration. Orchestration is the use of an orchestration engine (including but not limited to the current mainstream products such as Heat and Terraform) to input executable text for the program and create all the required resources at one time. In addition, since the above methods are all complex to operate and unfriendly to novices in cloud computing systems, graphical orchestration has been increasingly widely used in recent years, helping users who are not familiar with cloud computing to quickly build the cloud computing cluster they want in a "what you see is what you get" way.

[0003] like Figure 1 As shown, in existing graphical orchestration systems, users place (e.g., drag and drop) resources such as virtual machines, cloud disks, virtual network cards, and load balancing into an orchestration canvas, and then connect the resources with arrows to express the subordinate or dependent relationship between the resources. This visual orchestration solution has the problem of insufficient reusability of orchestration resources and poor usability.

[0004] 1. Insufficient reusability. In actual business scenarios, users do not want to simply drag and drop simple virtual machines, cloud disks, etc. for orchestration, but hope that the cloud computing system can provide "composite components with business capabilities" for orchestration, such as "cloud hosts for R&D", "confidential cloud hosts for production environments", "public cloud hosts for production environments", "cloud hosts for testing", etc., which are encapsulated on "virtual machines". The encapsulated cloud hosts have their own different capabilities for connecting to other resources. In this case, the existing orchestration system needs to design the constraint processing and display effects of these composite components one by one. This approach is not reusable, and the verification of component connections needs to be repeatedly defined in each composite component, which results in a large amount of repetitive work.

[0005] 2. Poor usability. Since the connection capability of resources is fixed inside the resources, users cannot intuitively know which other resources can be connected to the selected resources. In addition, the types of dependent, subordinate or subordinate relationships between resources are complex, making it difficult for users to know which of the two connected parties is the initiator and which is the receiver, and it is difficult to find the destination resource that can be connected and paired with the source resource.

[0006] In view of this, how to overcome the defects existing in the prior art and solve the problem of inconvenient use of the existing cloud resource visualization and orchestration method is a problem to be solved in this technical field. Summary of the Invention

[0007] In response to the above defects or improvement requirements of the prior art, the present invention solves the problems of insufficient reusability and usability of the existing cloud resource visualization and orchestration method.

[0008] The embodiments of the present invention adopt the following technical solutions:

[0009] In a first aspect, the present invention provides a method for visualizing and orchestrating cloud computing resources, specifically: creating a connection component for connecting resource components, and defining the constraint conditions of the connection component, where the connection component includes a mother end, a child end, and a child end constraint; integrating the resource component and the connection component into a combined component, and defining the constraint conditions of the combined component, and using the combined component as the smallest unit of orchestration, where each combined component includes one resource component and at least one connection component; using the connection component in the combined component to orchestrate each connection of the combined component, checking and validating according to the constraint conditions of the connection component, and screening out the connection components that can be connected to it when used subsequently starting from one connection component.

[0010] Preferably, creating a connection component for connecting resource components specifically includes: visually abstracting the docking capabilities between resource components, using the component to which the connection component belongs as the mother end, using the dockable component of the connection component as the child end, and obtaining the child end constraint of the connection according to the attributes of the dockable component of the connection component.

[0011] Preferably, the child end constraint includes a first constraint, a second constraint, and a third constraint. Specifically: the first constraint represents the resource type of the dockable component, where the resource type includes the type of the resource component and / or the type of the connection component; the second constraint represents the number of dockable components; the third constraint represents the attribute value of the dockable component, where the attribute value includes the optional enumerated values and / or value ranges of one or more specified attributes of the dockable component.

[0012] Preferably, creating a connection component for connecting resource components further includes: when multiple connection components are used simultaneously and there is a mutual constraint relationship, forming the corresponding connection components into a connection component group, and setting a fourth constraint for each connection component group, where the fourth constraint represents at least one attribute of the constraints, mutual exclusions, and joint constraints among the connection components in the connection component group.

[0013] Preferably, the resource component and the connection component are integrated into a combined component according to functions, specifically including: reusing the resource component and the connection component to generate different combined components, and registering the generated combined components in the component library for choreographing connection relationships.

[0014] Preferably, use the connection component in the combined component to choreograph each connection of the combined component, specifically including: in the combined component at the connection start point and the combined component at the connection end point, select one unused connection component respectively, connect the connection components in the two combined components to complete one connection, and sequentially complete the choreography of all combined components that need to be connected.

[0015] Preferably, perform inspection and verification according to the constraint conditions of the connection component, specifically including: checking whether there is only one connection component at each end of each connection; respectively verifying from both ends of the connection whether the type of the peer resource component and / or combined component corresponding to each connection conforms to the first constraint of the local connection component; respectively verifying from both ends of the connection whether the number of slots occupied by each connection conforms to the second constraint and the fourth constraint of the local connection component; respectively verifying from both ends of the connection whether the attribute value of the peer resource component corresponding to each connection conforms to the third constraint of the local connection component.

[0016] Preferably, performing inspection and verification according to the constraint conditions of the connection component further includes: when the connection changes, re-verify all the connections of the combined component, and adjust the connection relationship according to the verification result.

[0017] Preferably, screen out the connection components that can be connected to a connection component as the starting point during subsequent choreography, specifically including: checking the available number of slots of the starting point connection component and the connection component group to which it belongs. When there are no available slots, there are no candidate connection components, where the starting point connection component is the connection component corresponding to the starting point of a connection; screen out the connection components whose resource types are consistent with the first constraint condition of the starting point connection component; among the screened-out components, further screen out the connection components that conform to the third constraint condition of the starting point connection component; perform reverse verification on the further screened-out connection components. If the starting point connection component meets the first constraint, second constraint, third constraint, and fourth constraint of the screened-out connection components, select this connection component as the connectable candidate object.

[0018] On the other hand, the present invention provides a device for visual choreography of cloud computing resources, specifically including: at least one processor and a memory, the at least one processor and the memory are connected through a data bus, the memory stores instructions executable by the at least one processor, and after the instructions are executed by the processor, they are used to complete the method for visual choreography of cloud computing resources in the first aspect.

[0019] Compared with the prior art, the beneficial effects of the embodiments of the present invention are as follows: specific resources and connection relationships are abstracted into resource components and connection components respectively, the connection verification between components is centralized in the connection components, and integrated into combined components as the smallest unit of orchestration. The orchestration system only needs to build a set of atomic resource components and connection components to construct business-oriented orchestration objects according to business requirements. The connection capabilities and connection constraints included in the connection components can be reused in different combined components, thereby improving reusability; and the connection components for subsequent orchestration are obtained by screening available connection components, enhancing usability. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required to be used in the embodiments of the present invention will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.

[0021] Figure 1 It is a schematic diagram of a connection method in the prior art for visual orchestration of cloud computing resources;

[0022] Figure 2 It is a flowchart of a method for visual orchestration of cloud computing resources provided by an embodiment of the present invention;

[0023] Figure 3 It is a schematic diagram of an example of a combined component provided by an embodiment of the present invention;

[0024] Figure 4 It is a schematic diagram of an example of the connection method of a combined component in an embodiment of the present invention;

[0025] Figure 5 It is a schematic diagram of an error example of the connection method of a combined component in an embodiment of the present invention;

[0026] Figure 6 It is a flowchart of another method for visual orchestration of cloud computing resources provided by an embodiment of the present invention;

[0027] Figure 7 It is a flowchart of another method for visual orchestration of cloud computing resources provided by an embodiment of the present invention;

[0028] Figure 8 It is a schematic diagram of the constraint conditions of a connection component in an example of the method provided by an embodiment of the present invention;

[0029] Figure 9 It is a schematic diagram of a component used in an example of the method provided by an embodiment of the present invention;

[0030] Figure 10Schematic diagram of the visualization orchestration result in a certain instance of the method provided by the embodiments of the present invention;

[0031] Figure 11 Schematic diagram of components used in a certain instance of the method provided by the embodiments of the present invention;

[0032] Figure 12 Schematic structural diagram of a device for visual orchestration of cloud computing resources provided by the embodiments of the present invention;

[0033] Figure 13 Schematic module structure diagram in a device for visual orchestration of cloud computing resources provided by the embodiments of the present invention;

[0034] Among them, the reference numerals are as follows:

[0035] 11: Processor; 12: Memory. Detailed implementation manners

[0036] In order to make the objectives, technical solutions and advantages of the present invention clearer, the present invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention, and are not used to limit the present invention.

[0037] The present invention is an architecture of a specific functional system. Therefore, in specific embodiments, the functional logical relationships of each structural module are mainly described, and the specific software and hardware implementation manners are not limited.

[0038] In addition, the technical features involved in the various embodiments of the present invention described below can be combined with each other as long as they do not conflict with each other. The present invention will be described in detail below with reference to the drawings and embodiments.

[0039] Embodiment 1:

[0040] In view of the above defects or improvement requirements of the prior art, the embodiments of the present invention provide a method for visual orchestration of cloud computing resources. By constructing a two-level component structure of a first-level structure of "resource components", "connection components" and a second-level structure of "combination components", and regarding the resource components as atomic components during orchestration, different "combination components" are freely combined with different connection components according to the connection capabilities and connection requirements of the resource components and published for users to orchestrate and use. The verification logic for connecting components is extracted and concentrated and solidified into the connection components, realizing the reusability of resource components and connection components. Therefore, it can flexibly and conveniently handle the problem of providing different orchestration objects for different business requirements.

[0041] As Figure 2 shown, the specific steps of the method for visual orchestration of cloud computing resources provided by the embodiments of the present invention are as follows:

[0042] Step 101: Create a connection component for resource component connection and define the constraint conditions of the connection component.

[0043] In the method provided in this embodiment, various software and hardware resources and communication resources required for cloud computing are abstracted into resource components. A resource component is an object abstracted from the basic resources in a cloud computing system. For example, various software and hardware resources include virtual machines, solid state drives (SSD), serial attached small computer system interface (SAS) cloud disks, virtual network cards, and high-performance virtual network cards; various communication resources include virtual private cloud (VPC), private network, IPv4 subnet, IPv6 subnet, security group, quality of service (QoS) policy, and elastic IP. These components may have slightly different names in different cloud computing systems, but their connotations and functions are the same, and they all have the ability to independently provide computing, storage, and network capabilities. The above resource components can be connected through orchestration to construct the required cloud computing system.

[0044] To reuse the constraint conditions of the resource component connection relationship, in this embodiment, "connection components" are defined based on the external connection capabilities of each basic "resource component" in cloud computing. Each "connection component" is a visual object in visual orchestration and is a visual abstraction of the docking capabilities between resource components. Among them, at least one connection component corresponds to a resource component, and the resource component is connected to other resource components through the connection component.

[0045] For example, in a real scenario, a cloud host and a cloud disk can be connected through a communication link. A "cloud disk connection component of the cloud host" can be defined to provide the docking ability between the cloud host and the cloud disk. For ease of use, a connection component can be named according to its function. The resource component to which the connection component belongs is used as the parent end, that is, the initiating end of the connection, and the dockable component of the connection component (i.e., the dockable resource component) is used as the child end, that is, the end point of the connection. To constrain the attributes of the dockable component, the connection component also needs to obtain the child end constraint of the connection according to the attributes of the dockable component of the connection component. That is, the child end constraint reflects which resource components the connection component can dock with, and a connection component can dock with multiple dockable components of the same type. For example, in Figure 4 when the composite component R is used as the connection initiating end to dock with the composite component Y, the resource component S to which the connection component B belongs is used as the parent end, and the resource component Z to which the opposite connection component F belongs is used as the child end.

[0046] Step 102: Integrate the resource component and the connection component into a combined component according to their functions, define the constraint conditions of the combined component, and use the combined component as the smallest unit of orchestration.

[0047] In this embodiment, for the convenience of reuse, the capabilities of the basic resources themselves and the connection capabilities are abstracted into a resource component and a connection component respectively. When in use, they need to be combined before orchestration. In this embodiment, according to the requirements of specific business scenarios, the basic resource components and the above connection components can be combined to construct a "combined component". Each combined component contains a resource component and at least one connection component, and multiple connection components are used to achieve various types of connections or one-to-many connections.

[0048] Specifically, combine a basic "resource component" and several "connection components" to synthesize the orchestration object required by the user and use it as a combined component. When combining, the parent-end attributes of the selected connection components must be the same as those of the resource component. As Figure 3 shown, a virtual machine resource component Y, a connection component A (a connection component for connecting a virtual machine and a high-speed cloud disk), a virtual machine and a common cloud disk connection component B (a connection component for connecting a virtual machine and a common cloud disk), and a virtual machine and a virtual network card connection component C (a connection component for connecting a virtual machine and a virtual network card) can be combined into a combined component "cloud host for R & D" X. The number of other components that each connection component can dock with can also be determined according to the actual available interface number of the virtual machine. Hereinafter, the number of other components that can be docked is referred to as the slot number. In Figure 3 it, 0 / 15 indicates that the used slot number of the corresponding connection component is 0 and the available slot number is 15. This combined component enables the resource component of the virtual machine to have the ability to connect external components such as high-speed cloud disks, common cloud disks, and virtual network cards through different connection components. By analogy, combined components with different service capabilities such as "classified production cloud host" and "internal test cloud host" can be combined.

[0049] In actual use, each type of resource component and connection component can be reused in multiple combined components. Therefore, the administrator can use the orchestration system to only define a set of resource components and connection components, reuse the resource components and connection components to generate different combined components, and then generate various combined components through permutation and combination to meet the requirements of different business scenarios. As Figure 4 shown, orchestrate four combined components R, U, U, and Y. When orchestrating, the same type of combined components can be used one or more according to needs. Figure 4Two combined components U are used. Each combined component contains a resource component and at least one connection component. When connecting the combined components, different from the prior art, instead of directly using the basic resource as the object to be connected, the connection component abstracted from the connection ability of the basic resource is used as the object to be connected. For example, Figure 4 in it, instead of directly connecting the resource components S, X, and Z corresponding to the basic resource itself, the connection abilities of the basic resource with different devices or services are abstracted as connection components A, D, and F, and the connection is made through the connection components to improve the reusability of the connection itself.

[0050] Furthermore, for the convenience of use and reuse, the generated combined components can also be registered in the component library for choreographing connection relationships, and users can directly use the generated combined components in the component library as the smallest unit for choreographing.

[0051] Step 103: Use the connection components in the combined components to choreograph each connection of the combined components, check and verify according to the constraint conditions of the connection components, and screen out the connection components that can be connected to a connection component as the starting point during subsequent choreographing use.

[0052] During choreographing, connect the connection components in the combined components that have been integrated with each other, and the connection of cloud computing resources can be realized. Specifically, in the combined component at the connection starting point and the combined component at the connection ending point, select an unused connection component respectively, and the connection components in the two combined components at both ends of the connection complete a connection. Then use different connection components in the combined components to connect with different connection components in other combined components, and sequentially complete the choreographing of all combined components that need to be connected. In this embodiment, since the connection is made using connection components and the mother end and the child end are fixed, the status of the connection initiating end and the receiving end is equal and there is no primary or secondary distinction, instead of using the direction of the connection arrow on the panel to determine the connection direction like the existing visual choreographing method, avoiding choreographing errors caused by incorrect user connection directions.

[0053] Furthermore, to avoid connection errors, it is also necessary to perform verification according to the child end constraints of the connection components during connection. At the same time, to reduce the complexity of user component selection and avoid user selection errors, the available connection components can also be screened to select the available connection components.

[0054] After steps 101 - 103 provided in this embodiment, the visual choreographing of cloud computing resources can be completed. By abstracting the connection function of resources as connection components, the reusability of resources is improved, and connection errors are avoided through the child end constraints of the connection components.

[0055] In step 101, the child end constraints of each connection component include the first constraint, the second constraint, and the third constraint.

[0056] (1) The first constraint represents the resource type of the dockable component.

[0057] The orchestration system supports specifying one or more "combined component" types or one or more "resource component" types for the components that a connection component is allowed to connect to. The resource type includes the types of all available resource components or connection components. When specifying the "combined component" type, it means that exactly matching combined components can be docked to this connection component. When specifying the "resource component" type, it means that all "combined components" containing this "resource component" can be docked to this connection component.

[0058] (2) The second constraint represents the number of dockable components.

[0059] The second constraint is used to represent the number of other components that the sub - end can be docked to, that is, the number of slots of the connection component. In this embodiment, each connection component represents a type of connection relationship, and each connection relationship can be connected to multiple different resources. For example: The combined component "High - performance cloud host for R & D" contains "virtual machine resource component" and "virtual machine docking high - speed cloud disk connection component", and the combined component "High - speed cloud disk" contains "SSD cloud disk resource component" and "non - shared high - speed cloud disk docking virtual machine connection component". According to the actual connection situation in the scenario, each virtual machine can be connected to multiple high - speed cloud disks, and the number of high - speed cloud disks that can be connected is the number of slots of the "virtual machine docking high - speed cloud disk connection component". However, since one connection corresponds to a physical connection line, a pair of physical interfaces, or a logical link in the real - world scenario, therefore, even in a scenario with multiple connections, there can only be one connection component at each end of each connection, and there can only be one connection between each pair of resources. For example: A specific virtual machine can be connected to multiple high - speed cloud disks, and each connection occupies one slot of the "virtual machine docking high - speed cloud disk connection component". For example, it is allowed Figure 4 the connection components shown at both ends to be orchestrated for connection; but between a specific virtual machine and a specific high - speed cloud disk, there can only be a set of connections with "virtual machine docking high - speed cloud disk connection component" and "high - speed cloud disk docking virtual machine connection component" at both ends respectively. For example, Figure 4 the connection relationship shown in, is not allowed to be orchestrated as a connection with one connection component at one end and two connection components at the other end as shown in Figure 5 to avoid having multiple parent ends or multiple sub - ends in one connection, resulting in constraint conflicts.

[0060] (3) The third constraint represents the attribute values of the dockable components.

[0061] The attribute values include optional enumerated values or value ranges of one or more specified attributes of the dockable components. Typically, when there is a business requirement to limit the disk size of a virtual machine, for example, the "cloud disk connection component of the cloud host" can be set so that the "size (capacity)" attribute of the connected cloud disk cannot be greater than "1024 GB", thereby restricting that only small-capacity cloud disks can be connected to this connection component. In actual use, the third constraint can simultaneously constrain multiple groups of attribute values, and the matching relationship between multiple groups can be defined as "or" or "and".

[0062] Through the above three sub-terminal constraints, the connection relationships between different components can be defined, avoiding unavailable connections in reality and facilitating the screening of connection objects.

[0063] Furthermore, when multiple connection components are used simultaneously and there are mutual constraints between them, the corresponding connection components are grouped into a connection component group, and a fourth constraint is set for each connection component group.

[0064] (4) The fourth constraint represents at least one of the constraints, mutual exclusions, and combined constraints of the connection components in the connection component group.

[0065] For connection components that affect each other, they are placed in a "connection component group". The connection component group stipulates the fourth constraint, that is, the connection components located therein have mutual constraints, mutual exclusions, combined constraints, etc., including but not limited to the total slot occupancy limit, component mutual exclusion limit, etc. Typically, since the number of PCI buses of a cloud host is fixed and the number limit will be different in different product implementations. In a certain actual use scenario, the number of PCI buses of a cloud host is 24. Since cloud hard disks and network cards occupy PCI bus positions when mounted on the cloud host, it is necessary to limit that the total number of cloud hard disks and network cards that a cloud host can mount cannot exceed 24. Since cloud hard disks and network cards belong to different resource types, two connection components are needed to represent their connection relationships with the cloud host respectively, and a second constraint value cannot be set jointly. To solve this problem, in this embodiment, a "cloud host - cloud hard disk connection component" and a "cloud host - network card connection component" are placed in a "connection component group". Although they each have their own second constraint to limit the number of slots, the connection component group to which they belong limits that the total slot occupancy of the two cannot exceed 24.

[0066] Based on the aforementioned combined components for orchestration and the sub-terminal constraints of the connection components in the combined components, in order to avoid connection errors or unavailability, it is also necessary to complete the inspection and verification in step 103 according to the constraint conditions of the connection components. As Figure 6 shown, the following steps can be used to complete the verification.

[0067] Step 201: Check whether each end of each connection has only one connection component respectively.

[0068] When the user performs graphical layout of connection components, check both ends of each connection. When the two ends of the connection are not two connection components, terminate the connection.

[0069] Step 202: Verify from both ends of the connection respectively whether the types of the peer resource components and / or combined component types corresponding to each connection conform to the first constraint of the local connection component.

[0070] When a connection occurs between a connection component of a certain combined component and a connection component of a target combined component, trigger the verification of the first constraint of the connection components at the initiating end and the receiving end.

[0071] First, verify the first constraint of the connection component at the initiating end: If the docking object defined by the first constraint is of the combined component type, check the type of the parent end (the combined component to which it belongs) of the connection component at the receiving end. The type of its parent end must be consistent with the combined component type defined by the first constraint, otherwise terminate the connection; If the first constraint defines a resource component type, check whether the type of the resource component contained in the parent end (the combined component to which it belongs) of the connection component at the receiving end is consistent with the resource component type defined by the first constraint. If not, terminate the connection.

[0072] Secondly, verify the first constraint of the connection component at the receiving end, with the same method as that at the initiating end.

[0073] Step 203: Verify from both ends of the connection respectively whether the number of slots occupied by each connection conforms to the second constraint and the fourth constraint of the local connection component;

[0074] After the verification of the first constraint is completed, trigger the verification of the second constraint to verify the available number of slots of the connection components at the initiating end and the receiving end of the connection.

[0075] First, verify the second constraint of the connection component at the initiating end: If the available number of slots is less than or equal to 0, terminate the connection. If there are available slots and this connection component is located in a connection component group, further trigger the verification of the fourth constraint to check the available number of slots of the connection component group where the connection component is located. If the available number of slots of the connection component group is less than or equal to 0, terminate the connection.

[0076] Secondly, verify the second constraint of the connection component at the receiving end, with the same method as that at the initiating end.

[0077] Step 204: Verify from both ends of the connection respectively whether the attribute values of the peer resource components corresponding to each connection conform to the third constraint of the local connection component.

[0078] After the verification of the first constraint and the second constraint is completed, trigger the verification of the third constraint of the connection component to check the specific attributes of the docking resources.

[0079] First, verify the connection component at the initiating end. According to the "sub - end resource attribute constraints" defined by this connection component, retrieve the attribute values of the corresponding cloud computing resource attributes from the resource components of the combined component where the receiving - end connection component is located, and check whether they meet the enumeration or range defined by the third constraint. If they do not meet, terminate the connection; if multiple "sub - end resource attribute constraints" are defined, sequentially obtain the attribute values one by one and perform "AND" or "OR" verification according to the definition of the third constraint.

[0080] Secondly, verify the third constraint of the connection component at the receiving end in the same way as the initiating end.

[0081] After going through steps 101 - 103 provided in this embodiment, the check and verification of the connection can be completed to ensure that the connection is correctly available.

[0082] In actual implementation, users may adjust or modify the already - orchestrated connections. When the connection changes, it is also necessary to re - verify all the connections of this combined component and adjust the connection relationship according to the verification results, which specifically includes the following situations.

[0083] (1) After all the above - mentioned constraint verifications at both ends of the connection pass, the component connection is completed, and the available slot numbers of the connection components and connection - component groups at both ends of the connection are updated. In the calculation, the available slot numbers of the connection components at the initiating end and the receiving end can be decreased by 1.

[0084] (2) When an existing connection is deleted, update the available slot numbers of the connection components at both ends and the connection - component groups where they are located. In the calculation, the available slot numbers of the connection components at the initiating end and the receiving end can be increased by 1.

[0085] (3) When a certain attribute value of the combined component changes, it is necessary to re - verify the third constraint for all the connections to this combined component. If a certain connection fails the verification, cancel this connection, and update the available slot numbers of the connection components and connection - component groups at both ends of the connection. In the calculation, the available slot numbers of the connection components at the initiating end and the receiving end can be increased by 1.

[0086] Through the above - mentioned adjustments, it can be ensured that the connection remains correct when the connection changes.

[0087] Furthermore, to improve the usability of the method, improve the efficiency of users in screening connection components, and avoid users making incorrect connections, when making a connection, as Figure 7 shown, it is also possible to use any one connection component as the starting point of the connection. Hereinafter, the connection component used as the starting point of the connection will be referred to as the starting - point connection component, and the candidate other connection components that can be connected and paired can be screened out according to the following method.

[0088] Step 301: Check the number of available slots in the starting connection component and the connection component group to which it belongs. When there are no available slots, there are no candidate connection components.

[0089] Check whether there are still available slots in the starting connection component. If not, there are no connectable candidate objects. If the connection component belongs to a certain connection component group, it is also necessary to check whether the number of slots meets the requirements of the connection component group according to the fourth constraint.

[0090] Step 302: Screen out the connection components whose resource types are consistent with the first constraint condition of the starting connection component.

[0091] Traverse all composite components on the current orchestration canvas. If the composite component or the resource components it contains are consistent with the components stipulated in the first constraint condition of the starting connection component, then screen them out. If what is stipulated in the first constraint condition is the consistency of the composite component types, then judge according to the composite component types.

[0092] Step 303: Further screen out the connection components that meet the third constraint condition of the starting connection component from the screened-out components.

[0093] For the composite components screened out in the previous step, check them one by one. For the attributes defined by the third constraint of the starting connection component, take the attribute values from the resource components within the composite component. If they do not meet the requirements of the third constraint of the starting connection component, then eliminate them.

[0094] Step 304: Conduct reverse verification on the further screened-out connection components. If the starting connection component meets the first, second, third, and fourth constraints of the screened-out connection components, select this connection component as the connectable candidate object.

[0095] For the composite components screened out in the previous step, check the connection components they contain one by one, and conduct reverse verification on whether the "starting connection component" meets the first, second, and third constraint conditions of this connection component. If all are met, then select this connection component as the connectable candidate object.

[0096] Through Step 301 - Step 304, the connectable components available to the user can be screened out. In actual implementation, for the convenience of the user, for the selected connectable candidate objects, the Web page rendering engine of the visual orchestration system can further process these components, including but not limited to highlighting, flashing, and giving the user prominent prompts, etc.

[0097] The method for visual orchestration of cloud computing resources provided in this embodiment only requires a built-in set of atomic resource components and connection components. During application, business-oriented orchestration objects can be constructed at any time according to business requirements without modifying the system code, thereby improving reusability. The connection verification between components is centralized in the connection components, enabling the connection capabilities and connection constraints included in the connection components to be reused in different combined components, further enhancing reusability. The screening of candidate components can help users find all other components capable of connecting to the components selected by the users, improving usability.

[0098] Embodiment 2:

[0099] Based on the method for visual orchestration of cloud computing resources provided in Embodiment 1, in different specific application scenarios, it can also be supplemented and adjusted according to different usage requirements or actual scenarios. The following simply provides some examples in actual scenarios. Without conflict, the technical solutions in the following examples can be combined with the technical solutions in Embodiment 1.

[0100] According to the construction method of the visual orchestration object in Steps 101 and 102, the following examples can be referred to for implementation.

[0101] For ease of understanding, this example takes the requirement of a certain business scenario to provide cloud hosts with different storage capabilities and network capabilities for orchestration as an example. This example involves common resources in the cloud computing field, such as virtual machines, cloud disks, virtual network cards, etc.

[0102] Create each connection component and define the first constraint, second constraint, and third constraint of the connection component. The constraint conditions of each connection component used in this embodiment are as Figure 8 shown. In specific implementation, the constraint conditions need to be formulated according to actual attributes and business requirements. Further, in the first constraint at the sub-end, it can also be restricted according to the combined component type to obtain a more accurate constraint effect.

[0103] Combine the resource components and the above connection components into a combined component. Specifically, the resource components can be virtual machines, SAS cloud disks, SSD cloud disks, virtual network cards, etc. In this scenario, combine the above one "virtual machine docking high-speed cloud disk connection component", one "virtual machine docking virtual network card connection component" and the virtual machine resource component into a combined component of "high-performance cloud host for R & D". This combined component has the ability to provide one virtual machine, and the virtual machine supports docking up to 15 SSD cloud disks with a capacity not exceeding 1024GB and up to 10 virtual network cards.

[0104] Without creating additional connection components, reuse the above connection components to sequentially construct other composite components. Combine the above "virtual machine docking ordinary cloud disk connection component", "virtual machine docking virtual network card connection component" and virtual machine resource component into the composite component of "cloud host for data backup"; combine a "non-shared high-speed cloud disk docking virtual machine connection component" and SSD cloud disk resource component into the composite component of "high-speed cloud disk"; combine a "shared ordinary cloud disk docking virtual machine connection component" and SAS cloud disk resource component into the composite component of "ordinary cloud disk"; combine the "virtual network card docking virtual machine connection component" and virtual network card resource component into the "ordinary network card" composite component.

[0105] In this scenario, the number of virtual machine PCI buses is 24. Therefore, create a connection component group "PCI bus quantity limit group", and the fourth constraint it contains is that the total number of resources docked by each connection component within the group does not exceed 24.

[0106] Since both the cloud disk and the virtual network card will occupy the virtual machine's PCI bus, this connection component group is added to the "high-performance cloud host for R & D" composite component, and the "virtual machine docking high-speed cloud disk connection component" and "virtual machine docking virtual network card connection component" are included therein; similarly, this connection component group is added to the "high-performance cloud host for data backup" composite component, and the "virtual machine docking ordinary cloud disk connection component" and "virtual machine docking virtual network card connection component" are included therein.

[0107] Through the above process, the construction of connection components and composite components can be completed, achieving the reuse of components, and simplifying the complexity of connection verification by associating constraint conditions with connection components.

[0108] The above constructed composite components "high-performance cloud host for R & D", "high-performance cloud host for data backup", "high-speed cloud disk", "ordinary cloud disk", "ordinary network card" are registered in the component library as the smallest units of graphical orchestration, and can also be placed on the orchestration panel in the form of visual icons for users to select and use. For example: in a specific scenario, such as Figure 9 A set of components shown can be orchestrated into a cloud computing system as shown in Figure 10 Or other connection orchestrations can be performed according to actual business needs, where T represents the connection component group of all PCI bus interfaces in composite component R.

[0109] Based on the "cloud host for data backup" and "ordinary cloud disk" constructed in the above process, when the "virtual machine docking ordinary cloud disk connection component" of the "cloud host for data backup" is connected to the "shared ordinary cloud disk docking virtual machine connection component" of the "ordinary cloud disk", the connection between components in step 103 can be checked through the following process, and the constraint conditions during verification are as aboveFigure 8 as shown

[0110] Verify the first constraint of the connection component "Virtual Machine Docking Ordinary Cloud Disk Connection Component" at the initiating end: If the docking object defined by this first constraint is a SAS cloud disk of the resource component type, check whether the resource component contained in the parent end of the receiving end connection component "Shared Ordinary Cloud Disk Docking Virtual Machine Connection Component" is a SAS cloud disk.

[0111] Verify the first constraint of the receiving end connection component "Shared Ordinary Cloud Disk Docking Virtual Machine Connection Component" in the same way as the initiating end.

[0112] Verify the second constraint of the connection component "Virtual Machine Docking Ordinary Cloud Disk Connection Component" at the initiating end. If the available slot number is less than or equal to 0, terminate the connection. If there are available slots and since this connection component is in the connection component group "PCI Bus Quantity Limit Group", further trigger the fourth constraint verification to check the available slot number of the connection component group "PCI Bus Quantity Limit Group". If the available slot number of the connection component group is less than or equal to 0, terminate the connection; otherwise, pass the check and proceed to the next verification.

[0113] Verify the second constraint of the receiving end connection component "Shared Ordinary Cloud Disk Docking Virtual Machine Connection Component" in the same way as the initiating end.

[0114] Verify the third constraint of the connection component "Virtual Machine Docking Ordinary Cloud Disk Connection Component" at the initiating end: According to the foregoing Figure 8 constraint conditions, the sub - end resource attribute constraint requires that the docking object is a resource component with a size attribute less than 2048GB. Take the attribute value of the corresponding size attribute from the resource component "SAS Cloud Disk" of the combined component where the receiving end connection component "Shared Ordinary Cloud Disk Docking Virtual Machine Connection Component" is located, and check whether it meets the constraint. If it does not meet the requirement, terminate the connection; if multiple "sub - end resource attribute constraints" are defined, take values one by one according to the above method and perform "AND" or "OR" verification.

[0115] Verify the third constraint of the receiving end connection component "Shared Ordinary Cloud Disk Docking Virtual Machine Connection Component" in the same way as the initiating end.

[0116] After all the above - mentioned constraint verifications at both ends are passed, the component connection is completed. Update the available slot numbers of the connection components and connection component groups at both ends, and subtract 1 from the available slot numbers.

[0117] After the above verifications, it can be determined whether there are errors when the connection component "Virtual Machine Docking Ordinary Cloud Disk Connection Component" of the "Cloud Host for Data Backup" in this scenario connects to the connection component "Shared Ordinary Cloud Disk Docking Virtual Machine Connection Component" of the "Ordinary Cloud Disk", ensuring the availability of the connection.

[0118] Further, when a certain attribute value of the combined component "cloud host for data backup" or "ordinary cloud disk" changes, all connections connected to this combined component need to be re-verified for the third constraint. If a certain connection fails the verification, this connection is cancelled, and the available slot numbers of the connection components and connection component groups at both ends of the connection are updated, and the available slot number is incremented by 1.

[0119] In the embodiments of the present invention, for the convenience of user operation, the initiating end and the receiving end of the connection are of equal status and there is no primary or secondary distinction. When the user connects the connection line in the opposite direction on the visual orchestration panel, in the existing visual orchestration system, the connection line arrow is opposite, indicating that the initiating end and the receiving end need to be swapped. However, for the method provided in the embodiments of the present invention, since the mother end and the child end of each connection component have been determined, changing the connection line direction has no impact on the connection relationship, and the connection relationship is determined only according to the attributes of the connection components.

[0120] According to step 103, during the orchestration process, the available connection components can also be filtered. In a specific scenario, there are five orchestratable combined components on the orchestration panel, namely "cloud host for data backup", "Type A ordinary cloud disk" 1, "Type A ordinary cloud disk" 2, "Type B ordinary cloud disk", and "ordinary virtual network card". Among them, "Type A ordinary cloud disk" 1 and "Type A ordinary cloud disk" 2 are two instances of "Type A ordinary cloud disk". The disk size of No. 1 is the default 1024GB, while No. 2 has been adjusted by the user to 3072GB. The connection components included in each combined component are as Figure 11 shown. For the convenience of description, each combined component in this example contains only one connection component.

[0121] Taking the "virtual machine docking ordinary cloud disk connection component" of the "cloud host for data backup" as the starting connection component as an example, the following process can be used to filter the candidate other connection components that can be connected and paired for it.

[0122] Check whether there are any spare slots in the "virtual machine docking ordinary cloud disk connection component" and the connection component group to which this connection component belongs. In this scenario, there are spare slots in the connection component and there is no connection component group, indicating that this connection component can still be docked with other connection components.

[0123] Traverse all other combined components on the current orchestration canvas, namely "Type A ordinary cloud disk No. 1", "Type A ordinary cloud disk No. 2", "Type B ordinary cloud disk", and "ordinary virtual network card". If the traversed combined component or the resource components it contains are consistent with the components stipulated in the first constraint condition of the starting connection component, they are filtered out. The components stipulated in the first constraint condition of the starting connection component are SAS cloud disks, and the resource components contained in "Type A ordinary cloud disk No. 1", "Type A ordinary cloud disk No. 2", and "Type B ordinary cloud disk" are SAS cloud disks, meeting the requirements.

[0124] For the combined components selected in the previous step, the attribute values are retrieved for the attributes defined by the third constraint of the starting connection component, that is, it is determined whether the size of the sub - end resource attribute is less than 2048 GB. If the requirements of the third constraint of the starting connection component are not met, it is eliminated. Since the size of the resource component "SAS cloud disk" contained in "Type A ordinary cloud disk No. 2" is 3072 GB, which does not meet the third constraint condition, it is screened out.

[0125] For the combined components selected in the previous step, check each of the contained connection components one by one, and inversely verify whether the "starting connection component" meets the first, second, and third constraint conditions of this connection component. If all are met, select this connection component as a connectable candidate object. Therefore, starting from "Type A ordinary cloud disk 1" and "Type B ordinary cloud disk" respectively, inversely check whether "cloud host for data backup" meets the first, second, and third constraint conditions of the connection component. Since the connection component of "Type B ordinary cloud disk", "shared ordinary cloud disk docking production cloud host connection component", requires that "the type of the combined component where the sub - end restricted connection component is located is a production cloud host", and "cloud host for data backup" does not meet this constraint, so "Type B ordinary cloud disk" is screened out. Finally, the connectable paired candidate other connection component selected for the "virtual machine docking ordinary cloud disk connection component" of "cloud host for data backup" is the "shared ordinary cloud disk docking virtual machine connection component" of "Type A ordinary cloud disk 1".

[0126] Through the above process, the screening of connection components can be completed, providing an indication of available connection components for users.

[0127] As can be seen from the above specific examples, the method for visual orchestration of cloud computing resources provided in Embodiment 1 can abstract the connection capabilities between resources into connection components, improve the reusability of resources and simplify the complexity of connection verification through connection components, and perform screening of available connection components to improve the usability of the method.

[0128] Embodiment 3:

[0129] Based on the method for visual orchestration of cloud computing resources provided in the above Embodiment 1 to Embodiment 2, the present invention also provides a device for visual orchestration of cloud computing resources that can be used to implement the above method, as Figure 12 shown, which is a schematic diagram of the device architecture of an embodiment of the present invention.

[0130] The device for visual orchestration of cloud computing resources in this embodiment includes one or more processors 11 and a memory 12. Among them, Figure 12Take a processor 11 as an example. The memory 12, as a non-volatile computer-readable storage medium for a method of visual orchestration of cloud computing resources, can be used to store non-volatile software programs, non-volatile computer-executable programs, and modules, such as the method of visual orchestration of cloud computing resources in Embodiment 1 to Embodiment 2. The processor 11 executes various functional applications and data processing of the device for visual orchestration of cloud computing resources by running the non-volatile software programs, instructions, and modules stored in the memory 12, that is, implements the method of visual orchestration of cloud computing resources in Embodiment 1 to Embodiment 2. The program instructions / modules are stored in the memory 12 and, when executed by one or more processors 11, execute the method of visual orchestration of cloud computing resources in the above Embodiment 1 to Embodiment 2. For example, execute the Figure 2 , Figure 6 and Figure 7 each step shown.

[0131] In an actual implementation scenario, for the convenience of software and system-level development, management, and maintenance, the methods provided in Embodiment 1 and Embodiment 2 can be presented in the form of functional modules in the processor 11 and the memory 12.

[0132] As Figure 13 shown, according to the functions provided by the method, the functional modules can be divided into a management side and a user side. The management side includes a connection component creation module, a combined component creation module, and a combined component registration module, and the user side includes a component drawing module, a connection verification and drawing module, a connection component constraint execution module, and a connection candidate component selection module.

[0133] The connection component creation module is used to create connection components according to step 101, and constructs reusable connection components by defining the name, mother end, first, second, and third constraints of the child end of the component. This module is also used to create a connection component group and jointly control several connection components through the fourth constraint.

[0134] The combined component creation module is used to combine one resource component, several connection components, and several connection components into a combined component according to different business requirements according to step 102. When combining, the mother end attribute of the connection component needs to be consistent with the resource component.

[0135] The combined component registration module publishes the created combined component as the smallest operation unit for visual orchestration according to step 102.

[0136] The component drawing module serves the user side and is used to draw the combined component and its subordinate resource components and connection components on the visual canvas.

[0137] The connection verification and drawing module serves the user side. According to step 103, it performs constraint verification on each connection between components. This module will, based on the two end components of a specific connection, call the connection component constraint execution module of the corresponding connected component or the connected component group where the component is located to perform the verification of the first, second, third, and fourth constraints. After the verification passes, the connection is drawn on the visualization canvas.

[0138] The connection component constraint execution module serves the user side. Each connection component corresponds to a connection component constraint execution module, which is used to maintain the execution logic of various constraint verifications for this connection component.

[0139] The connection candidate component selection module serves the user side. According to step 103, based on the connection components selected by the user, it filters out other connection components that can be paired with them.

[0140] Through the above-mentioned component drawing module, connection verification and drawing module, component constraint execution module, and candidate component selection module in the processor 11 and the memory 12, the methods for visualizing cloud computing resource orchestration provided in Embodiment 1 and Embodiment 2 can be implemented to assist the user in completing the drawing of the cloud computing cluster.

[0141] In a specific implementation, the processor 11 and the memory 12 can be connected through a bus or other means. Figure 12 Taking the connection through the bus as an example. The memory 12 can include a high-speed random access memory, and can also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other non-volatile solid-state storage devices. In some embodiments, the memory 12 optionally includes a memory remotely set relative to the processor 11, and these remote memories can be connected to the processor 11 through a network. Examples of the above-mentioned network include but are not limited to the Internet, an enterprise intranet, a local area network, a mobile communication network, and their combinations. Those of ordinary skill in the art can understand that all or part of the steps in the various methods of the embodiments can be completed by instructing relevant hardware through a program, and this program can be stored in a computer-readable storage medium. The storage medium can include: a read-only memory (abbreviated as: ROM), a random access memory (abbreviated as: RAM), a disk, or an optical disc, etc.

[0142] In the above-mentioned Embodiments 1-3, only the core and common resources in the cloud computing field are used as examples for illustration, and for the sake of clarity, the connection components within the combined components are simplified. In an actual business scenario, a combined component will contain a larger number of connection components, but the methods for component construction, constraint verification, and pairing and screening are still applicable. Therefore, the construction of a more complex cluster environment is still applicable to the method described in this patent and should all be included within the protection scope of the present invention.

[0143] Further, the resources mentioned in the above Embodiments 1-3: virtual machines, SAS cloud disks, SSD cloud disks, virtual network cards, etc. are relatively typical and representative names in the field of cloud computing. In different product implementations, the names may be different, but the connotations are the same. Therefore, they are still applicable to the method described in this patent.

[0144] The above are only the preferred embodiments of the present invention and are not intended to limit the present invention. Any modifications, equivalent replacements, and improvements made within the spirit and principles of the present invention shall be included within the protection scope of the present invention.

Claims

1. A method for visual orchestration of cloud computing resources, characterized in that, Specifically, it includes: Create a connection component for connecting resource components, and define the constraint conditions of the connection component. Among them, the connection component includes a mother end, a child end, and a child end constraint; Integrate the resource component and the connection component into a combined component, and define the constraint conditions of the combined component. Use the combined component as the smallest unit of orchestration. Each combined component contains one resource component and at least one connection component; Use the connection components in the combined component to orchestrate each connection of the combined component, check and verify according to the constraint conditions of the connection component, and filter out the connection components that can be connected to it when used subsequently starting from one connection component.

2. The method for visual orchestration of cloud computing resources according to claim 1, wherein The creation of the connection component for connecting resource components specifically includes: Visually abstract the docking capabilities between resource components. Use the component to which the connection component belongs as the mother end, and the dockable component of the connection component as the child end. Obtain the child end constraint of the connection according to the attributes of the dockable component of the connection component.

3. The method for visual orchestration of cloud computing resources according to claim 1, wherein The child end constraint includes a first constraint, a second constraint, and a third constraint. Specifically: The first constraint represents the resource type of the dockable component. Among them, the resource type includes the type of the resource component and / or the type of the connection component; The second constraint represents the number of dockable components; The third constraint represents the attribute value of the dockable component. Among them, the attribute value includes the optional enumerated values and / or value ranges of one or more specified attributes of the dockable component.

4. The method for visual orchestration of cloud computing resources according to claim 3, wherein The creation of the connection component for connecting resource components further includes: When multiple connection components are used simultaneously and there is a mutual constraint relationship, form the corresponding connection components into a connection component group, and set a fourth constraint for each connection component group. The fourth constraint represents at least one of the constraints, mutual exclusions, and joint constraints of the connection components in the connection component group.

5. The method for visual orchestration of cloud computing resources according to claim 1, wherein The integration of the resource component and the connection component into a combined component according to the function specifically includes: Reuse the resource component and the connection component to generate different combined components, and register the generated combined components in the component library for orchestrating connection relationships.

6. The method for visual orchestration of cloud computing resources according to claim 1, wherein The use of the connection components in the combined component to orchestrate each connection of the combined component specifically includes: In the combined component at the connection start point and the combined component at the connection end point, select one unused connection component each, connect the connection components in the two combined components to complete one connection, and sequentially complete the orchestration of all combined components that need to be connected.

7. The method for visual orchestration of cloud computing resources according to claim 4, wherein The check and verification according to the constraint conditions of the connection component specifically includes: Check whether there is only one connection component at each end of each connection; Verify from both ends of the connection whether the type of the peer resource component and / or the combined component corresponding to each connection conforms to the first constraint of the local connection component; Verify from both ends of the connection whether the number of slots occupied by each connection conforms to the second constraint and the fourth constraint of the local connection component; Verify from both ends of the connection whether the attribute value of the peer resource component corresponding to each connection conforms to the third constraint of the local connection component.

8. The method for visual orchestration of cloud computing resources according to claim 1, wherein The check and verification according to the constraint conditions of the connection component further includes: When the connection changes, re-verify all the connections of the combined component and adjust the connection relationship according to the verification result.

9. The method for visual orchestration of cloud computing resources according to claim 4, wherein The connection components that are screened out start from a connection component and can be connected to it during subsequent orchestration, specifically including: Check the available slot numbers of the starting connection component and the connection component group to which it belongs. When there are no available slots, there are no candidate connection components, where the starting connection component is the connection component corresponding to the starting point of a connection; Screen out the connection components whose resource types are consistent with the first constraint condition of the starting connection component; Among the screened components, further screen out the connection components that meet the third constraint condition of the starting connection component; Perform a reverse verification on the further screened connection components. If the starting connection component meets the first constraint, second constraint, third constraint, and fourth constraint of the screened connection component, select this connection component as a connectable candidate object.

10. An apparatus for visual orchestration of cloud computing resources, characterized in that: It includes at least one processor and a memory. The at least one processor and the memory are connected through a data bus. The memory stores instructions that can be executed by the at least one processor. After the instructions are executed by the processor, they are used to complete the method of visual orchestration of cloud computing resources described in any one of claims 1-9.

Citation Information

Patent Citations

  • Configuring an API to provide customized access constraints

    US20220075674A1

  • Multi-tiered cloud application topology modeling tool

    US9621428B1