Management method and device based on cloud service object, equipment and medium
By pre-occupying resources for target instances of cloud service objects in the cloud computing environment, the refund and user experience problems caused by failed scheduling of cloud service objects are solved, and higher scheduling accuracy and management reliability are achieved.
Patent Information
- Application Number
- CN202311582084.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-23
- Publication Date
- 2025-05-23
AI Technical Summary
In a k8s-based cloud computing environment, real-time scheduling of cloud service objects may fail, resulting in poor refunds and user experience. How to improve scheduling accuracy to improve this problem.
When receiving a cloud service object generation request, first make resource pre-occupying for the target instance in the cloud computing environment, generate pre-occupying information, and use pre-occupying resources during actual scheduling to avoid scheduling failure.
It improves scheduling accuracy, enhances the reliability of cloud service object management, improves user experience, and avoids refunds caused by scheduling failure.
Smart Images

Figure CN120029755A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a cloud service object-based management method, a cloud service object-based management device, an electronic device, and a computer-readable medium. Background Art
[0002] It is understandable that large-scale deployment of containers is required in cloud computing environments, and corresponding cluster management solutions have emerged. The container-based cluster management platform (Kubernetes, k8s) provides container applications with many functions such as service registration, load balancing, service deployment and operation, resource expansion and reduction, and resource scheduling.
[0003] At present, cloud service objects (such as database services, middleware services, etc.) are increasingly widely used in cloud computing environments based on k8s. In related technologies, after a cloud service object is generated, the instance corresponding to the cloud service object is scheduled in real time when needed. However, scheduling failure may occur during the real-time scheduling process, resulting in a refund and affecting the user experience.
[0004] Therefore, how to improve scheduling accuracy to better manage cloud service objects and improve user experience is an urgent problem to be solved. Summary of the invention
[0005] The embodiments of the present application provide a management method, apparatus, device, and medium based on cloud service objects, which improve scheduling accuracy, provide high reliability of cloud service object management, and provide good user experience.
[0006] In a first aspect, an embodiment of the present application provides a management method based on a cloud service object, the method comprising: if a request for generating a cloud service object is received from a requesting party, obtaining description information corresponding to a target instance for generating the cloud service object, the description information including specifications and scheduling constraints of the target instance; determining a target instance that meets the specifications and scheduling constraints based on a cloud computing environment; pre-occupying resources for the target instance in the cloud computing environment, and generating pre-occupation information so that the requesting party can perform a resource transfer operation on the cloud service object after pre-occupation; if a request for using the cloud service object is received from the requesting party, scheduling the target instance based on the pre-occupation information.
[0007] In a second aspect, an embodiment of the present application provides a management device based on a cloud service object, the device comprising: a generation module, configured to obtain description information corresponding to a target instance for generating the cloud service object if a generation request for a cloud service object is received from a requesting party, the description information comprising specifications and scheduling constraints of the target instance; a determination module, configured to determine a target instance that meets the specifications and scheduling constraints based on a cloud computing environment; a pre-occupation generation module, configured to pre-occupy resources for the target instance in the cloud computing environment, and generate pre-occupation information so that the requesting party can perform a resource transfer operation for the cloud service object after the pre-occupation; and a scheduling module, configured to schedule the target instance based on the pre-occupation information if a use request for the cloud service object is received from the requesting party.
[0008] In one embodiment of the present application, based on the aforementioned scheme, the determination module is specifically configured as follows: creating a virtual instance object based on the description information, the virtual instance object including scheduling resource parameters that meet the specifications and the scheduling constraints; creating a candidate instance corresponding to the scheduling resource parameters in the virtual instance object; if the candidate instance is successfully simulated and scheduled in the cloud computing environment, the candidate instance is used as the target instance.
[0009] In one embodiment of the present application, based on the aforementioned scheme, the cloud computing environment includes multiple scheduling nodes; the cloud service object-based management device may also include: a selection module, configured to select a candidate scheduling node that meets the candidate instance specifications from the multiple scheduling nodes; an obtaining module, configured to obtain a scheduling result for characterizing the successful simulation scheduling of the candidate instance in the cloud computing environment if there are multiple candidate scheduling nodes and a target scheduling node that meets the candidate instance scheduling constraints is selected from the multiple candidate scheduling nodes.
[0010] In one embodiment of the present application, based on the aforementioned scheme, the obtaining module is specifically configured as follows: if there are multiple candidate scheduling nodes, and multiple target scheduling nodes that respectively meet the scheduling constraints of the candidate instances are selected from the multiple candidate scheduling nodes, then the multiple target scheduling nodes are scheduled and scored to obtain a scheduling score for each target scheduling node; a target scheduling node whose scheduling score is higher than a preset scheduling score threshold is selected from the multiple target scheduling nodes, and a scheduling result used to characterize the successful simulation scheduling of the candidate instance in the cloud computing environment is obtained.
[0011] In one embodiment of the present application, based on the above solution, the scheduling module is further specifically configured as follows:
[0012] If there are multiple work units corresponding to the candidate instance, each work unit is simulated and scheduled in the cloud computing environment.
[0013] In one embodiment of the present application, based on the above-mentioned solution, the determination module is further specifically configured to: if the scheduling of each work unit is successfully simulated in the cloud computing environment, the candidate instance is used as the target instance.
[0014] In one embodiment of the present application, based on the aforementioned solution, the determination module is further specifically configured to: create a workload corresponding to the scheduling resource parameters in the virtual instance object; and create the candidate instance through the workload.
[0015] In one embodiment of the present application, based on the aforementioned scheme, the pre-occupancy generation module is specifically configured as follows: obtaining a target scheduling node in the cloud computing environment that can successfully schedule the target instance; pre-occupying resources for the target instance on the target scheduling node; and generating pre-occupancy information based on a binding relationship between the target instance and the target scheduling node, and the resources pre-occupied by the target instance in the target scheduling node.
[0016] In one embodiment of the present application, based on the aforementioned scheme, the pre-occupancy information includes a binding relationship between the target instance and a target scheduling node used to successfully schedule the target instance, and the resources pre-occupied by the target instance in the target scheduling node; the scheduling module is specifically configured as follows: creating a real instance object based on the pre-occupied resources, the real instance object including scheduling resource parameters matching the pre-occupied resources; creating a target instance corresponding to the scheduling resource parameters in the real instance object; and scheduling the target instance to the target scheduling node based on the binding relationship.
[0017] In one embodiment of the present application, based on the aforementioned scheme, the description information and the pre-occupancy information are written into the resource pre-occupancy object; the cloud service object-based management device may also include: a deletion module, configured to delete the resource pre-occupancy object if it is detected that the target instance is successfully scheduled to the target scheduling node.
[0018] In one embodiment of the present application, based on the aforementioned scheme, the description information and the pre-occupancy information are written into the resource pre-occupancy object; the management device based on the cloud service object may also include: a receiving module, configured to receive a modification request for the cloud service object sent by the requesting party; wherein the modification request includes a modified specification for the specified work unit contained in the target instance; a determination and update module, configured to, if it is detected that the modified specification is greater than the specification before the modification, determine the resources that can meet the modified specification from the target scheduling node to which the target instance is scheduled based on the modified specification, and pre-occupy the determined resources, and update the pre-occupancy information; the scheduling module is also configured to schedule the target instance based on the updated pre-occupancy information if a use request for the cloud service object is received from the requesting party.
[0019] In one embodiment of the present application, based on the aforementioned scheme, the determination and update module is specifically configured as follows: calculating the difference between the modified specifications and the specifications before the modification; and determining, based on the difference, from the target scheduling node to which the target instance is scheduled, resources that can meet the difference.
[0020] In one embodiment of the present application, based on the aforementioned scheme, the cloud service object-based management device may further include: a release module, configured to release specified resources from the target scheduling node to which the target instance is scheduled based on the modified specifications and the specifications before the modification if it is detected that the modified specifications are smaller than the specifications before the modification; wherein, after releasing the specified resources, the resources occupied by the specified work unit contained in the target instance in the target scheduling node are equal to the resources corresponding to the modified specifications.
[0021] In a third aspect, an embodiment of the present application provides an electronic device, comprising one or more processors; and a memory for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the electronic device implements the cloud service object-based management method as described above.
[0022] In a fourth aspect, an embodiment of the present application provides a computer-readable medium having a computer program stored thereon, and when the computer program is executed by a processor, the cloud service object-based management method as described above is implemented.
[0023] In a fifth aspect, an embodiment of the present application provides a computer program product, including computer instructions, which, when executed by a processor, implement the cloud service object-based management method as described above.
[0024] In the technical solution provided in the embodiments of the present application:
[0025] On the one hand, after receiving the request from the requester to generate a cloud service object, resources are first pre-occupied for the target instance of the cloud service object in the cloud computing environment. In this way, when the target instance corresponding to the cloud service object is scheduled, the pre-occupied resources can be used to generate the cloud service object to realize the scheduling of the target instance, avoiding the phenomenon of refund due to scheduling failure in the real-time scheduling process, improving the scheduling accuracy, and the reliability of cloud service object management is high, and the user experience is good.
[0026] On the one hand, by determining the target instance that meets both the specifications and scheduling constraints from the cloud computing environment, the determined target instance is more in line with the actual cloud computing environment, avoiding the phenomenon of resource pre-occupancy errors caused by pre-occupancy based only on resource margin, further improving scheduling accuracy, and thus improving the reliability of cloud service object management and user experience.
[0027] It should be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present application. BRIEF DESCRIPTION OF THE DRAWINGS
[0028] Figure 1 It is a schematic diagram of an exemplary implementation environment to which the technical solution of the embodiments of the present application can be applied.
[0029] Figure 2 It is a flowchart of a management method based on cloud service objects shown in an exemplary embodiment of the present application.
[0030] Figure 3 It is a flowchart of a management method based on cloud service objects shown in another exemplary embodiment of the present application.
[0031] Figure 4 It is a flowchart of a management method based on cloud service objects shown in another exemplary embodiment of the present application.
[0032] Figure 5 It is a flowchart of a management method based on cloud service objects shown in another exemplary embodiment of the present application.
[0033] Figure 6 It is a flowchart of a management method based on cloud service objects shown in another exemplary embodiment of the present application.
[0034] Figure 7 It is a flowchart of a management method based on cloud service objects shown in another exemplary embodiment of the present application.
[0035] Figure 8 It is a schematic diagram of a management method based on cloud service objects shown in another exemplary embodiment of the present application.
[0036] Fig. 9 It is a schematic diagram of a management method based on cloud service objects shown in another exemplary embodiment of the present application.
[0037] Fig.10 It is a schematic diagram of a management method based on cloud service objects shown in another exemplary embodiment of the present application.
[0038] Fig.11 It is a schematic diagram of a management method based on cloud service objects shown in another exemplary embodiment of the present application.
[0039] Fig.12 It is a block diagram of a management device based on cloud service objects shown in an exemplary embodiment of the present application.
[0040] Fig.13 It is a schematic diagram of the structure of a computer system of an electronic device suitable for implementing the embodiments of the present application. Detailed implementation manners
[0041] Here, the exemplary embodiments will be described in detail, and the examples are shown in the drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The implementation manners described in the following exemplary embodiments do not represent all the implementation manners of the present application. On the contrary, they are only examples of devices and methods that are the same as some aspects of the present application as detailed in the appended claims.
[0042] In the embodiments of the present application, the term "module" or "unit" refers to a computer program with a predetermined function or a part of a computer program, which works together with other related parts to achieve a predetermined goal, and can be fully or partially implemented by using software, hardware (such as a processing circuit or a memory), or a combination thereof. Similarly, one processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be a part of an overall module or unit that includes the function of the module or unit.
[0043] The block diagrams shown in the drawings are only functional entities and do not necessarily correspond to physically independent entities. That is, these functional entities can be implemented in software form, or in one or more hardware modules or integrated circuits, or in different networks and / or processor devices and / or microcontroller devices.
[0044] The flowcharts shown in the drawings are only exemplary descriptions, and do not necessarily include all the contents and operations / steps, nor do they necessarily need to be executed in the described order. For example, some operations / steps can be decomposed, and some operations / steps can be combined or partially combined. Therefore, the actual execution order may change according to the actual situation.
[0045] It should be noted that the "multiple" mentioned in this application refers to two or more than two. "And / or" describes the association relationship of the associated objects, indicating that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship.
[0046] It is understandable that large-scale deployment of containers is required in cloud computing environments, and corresponding cluster management solutions have emerged. K8s provides container applications with many functions such as service registration, load balancing, service deployment and operation, resource expansion and reduction, and resource scheduling.
[0047] At present, cloud service objects (such as database services, middleware services, etc.) are increasingly widely used in cloud computing environments based on k8s. In related technologies, after a cloud service object is generated, the instance corresponding to the cloud service object is scheduled in real time when needed. However, scheduling failure may occur during the real-time scheduling process, resulting in a refund and affecting the user experience.
[0048] Therefore, in order to improve scheduling accuracy and avoid refunds caused by insufficient resources that affect user experience, this application provides a management solution based on cloud service objects. Figure 1 , Figure 1 1 is a schematic diagram of an implementation environment involved in the present application. The implementation environment mainly includes a terminal device 101 and a server 102, wherein the terminal device 101 and the server 102 communicate with each other via a wired or wireless network.
[0049] The terminal device 101 refers to an electronic device that can receive a request for generating a cloud service object issued by a requester, wherein the requester can be any object having a demand for generating a cloud service object, such as a user.
[0050] Exemplarily, the terminal device includes but is not limited to a computer, a tablet, a laptop, a smart phone, a smart wearable device, etc.
[0051] The server 102 refers to a server that can interact with the terminal device 101 , and can receive any request sent by the requesting party through the terminal device 101 , and perform corresponding processing based on the received corresponding request.
[0052] Exemplarily, the server may be a server cluster or a distributed system composed of multiple physical servers, where the server cluster or the distributed system includes cloud servers for providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms; Exemplarily, the server may also be an independent physical server, which is not limited herein.
[0053] It should be noted that Figure 1 the numbers of the terminal device 101 and the server 102 in
[0054] In an embodiment of the present application, the management method based on cloud service objects may be executed interactively by the terminal device 101 and the server 102.
[0055] Exemplarily, the terminal device receives a generation request for a cloud service object sent by a requester, and sends the generation request for the cloud service object by the requester to the server.
[0056] Correspondingly, when the server receives the generation request for the cloud service object sent by the terminal device, it obtains the description information corresponding to the target instance for generating the cloud service object, and the description information includes the specifications and scheduling constraints of the target instance; then, based on the cloud computing environment, it determines the target instance that meets the specifications and scheduling constraints; then, it pre-occupies resources for the target instance in the cloud computing environment and generates pre-occupation information, so as to request the requester to perform a resource transfer operation for the cloud service object after pre-occupation.
[0057] Correspondingly, the terminal device receives a usage request for a cloud service object sent by a requester, and sends the usage request for the cloud service object by the requester to the server.
[0058] Correspondingly, when the server receives the usage request for the cloud service object by the requester, it schedules the target instance based on the pre-occupation information.
[0059] In an embodiment of the present application, the management method based on cloud service objects may also be executed separately by the terminal device 101 or the server 102 alone, which will not be elaborated herein.
[0060] Figure 1 The technical solutions of the illustrated embodiments can be applied to various scenarios, including but not limited to intelligent transportation, assisted driving, cloud technology, artificial intelligence, etc.; in actual applications, corresponding adjustments can be made according to specific application scenarios.
[0061] It should be noted that in the specific implementation of this application, user-related data is involved. When the embodiments of this application are applied to specific products or technologies, user permission or consent is required, and the collection, use and processing of relevant data need to comply with relevant laws, regulations and standards of relevant countries and regions.
[0062] The following is a detailed description of various implementation details of the technical solution of the embodiment of the present application:
[0063] See also Figure 2 , Figure 2 FIG. 1 is a flow chart of a cloud service object management method according to an embodiment of the present application. The cloud service object management method can be executed by the server 102. Figure 2 As shown, the cloud service object-based management method includes at least S201 to S204, which are described in detail as follows:
[0064] S201: If a request for generating a cloud service object is received from a requesting party, descriptive information corresponding to a target instance for generating the cloud service object is obtained, where the descriptive information includes specifications and scheduling constraints of the target instance.
[0065] In an embodiment of the present application, when the requesting party has a demand for generating a cloud service object, it can issue a generation request for the cloud service object; accordingly, the server receives the generation request for the cloud service object from the requesting party and obtains description information corresponding to the target instance for generating the cloud service object.
[0066] In the embodiment of the present application, the cloud service object refers to the service located on the virtual machine; the service can be directly called / used, including but not limited to database services, middleware services, etc.
[0067] In the embodiment of the present application, the target instance refers to the instance required to generate the cloud service object; the instance refers to a pod, usually multiple pods, for example, a MySQL instance includes three MySQL pods and three proxy pods, where a pod is the smallest working unit / resource management component in k8s, and each pod can run one or more containers.
[0068] In the embodiment of the present application, description information refers to information used to describe the target instance, or information related to the target instance, including but not limited to specifications of the target instance, scheduling constraints of the target instance, etc.; wherein:
[0069] The specifications of the target instance refer to information related to the resources required by the target instance, including but not limited to the number of pods contained in the target instance and the resource size of a single pod, or the number of pods contained in the target instance and the resource size of all pods, etc., where the resources include but are not limited to memory, central processing unit (CPU), graphics processing unit (GPU), Internet Protocol (IP), etc.
[0070] The scheduling constraints of a target instance refer to the scheduling conditions that the pods contained in the target instance must meet. Usually, multiple pods in the same target instance must meet the same scheduling conditions. The scheduling conditions include but are not limited to affinity, anti-affinity, high availability, tolerance, etc. Among them:
[0071] Affinity means that a pod needs to be scheduled to a scheduling node that is friendly to it. For example, pod1 and pod2 are a pair of very good colleagues. When pod2 is scheduled, it means that I will go wherever pod1 is, that is, pod2 and pod1 are in the same place.
[0072] Anti-affinity means that a pod cannot be scheduled to a scheduling node that is not affinity with it. It is like pod1 and pod2 are a pair of angry children. When pod2 is scheduled, it says that it will not go wherever pod1 is, that is, pod2 will not be in the same place as pod1.
[0073] High availability means scheduling the pods contained in the target instance to appropriate cross-physical machines, racks, switches, floors, buildings, campuses, regions, etc. based on high availability requirements, so as to achieve the expected high availability.
[0074] Tolerance refers to the stains that pod scheduling can tolerate (there may be stains on the scheduling node, which can be indicated by the name, etc.). For example, if the scheduling node is marked with the stain "very old model", pod2 is not affected by the model when scheduling, and pod2 can be scheduled to the scheduling node.
[0075] S202, determining a target instance that meets specifications and scheduling constraints based on the cloud computing environment.
[0076] In an embodiment of the present application, the server obtains description information corresponding to the target instance used to generate the cloud service object, where the description information includes the specifications and scheduling constraints of the target instance, and then can determine the target instance that meets both the specifications and scheduling constraints based on the cloud computing environment.
[0077] In the embodiment of the present application, the cloud computing environment refers to a cluster or distributed system composed of cloud servers, wherein the host machine included in the cloud computing environment can be called a scheduling node.
[0078] For example, assuming that the description information includes the description information "2 target instances pod3, each with 1 core and 1 GiB", and the scheduling constraint "scheduled to the scheduling node corresponding to pod' with label label_1", it is necessary to determine in the cloud computing environment the target instance that satisfies both "2 target instances pod3, each with 1 core and 1 GiB" and "needs to be scheduled to the scheduling node corresponding to pod' with label label_1".
[0079] S203, pre-occupying resources for the target instance in the cloud computing environment and generating pre-occupation information so that the requesting party can perform resource transfer operations for the cloud service object after pre-occupation.
[0080] In an embodiment of the present application, the server determines a target instance that meets the specifications and scheduling constraints, and then can pre-occupy resources for the target instance in a cloud computing environment and generate pre-occupancy information. After pre-occupancy of resources, the requesting party can perform resource transfer operations for the cloud service object, thereby completing the generation of the cloud service object.
[0081] In the embodiment of the present application, resource pre-occupation refers to marking / locking the resources required for the target instance, and does not actually occupy the resources. That is, when the requester initiates a generation request for a cloud service object, after determining that there is a target instance that meets the specifications and scheduling constraints in the cloud computing environment, the resources required for the target instance are reserved to ensure that the subsequent requester can successfully use the cloud service object (that is, the target instance can be successfully scheduled to actually occupy the resources).
[0082] In an embodiment of the present application, the pre-occupancy information refers to the information related to resource pre-occupancy generated after resource pre-occupancy is performed on the target instance, including but not limited to the binding relationship between the target instance and the target scheduling node used to successfully schedule the target instance (i.e., the scheduling node to which the target instance is scheduled), and the resources pre-occupied by the target instance in the target scheduling node, etc.
[0083] For example, following the previous example, assume that there is a pod' with label label_1 on the target scheduling node node1, and the resource margin satisfies 2 cores and 2 Gib, that is, the target instance is determined; therefore, at this time, the 2 cores and 2 Gib on the target scheduling node node1 can be pre-occupied, and pre-occupancy information is generated at the same time, wherein the pre-occupancy information includes the binding relationship between the 2 pod3 in the target instance and the target scheduling node node1, and the resources pre-occupied by the 2 pod3 in the target instance on the target scheduling node node1 are 1 core and 1 Gib.
[0084] The resources in the resource transfer operation in the embodiment of the present application include but are not limited to monetary resources, futures, etc., which are different from the resources related to the cloud service object; that is, after pre-occupancy, the requesting party performs payment operations / payment operations on the cloud service object.
[0085] S204: If a use request for a cloud service object is received from a requesting party, a target instance is scheduled based on the pre-occupancy information.
[0086] In the embodiment of the present application, when the requesting party has a demand for use of a cloud service object, it can issue a use request for the cloud service object; accordingly, the server receives the use request for the cloud service object from the requesting party and schedules the target instance based on the pre-occupancy information.
[0087] For example, continuing with the previous example, assuming that the pre-occupancy information includes the binding relationship between the two pod3s in the target instance and the target scheduling node node1, and the resources pre-occupied by the two pod3s in the target instance on the target scheduling node node1 are 1 core and 1 Gib, then the two pod3s in the target instance are scheduled to the target scheduling node node1 respectively to occupy the 2 cores and 2 Gib on the target scheduling node node1.
[0088] In the embodiment of the present application, after receiving the request from the requesting party to generate a cloud service object, the server first pre-occupies resources for the target instance of the cloud service object in the cloud computing environment. In this way, when the target instance corresponding to the cloud service object is scheduled, the pre-occupied resources can be used to generate the cloud service object to achieve the scheduling of the target instance, thereby improving the scheduling accuracy; and the target instance that meets both the specifications and the scheduling constraints is determined. In this way, the determined target instance is more in line with the actual cloud computing environment, the scheduling accuracy is improved, the reliability of cloud service object management is high, and the user experience is good.
[0089] In one embodiment of the present application, another cloud service object-based management method is provided, which can be executed by the server 102. Figure 3 As shown, the cloud service object-based management method may include S301 to S303, S201, and S203 to S204.
[0090] S301 to S303 are described in detail as follows:
[0091] S301, creating a virtual instance object based on description information, where the virtual instance object includes scheduling resource parameters that meet specifications and scheduling constraints.
[0092] In an embodiment of the present application, the server can first create a virtual instance object based on the specifications and scheduling constraints contained in the description information, wherein the virtual instance object includes scheduling resource parameters that meet the specifications and scheduling constraints, that is, create a virtual instance object, and define parameters in the virtual instance object, and the parameter definitions meet the specifications and scheduling constraints.
[0093] S302: Create a candidate instance corresponding to the scheduling resource parameter in the virtual instance object.
[0094] In the embodiment of the present application, the server creates a virtual instance object, and then can create a candidate instance corresponding to the scheduling resource parameters in the virtual instance object.
[0095] In one embodiment of the present application, the process of creating a candidate instance corresponding to the scheduling resource parameter in the virtual instance object in S302 may include:
[0096] Create a workload corresponding to the scheduling resource parameters in the virtual instance object;
[0097] Create candidate instances from workloads.
[0098] That is, in an optional embodiment, the server creates a candidate instance corresponding to the scheduling resource parameters in the virtual instance object. Specifically, the server may first create a workload corresponding to the scheduling resource parameters in the virtual instance object, and then create the candidate instance through the workload.
[0099] In this way, by implementing the optional embodiment, rapid creation of candidate instances is achieved, thereby improving the efficiency of resource pre-occupancy.
[0100] In one embodiment of the present application, the cloud computing environment includes a plurality of scheduling nodes; accordingly, after the process of creating a candidate instance corresponding to the scheduling resource parameter in the virtual instance object in S302, the following may also be included:
[0101] Selecting a candidate scheduling node that meets the candidate instance specification from multiple scheduling nodes;
[0102] If there are multiple candidate scheduling nodes, and a target scheduling node that satisfies the scheduling constraints of the candidate instance is selected from the multiple candidate scheduling nodes, a scheduling result for representing a successful simulation scheduling of the candidate instance in the cloud computing environment is obtained;
[0103] If there are zero candidate scheduling nodes, or if there are multiple candidate scheduling nodes and a target scheduling node that satisfies the scheduling constraints of the candidate instance is not selected from the multiple candidate scheduling nodes, a scheduling result for characterizing a failed simulated scheduling candidate instance in a cloud computing environment is obtained.
[0104] That is, in the optional embodiment, the server creates a candidate instance, and then can simulate scheduling the candidate instance in the cloud computing environment to obtain a scheduling result. Specifically, the scheduling of the candidate instance in the cloud computing environment can be simulated to obtain a scheduling result, which can be firstly selected from multiple scheduling nodes to meet the specifications of the candidate instance; if there are multiple candidate scheduling nodes, and a target scheduling node that meets the scheduling constraints of the candidate instance can be selected from multiple candidate scheduling nodes, then a scheduling result is obtained to represent the successful simulation of scheduling the candidate instance in the cloud computing environment; if there are zero candidate scheduling nodes, or if there are multiple candidate scheduling nodes, but a target scheduling node that meets the scheduling constraints of the candidate instance cannot be selected from multiple candidate scheduling nodes, then a scheduling result is obtained to represent the failed simulation of scheduling the candidate instance in the cloud computing environment.
[0105] In one embodiment of the present application, the cloud computing environment includes a plurality of scheduling nodes; accordingly, after the process of creating a candidate instance corresponding to the scheduling resource parameter in the virtual instance object in S302, the following may also be included:
[0106] Selecting a candidate scheduling node that satisfies the scheduling constraints of the candidate instance from multiple scheduling nodes;
[0107] If there are multiple candidate scheduling nodes, and a target scheduling node that meets the specifications of the candidate instance is selected from the multiple candidate scheduling nodes, a scheduling result for representing a successful simulation scheduling of the candidate instance in the cloud computing environment is obtained;
[0108] If there are zero candidate scheduling nodes, or if there are multiple candidate scheduling nodes and a target scheduling node that meets the candidate instance specification is not selected from the multiple candidate scheduling nodes, a scheduling result for characterizing a failed simulated scheduling candidate instance in a cloud computing environment is obtained.
[0109] That is, in an optional embodiment, the server creates a candidate instance, and then can simulate scheduling of the candidate instance in a cloud computing environment to obtain a scheduling result. Specifically, simulating scheduling of the candidate instance in a cloud computing environment to obtain a scheduling result can be performed by first selecting a candidate scheduling node that meets the scheduling constraints of the candidate instance from multiple scheduling nodes; if there are multiple candidate scheduling nodes, and a target scheduling node that meets the specifications of the candidate instance can be selected from multiple candidate scheduling nodes, then a scheduling result is obtained that is used to characterize the successful simulation of scheduling of the candidate instance in the cloud computing environment; if there are zero candidate scheduling nodes, or if there are multiple candidate scheduling nodes, but a target scheduling node that meets the specifications of the candidate instance cannot be selected from multiple candidate scheduling nodes, then a scheduling result is obtained that is used to characterize the failed simulation of scheduling of the candidate instance in the cloud computing environment.
[0110] In this way, by implementing the optional embodiment, the scheduling result can be obtained quickly and accurately by using the determination of the target scheduling node selection situation, thereby providing strong support for resource pre-occupancy.
[0111] In one embodiment of the present application, if there are multiple candidate scheduling nodes, and a target scheduling node that satisfies the scheduling constraints of the candidate instance is selected from the multiple candidate scheduling nodes, a process for obtaining a scheduling result for representing a successful simulation scheduling of the candidate instance in a cloud computing environment may include:
[0112] If there are multiple candidate scheduling nodes, and multiple target scheduling nodes that respectively meet the scheduling constraints of the candidate instances are selected from the multiple candidate scheduling nodes, the multiple target scheduling nodes are scored for scheduling to obtain a scheduling score for each target scheduling node;
[0113] A target scheduling node having a scheduling score higher than a preset scheduling score threshold is selected from multiple target scheduling nodes, and a scheduling result for representing a successful simulation scheduling candidate instance in a cloud computing environment is obtained.
[0114] That is, in an optional embodiment, if there are multiple candidate scheduling nodes, and multiple target scheduling nodes that respectively meet the scheduling constraints of the candidate instances are selected from the multiple candidate scheduling nodes, then the multiple target scheduling nodes can be scheduled and scored to obtain a scheduling score for each target scheduling node, where the scheduling score is used to characterize the scheduling priority, and the scheduling score is proportional to the scheduling priority, that is, the higher the scheduling score, the higher the scheduling priority; then, a target scheduling node with a scheduling score higher than a preset scheduling score threshold is selected from the multiple target scheduling nodes, and a scheduling result used to characterize the successful simulation of the scheduling candidate instance in the cloud computing environment is obtained.
[0115] In one embodiment of the present application, if there are multiple candidate scheduling nodes, and a target scheduling node that meets the specifications of the candidate instance is selected from the multiple candidate scheduling nodes, the process of obtaining a scheduling result for representing a successful simulation scheduling of the candidate instance in the cloud computing environment may include:
[0116] If there are multiple candidate scheduling nodes, and multiple target scheduling nodes that meet the candidate instance specifications are selected from the multiple candidate scheduling nodes, the multiple target scheduling nodes are scored to obtain a scheduling score for each target scheduling node;
[0117] A target scheduling node having a scheduling score higher than a preset scheduling score threshold is selected from multiple target scheduling nodes, and a scheduling result for representing a successful simulation scheduling candidate instance in a cloud computing environment is obtained.
[0118] That is, in an optional embodiment, if there are multiple candidate scheduling nodes, and multiple target scheduling nodes that meet the specifications of the candidate instances are selected from the multiple candidate scheduling nodes, then the multiple target scheduling nodes can be scheduled and scored to obtain a scheduling score for each target scheduling node, where the scheduling score is used to characterize the scheduling priority, and the scheduling score is proportional to the scheduling priority, that is, the higher the scheduling score, the higher the scheduling priority; then, a target scheduling node with a scheduling score higher than a preset scheduling score threshold is selected from the multiple target scheduling nodes, and a scheduling result used to characterize the successful simulation of the scheduling candidate instance in the cloud computing environment is obtained.
[0119] In this way, by implementing the optional embodiment, a target scheduling node with a higher scheduling score is selected, so that resources can be pre-occupied for the target instance in the target scheduling node, and the rationality of resource pre-occupancy is high.
[0120] In one embodiment of the present application, after the process of creating a candidate instance corresponding to the scheduling resource parameter in the virtual instance object in S302, the following may also be included:
[0121] If there are multiple work units (i.e., pods) corresponding to the candidate instance, each work unit is scheduled in a simulated manner in a cloud computing environment to obtain a scheduling result for each work unit.
[0122] That is, in the optional embodiment, if there are multiple work units corresponding to the candidate instance, it is necessary to simulate the scheduling of each work unit in the cloud computing environment to obtain the scheduling result of each work unit.
[0123] S303: If the candidate instance is successfully simulated and scheduled in the cloud computing environment, the candidate instance is used as the target instance.
[0124] In the embodiment of the present application, the server obtains the scheduling result, and then determines whether to use the candidate instance as the target instance based on the scheduling result.
[0125] In the embodiment of the present application, determining whether to use a candidate instance as a target instance based on a scheduling result may include two situations:
[0126] Case 1: If the scheduling result indicates that the scheduling candidate instance is successfully simulated in the cloud computing environment, the candidate instance can be used as the target instance. It can be understood that the successful simulation of the scheduling candidate instance indicates that there is a scheduling node in the cloud computing environment that meets the conditions, so the candidate instance can be used as the target instance.
[0127] Case 2: If the scheduling result indicates that the candidate instance for failure simulation scheduling fails in the cloud computing environment, the candidate instance cannot be used as the target instance at this time. It can be understood that the candidate instance for failure simulation scheduling indicates that there is no scheduling node in the cloud computing environment that meets the conditions. Therefore, the candidate instance cannot be used as the target instance. Exemplarily, a generation failure result can also be returned to the requester (i.e., inform the requester that the cloud service object cannot be generated before the requester places an order but has not paid).
[0128] It can be understood that the scheduling results in the foregoing Case 1 and Case 2 refer to the process of determining whether to use the candidate instance as the target instance based on the scheduling result of a single work unit corresponding to the candidate instance.
[0129] In an embodiment of the present application, if there are multiple work units corresponding to the candidate instance, that is, the scheduling results of multiple work units corresponding to the candidate instance are obtained; correspondingly, the process of using the candidate instance as the target instance if the candidate instance is successfully simulated and scheduled in the cloud computing environment in S303 may include:
[0130] If each work unit is successfully simulated and scheduled in the cloud computing environment, the candidate instance is used as the target instance.
[0131] That is to say, in an alternative embodiment, if the scheduling results of multiple work units corresponding to the candidate instance are obtained, then only when the scheduling results of all work units indicate that the work units are successfully simulated and scheduled in the cloud computing environment can the candidate instance be used as the target instance; in other words, if there is at least one work unit among the scheduling results of multiple work units corresponding to the candidate instance whose scheduling result indicates that the work unit fails in the cloud computing environment for simulation scheduling, the candidate instance cannot be used as the target instance at this time.
[0132] It should be noted that Figure 3 For the detailed introduction of S201, S203 to S204 shown, please refer to Figure 2 S201, S203 to S204 shown, which will not be elaborated here.
[0133] In the embodiment of the present application, the server creates a virtual instance object, creates a candidate instance based on the created virtual instance object, and uses the candidate instance as the target instance after successfully simulating and scheduling the candidate instance, thereby achieving the goal of quickly and accurately determining the target instance that meets the specifications and scheduling constraints from the cloud computing environment.
[0134] In an embodiment of the present application, another management method based on cloud service objects is provided, and this management method based on cloud service objects can be executed by the server 102. As Figure 4As shown, the cloud service object-based management method may include S401 to S403, S201 to S202, and S204.
[0135] S401 to S403 are described in detail as follows:
[0136] S401, obtaining a target scheduling node that can successfully schedule a target instance in a cloud computing environment.
[0137] In the embodiment of the present application, the target scheduling node refers to the scheduling node used to successfully schedule the target instance.
[0138] S402: Pre-occupy resources for the target instance on the target scheduling node.
[0139] In the embodiment of the present application, the server can obtain a target scheduling node that can successfully schedule the target instance in the cloud computing environment, and then pre-occupy resources for the target instance in the target scheduling node.
[0140] For example, continuing with the above example, assuming that the target scheduling node is node1, the target scheduling node node1 is obtained, and resources for two pod3s in the target instance are pre-occupied on the target scheduling node node1.
[0141] In one embodiment of the present application, after performing the process of pre-occupying resources for the target instance on the target scheduling node in S402, the following may also be included:
[0142] Update the resource margin on the target scheduling node.
[0143] That is, after the server in the optional embodiment pre-occupies resources for the target instance on the target scheduling node, the resource margin on the target scheduling node has changed; therefore, in the optional embodiment, the resource margin on the target scheduling node can be updated to facilitate the subsequent scheduling of new target instances or upgrades to existing target instances.
[0144] S403: Generate pre-occupancy information based on the binding relationship between the target instance and the target scheduling node, and the resources pre-occupied by the target instance in the target scheduling node.
[0145] In an embodiment of the present application, the server pre-occupies resources for the target instance on the target scheduling node, and then establishes a binding relationship between the target instance and the target scheduling node, and generates pre-occupancy information based on the binding relationship and the resources pre-occupied by the target instance in the target scheduling node.
[0146] For example, following the above example, a binding relationship is established between the two pod3 in the target instance and the target scheduling node node1, and then the pre-occupancy information is generated based on the binding relationship and the resources 1 core 1 Gib respectively occupied by the two pod3 in the target instance on the target scheduling node node1.
[0147] It should be noted that Figure 4 For detailed description of S201 to S202 and S204, please refer to Figure 2 S201 to S202 and S204 shown are not described in detail here.
[0148] In the embodiment of the present application, the server pre-occupies resources for the target instance on the target scheduling node, and generates pre-occupancy information based on the binding relationship between the target instance and the target scheduling node, and the resources pre-occupied by the target instance in the target scheduling node, thereby providing strong support for the subsequent scheduling of the target instance and ensuring that the target instance can be scheduled normally.
[0149] In one embodiment of the present application, another cloud service object-based management method is provided, which can be executed by the server 102. Figure 5 As shown, the cloud service object-based management method may include S501 to S503 and S201 to S203.
[0150] As described in the above-mentioned embodiment, the pre-occupancy information in the embodiment of the present application includes the binding relationship between the target instance and the target scheduling node used to successfully schedule the target instance, and the resources pre-occupied by the target instance in the target scheduling node.
[0151] S501 to S503 are described in detail as follows:
[0152] S501: Create a real instance object based on the pre-occupied resources, where the real instance object includes scheduling resource parameters matching the pre-occupied resources.
[0153] In an embodiment of the present application, the server may first create a real instance object based on the pre-occupied resources contained in the pre-occupied information, wherein the real instance object includes scheduling resource parameters that match the pre-occupied resources, that is, a real instance object is created, and parameters are defined in the real instance object, and the parameter definitions satisfy the pre-occupied resources.
[0154] S502: Create a target instance corresponding to the scheduling resource parameters in the real instance object.
[0155] In the embodiment of the present application, the server creates a real instance object, and then can create a target instance corresponding to the scheduling resource parameters in the real instance object.
[0156] In one embodiment of the present application, the process of creating a candidate instance corresponding to the scheduling resource parameter in the real instance object in S502 may include:
[0157] Create a workload corresponding to the scheduling resource parameters in the real instance object;
[0158] Create a target instance from the workload.
[0159] That is, in an optional embodiment, the server creates a candidate instance corresponding to the scheduling resource parameters in the real instance object. Specifically, it can first create a workload corresponding to the scheduling resource parameters in the real instance object, and then create a target instance through the workload.
[0160] In this way, by implementing the optional embodiment, the target instance can be quickly created, thereby improving the efficiency of the target instance scheduling.
[0161] S503: Schedule the target instance to the target scheduling node based on the binding relationship.
[0162] In the embodiment of the present application, the server creates a target instance, and then can schedule the target instance to the target scheduling node based on the binding relationship contained in the pre-occupancy information.
[0163] It is understandable that, since resources for the target instance have been pre-occupied on the target scheduling node in the aforementioned steps, in the embodiment of the present application, it is only necessary to directly schedule the target instance to the target scheduling node based on the binding relationship contained in the pre-occupancy information.
[0164] In one embodiment of the present application, the description information and the pre-occupancy information are written into the resource pre-occupancy object; that is, in an optional embodiment, the description information and the pre-occupancy information are stored through the resource pre-occupancy object, so that the description information and the pre-occupancy information are stored in the same resource pre-occupancy object, which facilitates the management of the description information and the pre-occupancy information.
[0165] Accordingly, after the process of scheduling the target instance to the target scheduling node based on the binding relationship in S503, the following may also be included:
[0166] If it is detected that the target instance is successfully scheduled to the target scheduling node, the resource reservation object is deleted.
[0167] That is, in the optional embodiment, after the server schedules the target instance to the target scheduling node, it will detect the scheduling result and determine whether to delete the resource reservation object based on the detection result.
[0168] Among them, in the optional embodiment, determining whether to delete the resource pre-occupied object based on the detection result includes two situations:
[0169] Case 1: If the detection result indicates that the target instance is successfully scheduled to the target scheduling node, the resource reservation object can be deleted.
[0170] Case 2: If the detection result indicates that the target instance fails to be scheduled to the target scheduling node, then resources can be reserved and scheduled again for the target instance in the cloud computing environment based on the description information contained in the resource reservation object.
[0171] It should be noted that Figure 5 For detailed description of S201 to S203, please refer to Figure 5 S201 to S203 shown are not described in detail here.
[0172] In an embodiment of the present application, the server creates a real instance object based on the pre-occupied resources contained in the pre-occupied information, creates a target instance based on the created real instance object, and schedules the target instance based on the binding relationship contained in the pre-occupied information, thereby achieving fast and accurate scheduling of the target instance to the target scheduling node.
[0173] In one embodiment of the present application, another cloud service object-based management method is provided, which can be executed by the server 102. Figure 6 As shown, the cloud service object-based management method may further include S601 to S603 after S204.
[0174] S601 to S603 are described in detail as follows:
[0175] S601, receiving a modification request for a cloud service object sent by a requester; wherein the modification request includes a modified specification of a specified work unit contained in a target instance.
[0176] In an embodiment of the present application, when the requesting party has a modification requirement for a cloud service object, it can issue a modification request for the cloud service object, where the modification request includes the modified specifications of a specified work unit contained in the target instance; accordingly, the server receives the modification request for the cloud service object from the requesting party.
[0177] S602, if it is detected that the modified specification is greater than the specification before the modification, then based on the modified specification, determine the resources that can meet the modified specification from the target scheduling node to which the target instance is scheduled, pre-occupy the determined resources, and update the pre-occupancy information.
[0178] In an embodiment of the present application, if the server detects that the modified specifications are greater than the specifications before the modification, it can determine the resources that can meet the modified specifications from the target scheduling node scheduled to the target instance based on the modified specifications, and pre-occupy the determined resources, and update the pre-occupancy information.
[0179] For example, following the previous example, the specifications of the two pod3s in the target instance before modification are 1 core 1 Gib respectively. Assuming that the modified specification for a certain pod3 is 2 cores 4 Gib, then based on the modified specification 2 cores 4 Gib, the resources corresponding to the modified specification 2 cores 4 Gib can be determined from the target scheduling node node1 to which the target instance is scheduled, and the resources corresponding to the determined 2 cores 4 Gib can be pre-occupied. At the same time, the resources 1 core 1 Gib pre-occupied by pod3 on the target scheduling node node1 contained in the pre-occupancy information can be modified to 2 cores 4 Gib pre-occupied by pod3 on the target scheduling node node1.
[0180] In one embodiment of the present application, the process of determining, based on the modified specification, from the target scheduling node to which the target instance is scheduled, resources that can meet the modified specification in S602 may include:
[0181] Calculate the difference between the specifications after the modification and the specifications before the modification;
[0182] Based on the difference, a resource that can satisfy the difference is determined from the target scheduling node to which the target instance is scheduled.
[0183] That is, in the optional embodiment, since resources for the target instance have been pre-occupied on the target scheduling node, the server in the optional embodiment can calculate the difference between the modified specifications and the specifications before the modification, and then determine the resources that can meet the difference from the target scheduling node to which the target instance is scheduled based on the difference and pre-occupy them.
[0184] For example, continuing with the previous example, for a pod3, the difference between the modified specifications and the specifications before and after the modification is 1 core 3 GiB. In this case, you only need to determine the resources that meet the requirements of 1 core 3 GiB from the target scheduling node node1 to which the target instance is scheduled and pre-occupy them.
[0185] In this way, by implementing the optional embodiment, the difference between the modified specifications and the specifications before the modification is used to determine the resources that can meet the difference from the target scheduling node scheduled to the target instance, thereby performing resource preoccupancy, and the resource preoccupancy process is simple.
[0186] S603: If a use request for the cloud service object is received from the requesting party, the target instance is scheduled based on the updated reservation information.
[0187] In the embodiment of the present application, when the requesting party has a demand for use of a cloud service object, it can issue a use request for the cloud service object; accordingly, the server receives the use request for the cloud service object from the requesting party and schedules the target instance based on the updated reservation information.
[0188] For example, continuing with the previous example, the updated pre-occupancy information includes the binding relationship between a pod3 in the target instance and the target scheduling node node1, and the resources pre-occupied by a pod3 in the target instance on the target scheduling node node1 are 2 cores and 4 GiB. In this case, a pod3 in the target instance is scheduled to the target scheduling node node1 to occupy the 2 cores and 4 GiB on the target scheduling node node1.
[0189] It should be noted that Figure 6 For detailed description of S201 to S204, please refer to Figure 2 S201 to S204 shown are not described in detail here.
[0190] In the embodiment of the present application, the server can pre-occupy corresponding resources when the target instance needs to be upgraded. In this way, when the target instance after the cloud service object is upgraded is scheduled, the pre-occupied resources can be used to generate a cloud service object to achieve the scheduling of the upgraded target instance, thereby improving the scheduling accuracy and being suitable for various scenarios that require upgrades.
[0191] In one embodiment of the present application, another cloud service object-based management method is provided, which can be executed by the server 102. Figure 7 As shown, the cloud service object-based management method may further include S701 to S702 after S204.
[0192] S701, receiving a modification request for a cloud service object sent by a requester; wherein the modification request includes a modified specification of a specified work unit contained in a target instance.
[0193] In an embodiment of the present application, when the requesting party has a modification requirement for a cloud service object, it can issue a modification request for the cloud service object, where the modification request includes the modified specifications of a specified work unit contained in the target instance; accordingly, the server receives the modification request for the cloud service object from the requesting party.
[0194] S702, if it is detected that the modified specification is smaller than the specification before the modification, then based on the modified specification and the specification before the modification, the specified resources are released from the target scheduling node to which the target instance is scheduled; wherein, after the specified resources are released, the resources occupied by the specified work unit contained in the target instance in the target scheduling node are equal to the resources corresponding to the modified specification.
[0195] In an embodiment of the present application, if the server detects that the modified specifications are smaller than the specifications before the modification, it can release the specified resources from the target scheduling node to which the target instance is scheduled based on the modified specifications and the specifications before the modification; wherein, after releasing the specified resources, the resources occupied by the specified work unit contained in the target instance in the target scheduling node are equal to the resources corresponding to the modified specifications.
[0196] For example, following the previous example, the specifications of the two pod3s in the target instance before modification are 1 core 1 Gib respectively. Assuming that the modified specification of a certain pod3 is 0 core 1 Gib, then based on the modified specification 0 core 1 Gib and the specification 1 core 1 Gib before modification, the specified resources can be released from the target scheduling node node1 to which the target instance is scheduled. After releasing the specified resources, the resources occupied by a certain pod3 in the target instance in the target scheduling node node1 are equal to the resources corresponding to the modified specification 0 core 1 Gib.
[0197] In one embodiment of the present application, the process of releasing the specified resource from the target scheduling node to which the target instance is scheduled based on the modified specification and the specification before the modification in S702 may include:
[0198] Calculate the difference between the specifications after the modification and the specifications before the modification;
[0199] Release the specified resources corresponding to the difference from the target scheduling node to which the target instance is scheduled.
[0200] That is, in an optional embodiment, the server may calculate the difference between the modified specification and the specification before the modification, and then release the specified resources corresponding to the difference from the target scheduling node to which the target instance is scheduled.
[0201] For example, continuing with the above example, for a pod3, the difference between the modified specifications and the specifications before and after the modification is 1 core, then the specified resources corresponding to 1 core need to be released from the target scheduling node node1 to which the target instance is scheduled.
[0202] In this way, by implementing the optional embodiment, the difference between the modified specification and the pre-modified specification is used to release the specified resources corresponding to the difference from the target scheduling node to which the target instance is scheduled, and the resource release process is simple.
[0203] It should be noted that Figure 7 For detailed description of S201 to S204, please refer to Figure 2 S201 to S204 shown are not described in detail here.
[0204] In the embodiment of the present application, the server can release corresponding resources when the target instance needs to be downgraded, thereby avoiding the phenomenon of resource waste and providing strong support for generating other cloud service objects.
[0205] The following is a detailed description of a specific scenario of an embodiment of the present application:
[0206] First, the scenario of creating or expanding a cloud service object (i.e., generating a pod) is introduced.
[0207] See also Figure 8 , Figure 8 FIG. 1 is a flow chart of a management method based on cloud service objects according to an embodiment of the present application. Figure 8 As shown, the cloud service object-based management method includes at least S801 to S806, which are described in detail as follows:
[0208] S801, if a request for generating a cloud service object is received from a requesting party, a resource reservation object is created through an interface service; wherein the resource reservation object includes description information corresponding to a target instance for generating the cloud service object, and the description information includes specifications and scheduling constraints of the target instance.
[0209] S802: If the resource reservation controller detects a newly created resource reservation object, a virtual instance object is created based on description information in the resource reservation object; wherein the virtual instance object includes scheduling resource parameters that meet specifications and scheduling constraints.
[0210] It can be understood that the scheduling resource parameter may also be referred to as a scheduling sub-resource parameter, which corresponds to a scheduling sub-resource.
[0211] S803: If the instance controller detects the creation of a virtual instance object, it creates a workload corresponding to the scheduling resource parameters in the virtual instance object, and creates a candidate instance through the workload.
[0212] It can be understood that what are created through the workload are all pods corresponding to the candidate instances under the virtual instance object.
[0213] S804, if the scheduler detects a newly created pod, it simulates scheduling the pod in the cloud computing environment, and after successfully simulating scheduling the pod in the cloud computing environment, uses the candidate instance as the target instance.
[0214] It can be understood that when there are multiple pods, each pod is simulated and scheduled in the cloud computing environment, and after each pod is successfully simulated and scheduled in the cloud computing environment, the candidate instance is used as the target instance.
[0215] S805, the scheduler obtains a target scheduling node that can successfully schedule the target instance in the cloud computing environment, and pre-occupies resources for the target instance on the target scheduling node to generate pre-occupancy information.
[0216] S806: Add the reservation information to the resource reservation object.
[0217] It can be understood that S805 to S806 can be regarded as persisting the resource pre-occupancy results to the apiServer (a server program used to receive and process API requests in a distributed system), that is, S805 persists the pre-occupied resources to the node object corresponding to the target scheduling node, thereby avoiding the pre-occupied resources from being occupied by other instances, and S806 stores the binding relationship between the target instance and the target scheduling node, which will be used as the basis for scheduling the target instance in the later stage.
[0218] At this point, the pre-occupancy process is completed.
[0219] It should be noted that Figure 8 For the detailed description of S801 to S806 shown, please refer to the above-mentioned embodiment, which will not be repeated here.
[0220] Next, the scheduling process after the pre-emption process is introduced.
[0221] See also Fig. 9 , Fig. 9 FIG. 1 is a flow chart of a management method based on cloud service objects according to an embodiment of the present application. Fig. 9 As shown, the cloud service object-based management method includes at least S901 to S907, which are described in detail as follows:
[0222] S901: If a request for use of a cloud service object is received from a requesting party, a resource reservation object is queried through an interface service; wherein the resource reservation object includes description information and reservation information.
[0223] S902, creating a real instance object based on the reservation information in the resource reservation object through the interface service; wherein the real instance object includes scheduling resource parameters matching the reservation information.
[0224] It is understandable that the scheduling resource parameters can also be called scheduling sub-resource parameters, which correspond to scheduling sub-resources. At the same time, compared with creating a virtual instance object, creating a real instance object also involves other sub-resources, such as probe sub-resources, network sub-resources, etc. In actual applications, other sub-resources involved in creating a real instance object can be flexibly adjusted according to specific application scenarios. Among them, other sub-resources are information related to resource configuration, which is substantially different from scheduling sub-resources. Therefore, when pre-occupying, only scheduling sub-resources need to be pre-occupied.
[0225] S903: If the instance controller detects the creation of a real instance object, it creates a workload corresponding to the scheduling resource parameters in the real instance object, and creates a target instance through the workload.
[0226] It is understandable that what is created through the workload are all pods corresponding to the target instance under the real instance object.
[0227] S904: If the scheduler detects a newly created pod, the scheduler schedules the pod to a target scheduling node based on the reservation information in the resource reservation object.
[0228] S905, the scheduler persists the scheduling result of the target instance to the apiServer.
[0229] S906, deleting the resource reservation object through the interface service.
[0230] S907, if the resource pre-occupancy controller detects the deletion of the resource pre-occupancy object, it deletes the resource pre-occupancy result previously persisted to the apiServer (that is, the pre-occupied resource related information persisted to the node object corresponding to the target scheduling node).
[0231] At this point, the scheduling process is completed.
[0232] It should be noted that Fig. 9 For detailed description of S901 to S907 shown, please refer to the above-mentioned embodiment, which will not be repeated here.
[0233] Secondly, the scenario of upgrading cloud service objects (i.e. adjusting the size of pods) is introduced.
[0234] See also Fig.10 , Fig.10 FIG. 1 is a flow chart of a management method based on cloud service objects according to an embodiment of the present application. Fig.10 As shown, the cloud service object-based management method includes at least S1001 to S1005, which are described in detail as follows:
[0235] S1001, if a modification request for a cloud service object is received from a requesting party, a resource pre-occupancy object is created through an interface service; wherein the resource pre-occupancy object includes description information, and the description information includes specifications of a specified pod in a target instance before and after the upgrade.
[0236] For example, the pod name (podName) specified in the target instance is pod-1, the target scheduling node name (nodeName) to which the target instance is scheduled is 10.0.0.1 (also the target scheduling node address), the resources before the pod upgrade (originalResource) are specified as 1 core CPU and 1 Gib memory, and the resources after the pod upgrade (desiredResource) are specified as 4 cores CPU and 4 Gib memory.
[0237] S1002: If the resource reservation controller detects a newly created resource reservation object, a candidate instance is created based on description information in the resource reservation object; wherein the candidate instance meets the upgraded resource specification.
[0238] Exemplarily, following the above example, the specification of the candidate instance is the difference between the specifications before and after the upgrade, for example, 3 cores and 3 GiB.
[0239] S1003: If the scheduler detects a newly created candidate instance, it simulates scheduling the candidate instance in the cloud computing environment, and after successfully simulating scheduling the candidate instance in the cloud computing environment, it uses the candidate instance as a target instance.
[0240] Exemplarily, following the above example, the scheduler simulates scheduling the candidate instance to the target scheduling node 10.0.0.1.
[0241] S1004: The scheduler preoccupies resources for the target instance on the target scheduling node and generates preoccupancy information.
[0242] Exemplarily, following the above example, the scheduler reserves 3 cores and 3 GiB on the target scheduling node 10.0.0.1.
[0243] S1005: Add the reservation information to the resource reservation object.
[0244] It can be understood that S1004 to S1005 can be regarded as persisting the resource pre-occupancy results to the apiServer (a server program used to receive and process API requests in a distributed system), that is, S1004 persists the pre-occupied resources to the node object corresponding to the target scheduling node, thereby avoiding the pre-occupied resources from being occupied by other instances, and S1005 stores the binding relationship between the target instance and the target scheduling node, which will be used as the basis for scheduling the target instance in the later stage.
[0245] At this point, the pre-occupancy process is completed.
[0246] It should be noted that Fig.10 For detailed description of S1001 to S1005 shown, please refer to the above-mentioned embodiment description, which will not be repeated here.
[0247] Next, the scheduling process after the pre-emption process is introduced.
[0248] See also Fig.11 , Fig.11 FIG. 1 is a flow chart of a management method based on cloud service objects according to an embodiment of the present application. Fig.11 As shown, the cloud service object-based management method includes at least S1101 to S1106, which are described in detail as follows:
[0249] S1101: If a request for use of a cloud service object is received from a requesting party, a resource reservation object is queried through an interface service; wherein the resource reservation object includes description information and reservation information.
[0250] S1002: If the instance controller detects the creation of a new resource preemption object, it creates an upgraded target instance based on the preemption information in the resource preemption object.
[0251] For example, following the above example, the upgrade of pod-1 in the target instance includes two situations:
[0252] Deletion: You can recreate pod-1 with 4 cores and 4 GiB, and delete the original pod-1 with 1 core and 1 GiB. It is understandable that the recreated pod-1 with 4 cores and 4 GiB specifies the same target scheduling node nodeName as before, and deletes the original pod-1 with 1 core and 1 GiB to avoid resource waste.
[0253] Do not delete: When in-place upgrade is supported, directly upgrade the required resources in-place, that is, directly upgrade pod-1 from 1 core 1 GiB to 4 cores 4 GiB.
[0254] S1103: The scheduler schedules the target instance to the target scheduling node based on the reservation information in the resource reservation object.
[0255] S1104, the scheduler persists the scheduling result of the target instance to the apiServer.
[0256] S1105, deleting the resource reservation object through the interface service.
[0257] S1106: If the resource reservation controller detects the deletion of the resource reservation object, it deletes the resource reservation result previously persisted to the apiServer (ie, the reservation resource related information persisted to the node object corresponding to the target scheduling node).
[0258] At this point, the scheduling process is completed.
[0259] It should be noted that Fig.11 For detailed description of S1101 to S1106 shown, please refer to the above-mentioned embodiment description, which will not be repeated here.
[0260] By implementing this application solution, at least the following beneficial effects are achieved:
[0261] In the scenario of creating / expanding or upgrading a cloud service object, resources are first pre-occupied for the target instance of the cloud service object in the cloud computing environment. This allows the pre-occupied resources to be used to generate a cloud service object when scheduling the target instance corresponding to the cloud service object, so as to schedule the target instance. This avoids refunds due to scheduling failures during real-time scheduling, improves scheduling accuracy, and provides high reliability in cloud service object management and good user experience.
[0262] At the same time, in the scenarios of new creation / expansion or upgrade of cloud service objects, by determining the target instance that meets both the specifications and scheduling constraints from the cloud computing environment, the target instance determined in this way is more in line with the actual cloud computing environment, avoiding the phenomenon of resource pre-occupancy errors and refunds caused by resource pre-occupancy based only on resource surplus, further improving scheduling accuracy, and thus improving the reliability of cloud service object management and user experience.
[0263] Fig.12 FIG. 1 is a block diagram of a management device based on a cloud service object according to an embodiment of the present application. Fig.12 As shown, the management device based on the cloud service object includes:
[0264] The generation module 1201 is configured to obtain description information corresponding to a target instance for generating the cloud service object if a generation request for the cloud service object is received from a requesting party, wherein the description information includes specifications and scheduling constraints of the target instance;
[0265] A determination module 1202 is configured to determine a target instance that meets the specification and the scheduling constraint based on the cloud computing environment;
[0266] The pre-occupancy generating module 1203 is configured to pre-occupy resources for the target instance in the cloud computing environment and generate pre-occupancy information so that the requesting party can perform a resource transfer operation for the cloud service object after the pre-occupancy;
[0267] The scheduling module 1204 is configured to schedule the target instance based on the pre-occupancy information if a use request for the cloud service object is received from the requesting party.
[0268] In one embodiment of the present application, the determination module 1202 is specifically configured as follows:
[0269] Creating a virtual instance object based on the description information, the virtual instance object including scheduling resource parameters that meet the specification and the scheduling constraint;
[0270] Creating a candidate instance corresponding to the scheduling resource parameter in the virtual instance object;
[0271] If the candidate instance is successfully simulated and scheduled in the cloud computing environment, the candidate instance is used as the target instance.
[0272] In one embodiment of the present application, the cloud computing environment includes a plurality of scheduling nodes; the cloud service object-based management device may further include:
[0273] A selection module configured to select a candidate scheduling node that meets the candidate instance specification from the multiple scheduling nodes;
[0274] The module is configured to obtain a scheduling result for representing the successful simulation scheduling of the candidate instance in the cloud computing environment if there are multiple candidate scheduling nodes and a target scheduling node that meets the scheduling constraints of the candidate instance is selected from the multiple candidate scheduling nodes.
[0275] In one embodiment of the present application, the obtaining module is specifically configured as follows:
[0276] If there are multiple candidate scheduling nodes, and multiple target scheduling nodes that respectively meet the scheduling constraints of the candidate instances are selected from the multiple candidate scheduling nodes, then scheduling scores are performed on the multiple target scheduling nodes to obtain a scheduling score for each target scheduling node;
[0277] A target scheduling node having a scheduling score higher than a preset scheduling score threshold is selected from the multiple target scheduling nodes, and a scheduling result representing successful simulation scheduling of the candidate instance in the cloud computing environment is obtained.
[0278] In one embodiment of the present application, the scheduling module 1204 is further specifically configured as follows:
[0279] If there are multiple work units corresponding to the candidate instance, each work unit is simulated and scheduled in the cloud computing environment.
[0280] In one embodiment of the present application, the determination module 1202 is further specifically configured as follows:
[0281] If each work unit is successfully simulated and scheduled in the cloud computing environment, each candidate instance is used as a target instance.
[0282] In one embodiment of the present application, the determination module 1202 is further specifically configured as follows:
[0283] Creating a workload corresponding to the scheduling resource parameters in the virtual instance object;
[0284] The candidate instance is created by using the workload.
[0285] In one embodiment of the present application, the pre-occupancy generation module 1203 is specifically configured as follows:
[0286] Acquire a target scheduling node in the cloud computing environment that can successfully schedule the target instance;
[0287] Pre-occupying resources for the target instance on the target scheduling node;
[0288] Based on the binding relationship between the target instance and the target scheduling node, and the resources occupied by the target instance in the target scheduling node, the pre-occupancy information is generated.
[0289] In one embodiment of the present application, the pre-occupancy information includes a binding relationship between the target instance and a target scheduling node for successfully scheduling the target instance, and resources pre-occupied by the target instance in the target scheduling node; the scheduling module 1204 is specifically configured as follows:
[0290] Creating a real instance object based on the pre-occupied resources, the real instance object including scheduling resource parameters matching the pre-occupied resources;
[0291] Creating a target instance corresponding to the scheduling resource parameters in the real instance object;
[0292] The target instance is scheduled to the target scheduling node based on the binding relationship.
[0293] In one embodiment of the present application, the description information and the pre-occupancy information are written into a resource pre-occupancy object; the cloud service object-based management device may further include:
[0294] The deleting module is configured to delete the resource reservation object if it is detected that the target instance is successfully scheduled to the target scheduling node.
[0295] In one embodiment of the present application, the description information and the pre-occupancy information are written into a resource pre-occupancy object; the cloud service object-based management device may further include:
[0296] A receiving module configured to receive a modification request for the cloud service object sent by the requesting party; wherein the modification request includes a modified specification for a specified work unit contained in the target instance;
[0297] A determination and update module configured to, if it is detected that the modified specification is greater than the specification before the modification, determine, based on the modified specification, resources that can meet the modified specification from the target scheduling node to which the target instance is scheduled, and pre-occupy the determined resources, and update the pre-occupancy information;
[0298] The scheduling module 1204 is further configured to schedule the target instance based on the updated pre-occupancy information if a use request for the cloud service object is received from the requesting party.
[0299] In one embodiment of the present application, the determination and update module is specifically configured as follows:
[0300] Calculating the difference between the modified specification and the pre-modified specification;
[0301] Based on the difference, a resource that can satisfy the difference is determined from the target scheduling node to which the target instance is scheduled.
[0302] In one embodiment of the present application, the cloud service object-based management device may further include:
[0303] A release module is configured to release specified resources from the target scheduling node to which the target instance is scheduled based on the modified specifications and the specifications before the modification if it is detected that the modified specifications are smaller than the specifications before the modification; wherein, after releasing the specified resources, the resources occupied by the specified work unit contained in the target instance in the target scheduling node are equal to the resources corresponding to the modified specifications.
[0304] It should be noted that the apparatus provided in the aforementioned embodiment and the method provided in the aforementioned embodiment belong to the same concept, wherein the specific manner in which each module and unit performs the operation has been described in detail in the method embodiment.
[0305] An embodiment of the present application also provides an electronic device, comprising: one or more processors; a memory for storing one or more programs, and when the one or more programs are executed by one or more processors, the electronic device implements the aforementioned cloud service object-based management method.
[0306] Fig.13 It is a structural diagram of a computer system suitable for implementing an electronic device of an embodiment of the present application.
[0307] It should be noted that Fig.13 The computer system 1300 of the electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.
[0308] As Fig.13 shown, the computer system 1300 includes a Central Processing Unit (CPU) 1301, which can perform various appropriate actions and processes according to the program stored in the Read-Only Memory (ROM) 1302 or the program loaded from the storage section 1308 into the Random Access Memory (RAM) 1303, such as executing the method in the above embodiments. In the RAM 1303, various programs and data required for system operation are also stored. The CPU 1301, ROM 1302, and RAM 1303 are connected to each other via a bus 1304. An Input / Output (I / O) interface 1305 is also connected to the bus 1304.
[0309] The following components are connected to the I / O interface 1305: an input section 1306 including a keyboard, a mouse, etc.; an output section 1307 including, for example, a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), etc. and a speaker, etc.; a storage section 1308 including a hard disk, etc.; and a communication section 1309 including a network interface card such as a LAN (Local Area Network) card, a modem, etc. The communication section 1309 performs communication processing via a network such as the Internet. A drive 1310 is also connected to the I / O interface 1305 as required. A removable medium 1311, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1310 as required so that a computer program read from it can be installed into the storage section 1308 as required.
[0310] Specifically, according to an embodiment of the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a computer program for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication section 1309, and / or installed from the removable medium 1311. When the computer program is executed by the Central Processing Unit (CPU) 1301, various functions defined in the system of the present application are executed.
[0311] It should be noted that the computer-readable medium shown in the embodiment of the present application may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. Computer-readable media may be, for example, a system, device or device of electricity, magnetism, light, electromagnetic, infrared, or semiconductor, or any combination of the above. More specific examples of computer-readable media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a flash memory, an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present application, a computer-readable medium may be any tangible medium containing or storing a program, which may be used by an instruction execution system, device or device or used in combination with it. In the present application, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, wherein a computer-readable computer program is carried. This propagated data signal may take a variety of forms, including but not limited to an electromagnetic signal, an optical signal, or any suitable combination of the above. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium, which may send, propagate or transmit a program for use by or in conjunction with an instruction execution system, apparatus or device. A computer program contained on a computer-readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.
[0312] The flowchart and block diagram in the accompanying drawings illustrate the possible architecture, functions and operations of the system, method and computer program product according to various embodiments of the present application. Wherein, each box in the flowchart or block diagram can represent a module, a program segment, or a part of the code, and the above-mentioned module, program segment, or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order than the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flowchart, and the combination of boxes in the block diagram or flowchart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0313] The units involved in the embodiments described in this application may be implemented by software or hardware, and the units described may also be set in a processor. The names of these units do not, in some cases, constitute limitations on the units themselves.
[0314] Another aspect of the present application further provides a computer-readable medium having a computer program stored thereon, which, when executed by a processor, implements the aforementioned cloud service object-based management method. The computer-readable medium may be included in the electronic device described in the above embodiment, or may exist independently without being assembled into the electronic device.
[0315] Another aspect of the present application also provides a computer program product or a computer program, which includes a computer instruction stored in a computer-readable medium. A processor of a computer device reads the computer instruction from the computer-readable medium, and the processor executes the computer instruction, so that the computer device executes the management method based on the cloud service object provided in each of the above embodiments.
[0316] The above content is only a preferred exemplary embodiment of the present application and is not intended to limit the implementation scheme of the present application. A person skilled in the art can easily make corresponding changes or modifications based on the main concept and spirit of the present application. Therefore, the scope of protection of the present application shall be based on the scope of protection required by the claims.
Claims
1. A management method based on cloud service objects, It is characterized in that include: If a request for generating a cloud service object is received from a requesting party, obtaining description information corresponding to a target instance for generating the cloud service object, the description information including specifications and scheduling constraints of the target instance; Determine a target instance that meets the specification and the scheduling constraint based on the cloud computing environment; Pre-occupying resources for the target instance in the cloud computing environment and generating pre-occupation information so that the requesting party can perform a resource transfer operation for the cloud service object after pre-occupation; If a use request for the cloud service object is received from the requesting party, the target instance is scheduled based on the pre-emption information.
2. The method according to claim 1, It is characterized in that The determining, based on the cloud computing environment, a target instance that meets the specification and the scheduling constraint includes: Creating a virtual instance object based on the description information, the virtual instance object including scheduling resource parameters that meet the specification and the scheduling constraint; Creating a candidate instance corresponding to the scheduling resource parameter in the virtual instance object; If the candidate instance is successfully simulated and scheduled in the cloud computing environment, the candidate instance is used as the target instance.
3. The method according to claim 2, It is characterized in that The cloud computing environment includes a plurality of scheduling nodes; After creating the candidate instance corresponding to the scheduling resource parameter in the virtual instance object, the method further includes: Selecting a candidate scheduling node that meets the candidate instance specification from the multiple scheduling nodes; If there are multiple candidate scheduling nodes, and a target scheduling node that satisfies the scheduling constraints of the candidate instance is selected from the multiple candidate scheduling nodes, a scheduling result representing successful simulation scheduling of the candidate instance in the cloud computing environment is obtained.
4. The method according to claim 3, It is characterized in that If there are multiple candidate scheduling nodes, and a target scheduling node that satisfies the scheduling constraint of the candidate instance is selected from the multiple candidate scheduling nodes, a scheduling result representing successful simulation scheduling of the candidate instance in the cloud computing environment is obtained, including: If there are multiple candidate scheduling nodes, and multiple target scheduling nodes that respectively meet the scheduling constraints of the candidate instances are selected from the multiple candidate scheduling nodes, then scheduling scores are performed on the multiple target scheduling nodes to obtain a scheduling score for each target scheduling node; A target scheduling node having a scheduling score higher than a preset scheduling score threshold is selected from the multiple target scheduling nodes, and a scheduling result representing successful simulation scheduling of the candidate instance in the cloud computing environment is obtained.
5. The method according to claim 2, It is characterized in that After creating the candidate instance corresponding to the scheduling resource parameter in the virtual instance object, the method further includes: If there are multiple work units corresponding to the candidate instance, simulating the scheduling of each work unit in the cloud computing environment; If the candidate instance is successfully simulated and scheduled in the cloud computing environment, the candidate instance is used as the target instance, including: If each work unit is successfully simulated and scheduled in the cloud computing environment, the candidate instance is used as the target instance.
6. The method according to claim 2, It is characterized in that The step of creating a candidate instance corresponding to the scheduling resource parameter in the virtual instance object includes: Creating a workload corresponding to the scheduling resource parameters in the virtual instance object; The candidate instance is created by using the workload.
7. The method according to claim 1, It is characterized in that The pre-occupying resources for the target instance in the cloud computing environment and generating pre-occupancy information includes: Acquire a target scheduling node in the cloud computing environment that can successfully schedule the target instance; Pre-occupying resources for the target instance on the target scheduling node; Based on the binding relationship between the target instance and the target scheduling node, and the resources occupied by the target instance in the target scheduling node, the pre-occupancy information is generated.
8. The method according to claim 1, It is characterized in that The pre-occupancy information includes a binding relationship between the target instance and a target scheduling node used to successfully schedule the target instance, and resources pre-occupied by the target instance in the target scheduling node; The scheduling of the target instance based on the pre-emption information includes: Creating a real instance object based on the pre-occupied resources, the real instance object including scheduling resource parameters matching the pre-occupied resources; Creating a target instance corresponding to the scheduling resource parameters in the real instance object; The target instance is scheduled to the target scheduling node based on the binding relationship.
9. The method according to claim 8, It is characterized in that The description information and the reservation information are written into the resource reservation object; After scheduling the target instance to the target scheduling node based on the binding relationship, the method further includes: If it is detected that the target instance is successfully scheduled to the target scheduling node, the resource reservation object is deleted.
10. The method according to any one of claims 1 to 9, It is characterized in that After scheduling the target instance based on the pre-emption information, the method further includes: Receiving a modification request for the cloud service object sent by the requester; wherein the modification request includes a modified specification for a specified work unit contained in the target instance; If it is detected that the modified specification is greater than the specification before the modification, then based on the modified specification, resources that can meet the modified specification are determined from the target scheduling node to which the target instance is scheduled, and resources are pre-occupied for the determined resources, and the pre-occupation information is updated; If a use request for the cloud service object is received from the requesting party, the target instance is scheduled based on the updated reservation information.
11. The method according to claim 10, It is characterized in that The determining, based on the modified specification, from the target scheduling node to which the target instance is scheduled, resources that can meet the modified specification includes: Calculating the difference between the modified specification and the pre-modified specification; Based on the difference, a resource that can satisfy the difference is determined from the target scheduling node to which the target instance is scheduled.
12. The method according to claim 10, It is characterized in that After receiving the modification request for the cloud service object sent by the requester, the method further includes: If it is detected that the modified specification is smaller than the specification before the modification, then based on the modified specification and the specification before the modification, the specified resources are released from the target scheduling node to which the target instance is scheduled; wherein, after releasing the specified resources, the resources occupied by the specified work unit contained in the target instance in the target scheduling node are equal to the resources corresponding to the modified specification.
13. A management device based on cloud service objects, It is characterized in that include: a generation module configured to, upon receiving a generation request from a requester for a cloud service object, obtain description information corresponding to a target instance for generating the cloud service object, wherein the description information includes specifications and scheduling constraints of the target instance; A determination module configured to determine a target instance that meets the specification and the scheduling constraint based on a cloud computing environment; a pre-occupancy generation module configured to pre-occupy resources for the target instance in the cloud computing environment and generate pre-occupancy information so that the requesting party can perform a resource transfer operation for the cloud service object after the pre-occupancy; The scheduling module is configured to schedule the target instance based on the pre-occupancy information if a use request for the cloud service object is received from the requesting party.
14. An electronic device, It is characterized in that include: one or more processors; A memory for storing one or more programs, which, when executed by the electronic device, enables the electronic device to implement the cloud service object-based management method as described in any one of claims 1 to 12.
15. A computer readable medium having a computer program stored thereon, It is characterized in that When the computer program is executed by a processor, the cloud service object-based management method according to any one of claims 1 to 12 is implemented.
16. A computer program product comprising computer instructions, It is characterized in that When the computer instructions are executed by a processor, a cloud service object-based management method according to any one of claims 1 to 12 is implemented.