Service resource scheduling method, storage medium and electronic device
By decoupling cloud computers and native cloud docks, flexible deployment and resource sharing on heterogeneous cloud docks are achieved, solving the problem of insufficient utilization of cloud resource pool computing power and improving the utilization rate of cloud resources.
Patent Information
- Application Number
- CN202410088117.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-22
- Publication Date
- 2025-07-22
AI Technical Summary
Cloud computers cannot use cloud resources in heterogeneous cloud bases, resulting in the cloud resource pool computing power not being fully utilized.
By decoupling the cloud computer from its native cloud dock and scheduling the business resources of the heterogeneous cloud dock under the decoupling situation, the flexible deployment and resource sharing of cloud computers on various heterogeneous cloud docks can be achieved.
It has improved the utilization rate of cloud resources and achieved full utilization of computing power in cloud resource pools.
Smart Images

Figure CN120358238A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present invention relate to the technical field of cloud computers, and in particular, to a method, a storage medium, and an electronic device for business resource scheduling. Background Art
[0002] A cloud computer is a brand-new IT service based on cloud computing technology, also known as cloud computer service, which is an overall service solution including cloud resources, transmission protocols, and cloud terminals. An open cloud terminal provides desktop resources to users in a service mode of on-demand service and elastic allocation through a transmission protocol. Users only need a small terminal device, while resources such as a Central Processing Unit (CPU), memory, and hard disk are all concentrated in the cloud data center. Users can access their personal desktops, data, and various applications by connecting to the network anywhere with a network, and connecting a keyboard, mouse, and monitor.
[0003] Among them, cloud resources are provided by the cloud infrastructure (Infrastructure as a Service) of each manufacturer. There is a wide range of heterogeneity between different cloud infrastructures. Their underlying architectures are different, and the supported virtualization methods are also not the same. As a typical cloud service carried on the cloud infrastructure, a cloud computer is bound to its native cloud infrastructure and cannot be deployed on other heterogeneous cloud infrastructures in the cloud resource pool, and cannot use the cloud resources in the heterogeneous cloud infrastructure, resulting in the computing power of the cloud resource pool not being fully utilized. Summary of the Invention
[0004] The embodiments of the present invention provide a method, a storage medium, and an electronic device for business resource scheduling, so as to at least solve the problem in the related art that cloud computers cannot use the cloud resources in heterogeneous cloud infrastructures, resulting in the underutilization of the computing power of the cloud resource pool.
[0005] According to an embodiment of the present invention, a method for business resource scheduling is provided, including: decoupling a cloud computer from its corresponding native cloud infrastructure, and scheduling the business resources of the heterogeneous cloud infrastructure when the decoupling of the cloud computer and the native cloud infrastructure is completed, where the native cloud infrastructure and the heterogeneous cloud infrastructure are in a heterogeneous relationship.
[0006] According to another embodiment of the present invention, a computer-readable storage medium is further provided. A computer program is stored in the computer-readable storage medium, where the computer program is configured to execute the steps in any of the above method embodiments when running.
[0007] According to another embodiment of the present invention, there is also provided an electronic device, including a memory and a processor. A computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.
[0008] Through the above embodiments of the present invention, since the cloud computer is decoupled from its native cloud base, the cloud computer can be flexibly deployed on various heterogeneous cloud bases and use the cloud resources of various heterogeneous cloud bases. Thus, cloud resources in the cloud resource pool can be shared among cloud computers, enabling the computing power of the cloud resource pool to be fully utilized. Therefore, the problem in the related art that cloud computers cannot use cloud resources in heterogeneous cloud bases, resulting in the underutilization of the computing power of the cloud resource pool, can be solved, achieving the effect of improving the utilization rate of cloud resources. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] Figure 1 is a schematic diagram of the network architecture of a VDI cloud computer according to an embodiment of the present invention;
[0010] Figure 2 is a flowchart of a method for business resource scheduling according to an embodiment of the present invention;
[0011] Figure 3 is a schematic diagram of the SPICE protocol architecture according to an embodiment of the present invention;
[0012] Figure 4 is a schematic diagram of a service flow based on the native SPICE protocol according to an embodiment of the present invention;
[0013] Figure 5 is a schematic diagram of a service flow based on a decoupled desktop protocol according to an embodiment of the present invention;
[0014] Figure 6 is a schematic diagram of the decoupling process of the desktop transmission protocol from the cloud base according to an embodiment of the present invention;
[0015] Figure 7 is a schematic diagram of the decoupled cloud computer system architecture according to an embodiment of the present invention;
[0016] Figure 8 is a schematic diagram of the decoupling and adaptation process of the cloud computer service from the native cloud base according to an embodiment of the present invention;
[0017] Figure 9 is a flowchart of the decoupling and adaptation process of the cloud computer service from the native cloud base according to an embodiment of the present invention;
[0018] Figure 10 is a schematic diagram of a multi-service scheduling system based on a decoupled cloud computer according to an embodiment of the present invention;
[0019] Figure 11It is a flowchart of the implementation process of decoupled cloud computer multi-service tidal scheduling according to an embodiment of the present invention. Detailed implementation manners
[0020] In the following, embodiments of the present invention will be described in detail with reference to the accompanying drawings and in combination with embodiments.
[0021] The current cloud computer solutions mainly face government and enterprise customers with two technical routes of software-hardware integration and software-hardware semi-decoupling, and are privately deployed in the IDC (Internet Data Center) computer rooms of dedicated or general hardware in a private network; users access the cloud computers through local area networks, dedicated lines, etc.
[0022] In the software-hardware integration solution, the cloud computer business software, cloud base and hardware are strongly bound and privately deployed, and an independent IDC computer room needs to be planned; in the software-hardware semi-decoupling solution, the software and hardware are decoupled, and the cloud computer business (including the cloud base) can be deployed based on general hardware, mainly with private deployment, and has the characteristics of hardware decoupling, flexible deployment, flexible expansion, etc., and an independent IDC computer room needs to be planned.
[0023] With the development of cloud computing and network transmission technologies, public cloud resources are abundant and geographically evenly distributed. The public network operation cloud computer based on cloud base decoupling technology and making full use of public cloud resources can cover more home or individual users, which is the main technical route for the future development of cloud computers, that is, the cloud computer technology will evolve towards the direction of full software-hardware decoupling.
[0024] Specifically, the full software-hardware decoupling solution includes: the cloud computer business software is fully decoupled from the cloud base and hardware, and can be deployed based on various public cloud bases or cloud bases of third-party manufacturers, which can fully improve the resource utilization rate of the cloud base.
[0025] The embodiment of the present invention provides a cloud computer of Virtual Desktop Infrastructure (VDI), which consists of several parts such as a cloud base, cloud computer (service), cloud computer protocol, cloud computer terminal, etc., and jointly provides cloud computer services for users; at the same time, the operating system, user data, desktop applications, etc. are deployed in the cloud data center based on virtualization technology.
[0026] Figure 1 It is a schematic diagram of the network architecture of the VDI cloud computer according to an embodiment of the present invention. As Figure 1 shown, the VDI cloud computer is a three-layer architecture of "cloud-management-terminal", that is, cloud base-cloud computer service layer-user layer. Specifically:
[0027] Cloud base, including public cloud base and private cloud base in two forms, is used to provide the virtualization layer required by cloud computers and its supporting management capabilities, and provide northbound interfaces for resource management and service management according to certain specifications, such as: virtual machine life cycle management interface, image management interface, network management interface, etc. The current mainstream cloud bases include: OpenStack, VMware, Alibaba Cloud, China Telecom Cloud, Mobile Cloud, etc. Their infrastructure is different, and the virtualization methods supported by different cloud bases are different. Common virtualization methods include: XEN / KVM / VMware / Hyper-v, etc.
[0028] Cloud computer service layer, including cloud computer operation service, cloud computer service management, and cloud computer virtual machines.
[0029] Among them, cloud computer operation service has the capabilities required for product operation such as supporting billing, metering, call list, order, work order, etc., and provides them to the product operation portal and enterprise self-service portal; it is also used to abstract operation capability interfaces to connect to different third-party operation systems, so as to shield the impact of different interfaces of third-party operation systems on cloud desktop services and keep the general operation service layer stable.
[0030] Cloud computer service management is used to provide cloud computer service management capabilities and the docking and management capabilities of heterogeneous cloud bases for administrators, including the account opening and management capabilities of cloud computer users, desktop management capabilities, policy management capabilities, etc.
[0031] Cloud computer virtual machines are virtual machines provided by the cloud base, and cloud computer protocol components need to be installed inside the virtual machines.
[0032] User layer, including soft clients, set-top boxes, card readers, all-in-ones, cloud laptops and desktop terminals. The user layer communicates with the access layer through the Internet, enterprise dedicated line or enterprise intranet.
[0033] As Figure 1 shown, in the cloud computer with VDI architecture, in addition to the cloud base, cloud computer service layer, and user layer, there are also an access layer, a desktop transfer protocol, and desktop components.
[0034] The front-end of the cloud computer architecture deploys a security access gateway (i.e., the access layer). Thus, for the scenario of accessing the cloud computer from the external network, external network users need to pass the authentication of the security gateway before they can access the cloud computer, ensuring the security of cloud computer access.
[0035] The desktop transfer protocol is a key module for decoupling cloud computers, used to solve the problem of the native SPICE protocol being bound to the virtualization platform, and has the ability to be decoupled and deployed on a third-party cloud base.
[0036] Desktop components: including protocol components, redirection components, QoE components, etc., to achieve cloud computer connection and information collection and reporting within virtual machines, etc.
[0037] In addition, the cloud computer of the VDI architecture further includes: a cloud base interface adaptation layer (not shown in the figure), which is a decoupled key module of the cloud computer, used to provide a unified interface to the cloud computer service management, shield the differences of the cloud base, decouple from the cloud base interface, reduce the scope of impact of docking with third-party heterogeneous cloud bases, and improve the docking efficiency and the stability of the main service.
[0038] The cloud base interface adaptation layer is divided into the northward cloud base interface adaptation layer and the southward cloud base interface adaptation layer. Among them, the northward cloud base interface adaptation layer is used to provide a unified interface to the cloud desktop management service, shield the differences of the cloud platform, and maintain stability upward; the southward cloud base interface adaptation layer is used to adapt to different cloud platforms and be compatible with different interface methods and processes.
[0039] The embodiment of the present invention provides a service resource scheduling method, which can run on Figure 1 the VDI architecture cloud computer in Figure 2 is the flowchart of the service resource scheduling method according to the embodiment of the present invention, as Figure 2 shown, this process includes the following steps:
[0040] Step S202, decouple the cloud computer from its corresponding native cloud base;
[0041] In this embodiment, decoupling the cloud computer from its corresponding native cloud base includes: decoupling the desktop protocol of the cloud computer from the native cloud base; decoupling the cloud computer service of the cloud computer from the native cloud base.
[0042] In one embodiment, decoupling the desktop protocol of the cloud computer from its corresponding native cloud base includes: according to the virtual machine port unification process link establishment request and the protocol process link establishment request sent by the client, establish a service link between the client and the target desktop virtual machine, so as to decouple the desktop protocol from the native cloud base.
[0043] Among them, the port unification process is used to integrate the externally exposed ports into one port, so that different services can be received through this integrated port; the protocol process is used to unify different desktop protocols.
[0044] Among them, the desktop protocol of the cloud computer is the Simple Protocol for Independent Computing Environment (SPICE).
[0045] The SPICE protocol is an open-source code protocol. It is implemented based on the KVM virtualization technology and relies on KVM as the core basic component. Through the Spice Server in the Host OS, it can intelligently identify video images and convert them into MP4 format streams, which are then sent to the client for reproduction, achieving smooth support for various videos and animations. Its protocol architecture is as Figure 3 shown.
[0046] In one embodiment, establishing a service link between the client and the target desktop virtual machine includes: establishing a service link between the client and the access gateway in the cloud computer according to the link establishment request of the virtual machine port unification process, where at least one of the following information is carried in the link establishment request of the virtual machine port unification process: the address of the target desktop virtual machine, the port of the target desktop virtual machine, and the verification information for the user to log in to the cloud computer; establishing a service link between the access gateway and the target desktop virtual machine according to the link establishment request of the protocol process.
[0047] Decoupling the desktop protocol of the cloud computer from the native cloud base solves the problem of the coupling between the native SPICE protocol of the cloud computer and the virtualization platform, enabling the SPICE protocol of the cloud computer to be deployed on a third-party cloud base, and further realizing the connection and use of the cloud computer in the scenario of decoupling the cloud computer service from the cloud base.
[0048] In one embodiment, decoupling the cloud computer service of the cloud computer from the native cloud base includes: based on the resource access request initiated by the cloud computer service management module in the cloud computer, generating a cloud base standard request body according to the request parameters carried in the resource access request; through the cloud base standard request body, requesting the interfaces of different types of cloud bases, and respectively encapsulating the interface return parameters obtained from the different types of cloud bases to obtain the corresponding standard northbound interfaces, so as to complete the decoupling of the cloud computer service from the native cloud base.
[0049] Among them, at least one of the following parameters is carried in the resource access request: the name of the target server virtual machine, the image identifier, the specification identifier, and the network identifier.
[0050] Step S204, in the case where the cloud computer and the native cloud base are decoupled, scheduling the service resources of the heterogeneous cloud base, where the native cloud base and the heterogeneous cloud base are in a heterogeneous relationship.
[0051] In this embodiment, after the cloud computer and the native cloud base are decoupled, they can be deployed on a third-party heterogeneous cloud base. Then, in the service scheduling, the tidal effect can be used to give full play to the computing power of the cloud resource pool, realizing shared scheduling and resource sharing within the resource pool.
[0052] In one embodiment, scheduling the business resources of the heterogeneous cloud base includes: periodically detecting the load situation in the heterogeneous cloud base and the running situation of the services in the virtual machines, and generating corresponding scheduling tasks when the scheduling policy takes effect; calling multiple interfaces of the heterogeneous cloud base according to the corresponding scheduling tasks to adjust the business resources allocated to different types of services.
[0053] Among them, the virtual machines at least include one of the following types: server virtual machines, desktop virtual machines, and different types of virtual machines correspond to different types of services.
[0054] The load situation in the heterogeneous cloud base at least includes one of the following: the memory resource usage of the virtual machines, the host memory resource usage of the heterogeneous cloud base;
[0055] The running situation of the services in the virtual machines at least includes one of the following: the real-time situation of the internal processes in the target virtual machine, the detailed configuration of the scheduling policy.
[0056] In one embodiment, before generating the corresponding scheduling tasks when the scheduling policy takes effect, the method further includes: configuring at least one of the following parameters for the virtual machines: task type, execution period, effective time, execution object, whether there is a whitelist process; among them, the task type at least includes one of the following: start, shutdown, sleep, wake up.
[0057] In one embodiment, generating the corresponding scheduling tasks when the scheduling policy takes effect includes: generating a shutdown scheduling task or a sleep scheduling task when the disconnection time between the virtual machine and the heterogeneous cloud base exceeds the first threshold and there is no whitelist process inside the virtual machine; generating a migration scheduling task when the host resources of the heterogeneous cloud computer reach the second threshold in multiple consecutive cycles; generating a resource adjustment scheduling task when the resource utilization rate of the host is lower than that of the virtual machine; generating a start scheduling task when the resource requirement of the virtual machine is greater than the third threshold; generating a wake-up scheduling task when the duration of the virtual machine executing the sleep scheduling task meets the fourth threshold.
[0058] Through the above steps, since the cloud computer is decoupled from its native cloud base, the cloud computer can be flexibly deployed on various heterogeneous cloud bases and use the cloud resources of the heterogeneous cloud base. Thus, each cloud computer can share the cloud resources in the cloud resource pool, making full use of the computing power of the cloud resource pool. Therefore, it can solve the problem in the related technology that the cloud computer cannot use the cloud resources in the heterogeneous cloud base, resulting in the underutilization of the computing power of the cloud resource pool, and achieve the effect of improving the utilization rate of cloud resources.
[0059] Through the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be implemented by means of software plus a necessary general hardware platform. Of course, it can also be implemented by hardware, but in many cases the former is a better implementation. Based on such an understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to enable a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in various embodiments of the present invention.
[0060] In this embodiment, a fusion scheduling system and method for decoupled cloud computers are provided. The fusion scheduling method for decoupled cloud computers is a full software and hardware decoupling solution, that is, the cloud computer service is decoupled from the cloud base and hardware. It runs on the cloud computer with the above VDI architecture. Through this method, the cloud computer service software is decoupled from the cloud base, and the cloud computer service can be deployed on a public cloud base or a private cloud base, so as to make full use of public cloud resources or the existing private cloud resources of enterprises, give play to the advantages of abundant public cloud computing network resources and balanced geographical distribution, and improve the overall resource utilization rate.
[0061] In the above fusion scheduling method for decoupled cloud computers, the key technologies involved include:
[0062] First, decouple the desktop transmission protocol from the native cloud base.
[0063] Before performing service scheduling, it is necessary to solve the problem of the coupling between the native desktop protocol and the virtualization platform, so that the cloud computer has the ability to be decoupled and deployed on a third-party cloud base, and realize the connection and use of the cloud computer in the scenario where the cloud computer service is decoupled from the cloud base.
[0064] In this embodiment, the native desktop protocol is the native SPICE protocol. The SPICE protocol is based on the remote connection service published by the cloud Host OS. The Spice Server is implemented in libspice, which is a dynamic link library called by QEMU; its feature is that it does not depend on the network state inside the cloud computer virtual machine. After the client connects successfully, it can see the startup process of the cloud computer virtual machine operating system; the remote connection service of the SPICE protocol is implemented in the cloud base and does not support using this protocol on other cloud bases.
[0065] The service link establishment process based on the native SPICE protocol includes: the client establishes a link with the host where the virtual machine is located through the protocol. Specifically, the link establishment process includes the following steps:
[0066] Step S1, the client carries the IP and port listened by the tunnel (port unification) process of the host where the virtual machine is located, as well as relevant authentication and verification information, and applies to the access gateway to create a service link.
[0067] Step S2, after the access gateway successfully authenticates, it establishes a link with the tunnel (port unification) process of the target host, completes the creation of the service link, and maintains the link identifier (Identity Document, ID): including external (client link socket) and internal (socket information of the host link).
[0068] Step S3, after the client sends a link establishment request of the tunnel protocol (carrying the port information of the virtual machine) to the gateway, the gateway queries the routing table and forwards the message to the host tunnel process.
[0069] Step S4, the host tunnel process parses the virtual machine port information and establishes links with each channel of the RAP Server to complete the session establishment.
[0070] Figure 4 It is a schematic diagram of the service flow based on the native SPICE protocol according to an embodiment of the present invention. Figure 5 It is a schematic diagram of the service flow based on the decoupled desktop protocol according to an embodiment of the present invention. As Figure 4 and 5 shown, when the native SPICE protocol is not decoupled, the service flow needs to flow into the access gateway through the RAP Server and tunnel, while the decoupled service flow flows into the access gateway through the OVS distributed switch, that is, the decoupling of the cloud computer service and the cloud base. The decoupling of the desktop transmission protocol and the cloud base solves the problem of the coupling between the native SPICE protocol and the virtualization platform, has the ability to be decoupled and deployed on a third-party cloud base, and realizes the decoupled connection and use of the cloud computer. It shields the wide heterogeneity between different cloud bases, enables the cloud computer service to be flexibly deployed on cloud bases of different manufacturers, reconstructs the protocol, and supports the release of remote connection services based on cloud computer virtual machines:
[0071] In the decoupling of the desktop transmission protocol and the heterogeneous cloud base, the following protocol requirements exist:
[0072] 1) Cloud base adaptation: The protocol is decoupled from the cloud base and can be deployed on self-developed cloud bases and third-party cloud bases; for Windows virtual machines, no cloud base adaptation is required; for Linux virtual machines, adaptation needs to be performed according to the graphics card provided by the specific cloud base for the cloud computer virtual machine.
[0073] 2) Virtual machine operating system adaptation: Adaptation needs to be performed according to the specific operating system.
[0074] Figure 6It is a schematic diagram of the decoupling process of the desktop transmission protocol and the cloud base according to an embodiment of the present invention. As Figure 6 shown, the process includes the following steps:
[0075] Step S601, apply to create a service link.
[0076] Specifically, the client applies to the access gateway to create a service link with at least one of the following information: the IP information listened by the virtual machine port unification process, the port information, and the relevant authentication and verification information. Among them, both the IP information and the port information are the IP information and port information of the target desktop virtualization, and the authentication and verification information includes the verification information for the user to log in to the cloud computer.
[0077] Step S602, access gateway authentication.
[0078] Step S603, if the access gateway authentication is successful, establish a link with the virtual port unification process.
[0079] Step S604, the link establishment is successful.
[0080] Specifically, the virtual machine port unification process establishes a link to each channel port of the ICE Server (i.e., Figure 6 the protocol process therein) (i.e., the protocol process link establishment request), and the link establishment is successful.
[0081] Step S605, maintain the link ID.
[0082] Step S606, query the routing table from the access gateway and send the message to the internal protocol process of the target desktop virtual machine.
[0083] Specifically, after the Customer Access Gateway (CAG) authentication is successful, it establishes a link to the target desktop virtual machine port unification process (virtual machine port unification process link establishment request), completes the creation of the service link between the client and the access gateway, and maintains the link ID well: including external (client link socket) and internal (socket information of the link with the host).
[0084] Step S607, the client sends the tunnel protocol.
[0085] Step S608, the port unification process establishes a link to the protocol process;
[0086] Specifically, the client sends a tunnel protocol (carrying the port information of the ICE Server) link establishment request. After receiving the link establishment request, the access gateway queries the routing table and forwards the message to the target desktop virtual machine port unification process. The virtual machine port unification process establishes a link to each channel port of the ICE Server, and completes the creation of the service link between the access gateway and the target desktop virtual machine.
[0087] Step S609, completing the service link establishment between the client and the target desktop virtual machine.
[0088] Specifically, the client completes the business link establishment with the internal protocol components of the virtual machine. During the entire link establishment process, there is no need to interact with the underlying virtualized computing nodes (host), thus achieving decoupling of the cloud base.
[0089] 2. Decouple the cloud computer business from the native cloud base.
[0090] The cloud computer business is decoupled from the native cloud base. That is, under the full decoupling of software and hardware, the cloud computer business is independently deployed as an application on a third-party cloud base, realizing the full decoupling deployment of the cloud computer business, the cloud base, and the hardware.
[0091] like Figure 7 As shown, to realize the interface between cloud computer business and heterogeneous cloud base, cloud base docking adaptation is required, that is, a cloud platform interface adaptation layer needs to be provided. The interface adaptation layer shields the interface differences between different cloud bases and provides a unified management interface service for upper-level business management.
[0092] Figure 8 is a schematic diagram of the decoupling and adaptation process of the cloud computer service and the native cloud base according to an embodiment of the present invention, such as Figure 8 As shown, the process includes: the cloud computer business management module initiates a resource application, operation and maintenance or scheduling request to the interface adapter cluster in the cloud base interface adaptation layer. The interface adapter cluster schedules VMware or mobile cloud according to the cloud platform type based on the received resource application, operation and maintenance or scheduling request, and then the interface layer returns the processing result.
[0093] Figure 9 is a schematic diagram of the decoupling and adaptation process of the cloud computer service and the native cloud base according to an embodiment of the present invention, such as Figure 9 As shown, the adaptation process includes the following steps:
[0094] Step S901, the user initiates a resource access request from the user interface (UI) (i.e., the cloud computer service management module), such as creating a virtual machine, carrying parameters such as the virtual machine name, image ID, specification ID, network ID, etc.;
[0095] Step S902, the cloud computer business management module calls the standard REST northbound interface exposed by the interface adapter cluster;
[0096] Step S903: an abstract factory (IBaseFactory) is defined in the interface adapter cluster, and specific factory implementations are obtained according to different cloud environment types (DcType), such as OpenStackFactory / VMwareFactory, etc.;
[0097] Step S904: In the specific factory implementation of the interface adapter cluster, specific implementation classes for various resources are defined, such as CreateInstanceImpl, CreateImageImpl, CreateVolumeImpl, etc. The specific implementation classes are responsible for constructing the request parameters into a standard request body corresponding to the cloud environment type and calling the interfaces provided by different cloud environments according to the standard request body.
[0098] Step S905: After the interface adapter cluster obtains the request responses of different types of cloud environments, by converting the adapted response parameter information and the standard response parameter information, the interface return parameters of the obtained different types of cloud bases are respectively encapsulated to obtain corresponding standard northbound interfaces, shielding the differences between different cloud environments to complete the decoupling of the cloud computer service and the native cloud base.
[0099] For upper-layer services, after shielding the differences between different cloud environments, the obtained responses are undifferentiated, which can greatly improve the development efficiency.
[0100] In this embodiment, under the software and hardware full decoupling solution, the cloud computer service is decoupled from both the cloud base and the hardware. That is, there are scenarios where the cloud computer service is deployed on a public cloud base or a private cloud base, and the cloud computer service management needs to have the docking and management capabilities for heterogeneous cloud bases.
[0101] Third, after the cloud computer is decoupled, it is deployed on a third-party cloud base, and the tidal effect is used to fully utilize the computing power of the cloud resource pool, realizing shared scheduling and resource sharing within the resource pool.
[0102] Through the above two technologies, after the desktop protocol and the cloud computer service of the cloud computer are decoupled from the native cloud base, the cloud computer can be deployed on a third-party cloud base, realizing the reuse of cloud base resources with other services, and using the tidal effect between different services to perform tidal scheduling on the computing power of the cloud resource pool. For example, releasing the computing resources of the cloud computer during idle hours at night and starting the cloud host carrying other services; releasing the computing resources of the cloud host before the peak office period and restoring the cloud computer service, realizing the tidal use of multiple services, maximizing the utilization of computing power resources, and realizing multi-service resource sharing and time-sharing reuse within the resource pool.
[0103] Figure 10 It is a schematic diagram of a multi-service scheduling system based on a decoupled cloud computer according to an embodiment of the present invention. As Figure 10 shown, the multi-service scheduling system includes a unified scheduling module, a management node, business virtual machines, desktop virtual machines, a cloud base, etc. Among them, the multi-service tidal scheduling is mainly implemented by the unified scheduling module. The unified scheduling module includes modules such as scheduling policy management, scheduling execution, scheduling decision-making, and data collection and analysis. Among them:
[0104] 1) Policy Management Module: used for scheduling policy classification management, formulation of various policies, grouping management of policy application objects, etc., as well as configuration and formulation of information such as trigger conditions and execution actions of various policies;
[0105] 2) Scheduling Decision Module: used for making policy scheduling decisions according to the specified policies and the current state of virtual machines, generating scheduling actions, including: shutdown / start / sleep / wake up, etc.;
[0106] 3) Scheduling Execution Module: used to execute the policies of background intelligent scheduling. The scheduling execution module calls the interfaces provided by the service center according to the scheduling actions generated by the scheduling decision module, and sends the scheduling actions to the service center, and the service center calls the virtualization platform to complete the execution of the scheduling actions;
[0107] 4) Data Acquisition and Analysis Module: including data acquisition and intelligent analysis, used to collect the real-time usage of computing resources (CPU, memory, GPU, etc.) of hosts and virtual machines in each resource pool of the data center, and collect the real-time resource conditions of each process inside the virtual machine as the data source for scheduling analysis; combining the collected data and scheduling policies to provide data support for scheduling decisions.
[0108] The management node includes a desktop service management center and a virtualization management center, and is used for performance management, log management, and alarm management.
[0109] The service virtual machine includes a virtual machine agent, which is used for a host performance collection agent and a host task execution agent.
[0110] The desktop virtual machine includes a virtual machine agent and a protocol component, and is used for interacting with cloud computer users.
[0111] The embodiment of the present invention provides a decoupled cloud computer multi-service tidal scheduling method. In this method, the cloud computer decouples from the native cloud base through the above two-step operations of decoupling the desktop transmission protocol and decoupling the cloud computer service from the native cloud base. At this time, business resource scheduling can be performed on heterogeneous cloud bases. Figure 11 It is a flowchart of the implementation process of the decoupled cloud computer multi-service tidal scheduling according to the embodiment of the present invention, as Figure 11 shown, and this process includes the following steps:
[0112] Step S1101, the configuration management module configures the tidal scheduling policy and downloads the scheduling policy to the scheduling decision module.
[0113] Specifically, the administrator specifies the server virtual machine, desktop virtual machine task types (start / shutdown / sleep / wake up), execution period, effective time, execution object, whether there is a whitelist process, etc.
[0114] Step S1102: The scheduling decision module obtains the tidal scheduling policy configuration and generates a timed monitoring task according to the policy configuration.
[0115] Step S1103: The scheduling decision module determines whether there is a tidal scheduling policy. If so, it executes Step S1004; otherwise, the process ends.
[0116] Step S1104: The scheduling decision module determines whether it is within the tidal scheduling period. If so, it executes Step S1005; otherwise, the process ends.
[0117] Step S1105: The scheduling decision module determines whether a scheduling task has been generated. If so, it selects the corresponding scheduling task; otherwise, the process ends.
[0118] Specifically, the scheduling decision module periodically detects the CPU and memory resources of the host and virtual machines, the real-time situation of the processes inside the virtual machines, and the detailed configuration of the scheduling policy, and decides whether to generate scheduling tasks such as shutdown / sleep / start / wake-up, etc. When the scheduling decision module decides to generate a scheduling task, the scheduling execution module calls the third-party cloud base interface to complete scheduling tasks such as shutdown / sleep, migration, resource adjustment, start / wake-up, etc.
[0119] Specifically, for sleep / shutdown scheduling tasks, when the cloud computer user does not report keyboard and mouse events within N minutes, the system actively disconnects the connection; if the disconnection lasts for more than M minutes (i.e., the disconnection time exceeds the first threshold) and there are no whitelist processes inside the virtual machine, the scheduling decision module generates a shutdown / sleep scheduling task; where M and N are integers greater than zero.
[0120] For migration scheduling tasks, when the host resources reach the upper limit P% (i.e., the second threshold) of the policy configuration in X cycles, the scheduling decision module generates a migration scheduling task to migrate the virtual machine with the highest resource occupancy to the host with the lowest load to ensure the resources of other business virtual machines and cloud computer virtual machines; where X and P are integers greater than zero.
[0121] For resource adjustment scheduling tasks, the scheduling decision module periodically detects the computing resource usage on the host and the virtual machine resource usage. If the virtual machine resource utilization rate is high (i.e., the resource demand of the virtual machine is greater than the third threshold) and the host resources are relatively abundant, vertical scaling is required, and the scheduling decision module generates a dynamic adjustment scheduling task for computing resources.
[0122] For startup / wake-up scheduling tasks, such as the services carried by a virtual machine cluster, when the resource requirements reported by business virtual machines are high, horizontal scaling is required. The cloud computer needs to wake up in advance and actively start / wake up some virtual machines; dormant cloud computer virtual machines also need to be actively woken up before the user accesses the cloud computer. For example, when the duration of the virtual machine executing the sleep scheduling task meets the fourth threshold, the scheduling decision module generates a startup / wake-up scheduling task in this case.
[0123] The above embodiments of the present invention can be applied to the operator's public cloud to operate cloud computers and promote cloud computers in the ToB / C / H markets; they can also be deployed for multi-service integration within an enterprise, with the cloud computer provided as a cloud service on a private cloud.
[0124] Through the above embodiments of the present invention, compared with the non-decoupled cloud computer technical solution, in this embodiment, the cloud computer is no longer strongly bound to the cloud base, can be flexibly deployed on various cloud bases, can fully revitalize the enterprise's IaaS resources, and reduce the construction cost of the cloud computer. Based on the decoupled cloud computer, the integration of the cloud computer and the cloud bases of other services is realized. On this basis, multi-service scheduling realizes shared scheduling and resource sharing within the resource pool, enabling the computing power of the cloud resource pool to be fully utilized.
[0125] An embodiment of the present invention also provides a computer-readable storage medium, in which a computer program is stored. Wherein, the computer program is set to execute the steps in any one of the above method embodiments when running.
[0126] In an exemplary embodiment, the above computer-readable storage medium may include, but is not limited to: USB flash drive, read-only memory (ROM for short), random access memory (RAM for short), mobile hard disk, magnetic disk, or optical disc, and other various media that can store computer programs.
[0127] An embodiment of the present invention also provides an electronic device, including a memory and a processor. A computer program is stored in the memory, and the processor is set to run the computer program to execute the steps in any one of the above method embodiments.
[0128] In an exemplary embodiment, the above electronic device may further include a transmission device and input / output devices. Wherein, the transmission device is connected to the above processor, and the input / output devices are connected to the above processor.
[0129] The specific examples in this embodiment may refer to the examples described in the above embodiments and exemplary embodiments, and will not be repeated here.
[0130] Obviously, those skilled in the art should understand that the various modules or steps of the present invention described above can be implemented by a general-purpose computing device. They can be concentrated on a single computing device or distributed on a network composed of multiple computing devices. They can be implemented by program codes executable by the computing device. Thus, they can be stored in a storage device and executed by the computing device. And in some cases, the steps shown or described can be executed in a sequence different from here, or they can be separately fabricated into individual integrated circuit modules, or multiple modules or steps among them can be fabricated into a single integrated circuit module for implementation. In this way, the present invention is not limited to any specific combination of hardware and software.
[0131] The above are only the preferred embodiments of the present invention and are not used to limit the present invention. For those skilled in the art, the present invention can have various changes and modifications. Any modification, equivalent replacement, improvement, etc. made within the principle of the present invention shall be included within the protection scope of the present invention.
Claims
1. A method for business resource scheduling, characterized in that, Applied to cloud computers, including: Decouple the cloud computer from its corresponding native cloud base, and when the decoupling of the cloud computer and the native cloud base is completed, schedule the business resources of the heterogeneous cloud base, where the native cloud base and the heterogeneous cloud base are in a heterogeneous relationship.
2. The method according to claim 1, characterized in that, Decoupling the cloud computer from its corresponding native cloud base includes: Decouple the desktop protocol of the cloud computer from the native cloud base; Decouple the cloud computer business of the cloud computer from the native cloud base.
3. The method according to claim 2, characterized in that, Decoupling the desktop protocol of the cloud computer from the native cloud base includes: According to the virtual machine port unification process connection establishment request and the protocol process connection establishment request sent by the client, establish a service link between the client and the target desktop virtual machine to decouple the desktop protocol from the native cloud base.
4. The method according to claim 3, wherein Establishing the service link between the client and the target desktop virtual machine includes: According to the virtual machine port unification process connection establishment request, establish a service link between the client and the access gateway in the cloud computer, where the virtual machine port unification process connection establishment request carries at least one of the following information: the address of the target desktop virtual machine, the port of the target desktop virtual machine, and the verification information for the user to log in to the cloud computer; According to the protocol process connection establishment request, establish a service link between the access gateway and the target desktop virtual machine.
5. The method according to claim 2, wherein Decoupling the cloud computer business of the cloud computer from the native cloud base includes: Based on the resource access request initiated by the cloud computer business management module in the cloud computer, generate a cloud base standard request body according to the request parameters carried in the resource access request; Through the cloud base standard request body, request the interfaces of different types of cloud bases, and encapsulate the interface return parameters obtained from the different types of cloud bases respectively to obtain the corresponding standard northbound interfaces to complete the decoupling of the cloud computer business and the native cloud base.
6. The method according to claim 5, wherein Wherein, The resource access request carries at least one of the following parameters: the name of the target server virtual machine, the image identifier, the specification identifier, and the network identifier.
7. The method according to claim 1, wherein Scheduling the business resources of the heterogeneous cloud base includes: Periodically detect the load situation in the heterogeneous cloud base and the running situation of the business in the virtual machine, and generate corresponding scheduling tasks when the scheduling policy activation conditions are met; According to the corresponding scheduling tasks, call multiple interfaces of the heterogeneous cloud base to adjust the business resources allocated to different types of services.
8. The method according to claim 7, wherein Wherein, The virtual machine includes at least one of the following types: server virtual machine, desktop virtual machine, and different types of virtual machines correspond to different types of services.
9. The method according to claim 7, characterized in that, Wherein, The load situation in the heterogeneous cloud base includes at least one of the following: the memory resource usage of the virtual machine, the host memory resource usage of the heterogeneous cloud base; the running situation of the business in the virtual machine includes at least one of the following: the real-time situation of the internal processes of the target virtual machine, the detailed configuration of the scheduling policy.
10. The method according to claim 7, characterized in that, Before generating the corresponding scheduling tasks when the scheduling policy activation conditions are met, the method further includes: Configure the virtual machine with at least one of the following parameters: task type, execution period, effective time, execution object, whether there is a whitelist process; where the task type includes at least one of the following: start, shutdown, hibernate, wake up.
11. The method according to claim 7, characterized in that, Generate a corresponding scheduling task when the scheduling policy takes effect, including: Generate a shutdown scheduling task or a hibernate scheduling task when the disconnection time between the virtual machine and the heterogeneous cloud base exceeds a first threshold and there is no whitelist process inside the virtual machine; Generate a migration scheduling task when the host resources of the heterogeneous cloud computer reach a second threshold for multiple consecutive cycles; Generate a resource adjustment scheduling task when the resource utilization rate of the host is lower than that of the virtual machine; Generate a start scheduling task when the resource requirement of the virtual machine is greater than a third threshold; Generate a wake-up scheduling task when the execution duration of the hibernate scheduling task of the virtual machine meets a fourth threshold.
12. A computer-readable storage medium, characterized in that, A computer program is stored in the computer-readable storage medium, where the computer program, when executed by a processor, implements the steps of the method described in any one of claims 1 to 11.
13. An electronic device, comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, The processor, when executing the computer program, implements the steps of the method described in any one of claims 1 to 11.