Method, system, electronic device and storage medium for creating virtual machine instance
By receiving resource scheduling requests and acquiring resources from a shared physical resource pool, the problems of high virtual machine instance creation costs and low resource utilization are solved, achieving efficient resource management and optimization.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- ALIBABA CLOUD COMPUTING CO LTD
- Filing Date
- 2024-12-24
- Publication Date
- 2026-06-26
AI Technical Summary
Existing technologies suffer from high creation costs and low resource utilization when creating virtual machine instances.
By receiving resource scheduling requests from the console, the system prepares resources for the virtual machine instance using the target physical resource pool, and obtains the target physical resources from the shared physical resource pool to create the virtual machine instance.
It enables dynamic resource scheduling and management, improves resource utilization, and reduces hardware procurement and operation and maintenance costs.
Smart Images

Figure CN122285169A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of cloud computing technology, and more specifically, to a method, system, electronic device, and storage medium for creating virtual machine instances. Background Technology
[0002] The rapid development of cloud computing and the rise of virtualization technology have enabled cloud service providers to pool physical resources through virtualization. By flexibly adjusting virtual machines (VMs), they can provide high-performance, low-cost, and highly available resources for different service scenarios. After cloud resource pooling, the types and specifications of resources required by different service scenarios vary significantly. To meet the diverse needs of different service scenarios, related technologies typically provide multiple resource pools to support their resource requirements. When creating a virtual machine instance, resources matching the user's needs must be found from multiple resource pools. However, the construction, management, and maintenance costs of multiple resource pools, as well as resource utilization, present significant challenges, further leading to high creation costs and low resource utilization for virtual machine instances.
[0003] There is currently no effective solution to the above problems. Summary of the Invention
[0004] This application provides a method, system, electronic device, and storage medium for creating virtual machine instances, in order to at least solve the technical problems of high creation cost and low resource utilization in the related art when creating virtual machine instances.
[0005] According to one aspect of the embodiments of this application, a method for creating a virtual machine instance is provided, comprising: receiving a resource scheduling request from a console, wherein the resource scheduling request is used to request a target scheduling system to prepare resources for a virtual machine instance to be created for a target scenario; preparing resources for the virtual machine instance based on the resource scheduling request; in response to the completion of resource preparation, obtaining target physical resources to be used by the virtual machine instance from a target physical resource pool, wherein the target physical resource pool is a shared physical resource pool when creating different virtual machine instances for different application scenarios; and creating a virtual machine instance using the target physical resources.
[0006] According to another aspect of the embodiments of this application, a method for creating a virtual machine instance is also provided, comprising: responding to a virtual machine instance creation operation performed by a user on a console, generating a resource scheduling request; and sending the resource scheduling request to a target scheduling system; wherein the resource scheduling request is used to request the target scheduling system to prepare resources for the virtual machine instance to be created for a target scenario, and the target scheduling system is used to obtain the target physical resources to be used by the virtual machine instance from the target physical resource pool when the resource preparation is completed, and to create the virtual machine instance using the target physical resources, wherein the target physical resource pool is a physical resource pool shared when creating different virtual machine instances for different application scenarios.
[0007] According to another aspect of the embodiments of this application, a method for creating a virtual machine instance is also provided, comprising: receiving a resource scheduling request from a console, wherein the resource scheduling request is used to request a target scheduling system to prepare resources for a web application virtual machine instance to be created for a web application scenario; preparing resources for the web application virtual machine instance based on the resource scheduling request; in response to the completion of resource preparation, obtaining web application physical resources to be used by the web application virtual machine instance from a target physical resource pool, wherein the target physical resource pool is a shared physical resource pool when creating different virtual machine instances for different application scenarios; and creating a web application virtual machine instance using the web application physical resources.
[0008] According to another aspect of the embodiments of this application, a system for creating virtual machine instances is also provided, including: a console, a target scheduling system, and a target physical resource pool; the console is used to respond to a virtual machine instance creation operation performed by a user, generate a resource scheduling request, and send the resource scheduling request to the target scheduling system, wherein the resource scheduling request is used to request the target scheduling system to prepare resources for the virtual machine instance to be created for a target scenario; the target scheduling system is used to receive the resource scheduling request from the console, prepare resources for the virtual machine instance based on the resource scheduling request, and in response to the completion of resource preparation, obtain the target physical resources to be used by the virtual machine instance from the target physical resource pool, and create the virtual machine instance using the target physical resources, wherein the target physical resource pool is a shared physical resource pool when creating different virtual machine instances for different application scenarios.
[0009] According to another aspect of the embodiments of this application, an electronic device is also provided, including: a memory storing an executable program; and a processor for running the program, wherein the program executes the methods in various embodiments of this application when it runs.
[0010] According to another aspect of the embodiments of this application, a computer-readable storage medium is also provided, the computer-readable storage medium including a stored executable program, wherein, when the executable program is running, it controls the device where the computer-readable storage medium is located to perform the methods of various embodiments of this application.
[0011] According to another aspect of the embodiments of this application, a computer program product is also provided, including a computer program that, when executed by a processor, implements the methods of various embodiments of this application.
[0012] According to another aspect of the embodiments of this application, a computer program product is also provided, including a non-volatile computer-readable storage medium storing a computer program that, when executed by a processor, implements the methods in various embodiments of this application.
[0013] According to another aspect of the embodiments of this application, a computer program is also provided, which, when executed by a processor, implements the methods of the various embodiments of this application.
[0014] In this embodiment, a resource scheduling request is received from the console to request the target scheduling system to prepare resources for a virtual machine instance to be created for a target scenario. Once resource preparation for the virtual machine instance is complete based on the resource scheduling request, the target physical resources to be used by the virtual machine instance are obtained from the target physical resource pool. This target physical resource pool is a shared physical resource pool used when creating different virtual machine instances for different application scenarios. Finally, the virtual machine instance is created using the target physical resources. This achieves dynamic resource scheduling and management, allowing resources to be dynamically allocated according to different demand scenarios, improving resource utilization and system performance. The method for creating virtual machine instances in this embodiment, by sharing a physical resource pool, can better manage and optimize resource usage, achieving reasonable allocation of target physical resources. This reduces resource waste, improves resource utilization, and effectively reduces the number of resource pool deployments, lowering hardware procurement and operation and maintenance costs. This solves the technical problems of high creation costs and low resource utilization in related technologies when creating virtual machine instances.
[0015] It is worth noting that the general description above and the detailed description that follow are merely for illustrative purposes and do not constitute a limitation on this application. Attached Figure Description
[0016] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:
[0017] Figure 1 This is a hardware structure block diagram of a computer terminal (or mobile device) for implementing a method for creating a virtual machine instance according to an embodiment of this application;
[0018] Figure 2 This is a structural block diagram of a computing environment according to an embodiment of this application;
[0019] Figure 3 This is a structural block diagram of a service mesh according to an embodiment of this application;
[0020] Figure 4 This is a flowchart of a method for creating a virtual machine instance according to an embodiment of this application;
[0021] Figure 5 This is a schematic diagram of a target physical resource according to an embodiment of this application;
[0022] Figure 6 This is a schematic diagram of another target physical resource according to an embodiment of this application;
[0023] Figure 7 This is a schematic diagram of a physical resource pool based on related technologies;
[0024] Figure 8 This is a schematic diagram of a physical resource pool according to an embodiment of this application;
[0025] Figure 9 This is a schematic diagram of a method for creating a virtual machine instance according to an embodiment of this application;
[0026] Figure 10 This is a flowchart of another method for creating a virtual machine instance according to an embodiment of this application;
[0027] Figure 11 This is a flowchart of another method for creating a virtual machine instance according to an embodiment of this application;
[0028] Figure 12 This is a structural block diagram of an apparatus for creating a virtual machine instance according to an embodiment of this application;
[0029] Figure 13 This is a structural block diagram of another apparatus for creating a virtual machine instance according to an embodiment of this application;
[0030] Figure 14 This is a structural block diagram of another apparatus for creating a virtual machine instance according to an embodiment of this application;
[0031] Figure 15 This is a structural block diagram of an electronic device according to an embodiment of this application. Detailed Implementation
[0032] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.
[0033] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0034] According to an embodiment of this application, a method for creating a virtual machine instance is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.
[0035] The methods and embodiments provided in this application can be executed on mobile terminals, computer terminals, or similar computing devices. Figure 1 A hardware block diagram of a computer terminal (or mobile device) for implementing a method for creating virtual machine instances is shown. Figure 1As shown, the computer terminal 10 (or mobile device) may include one or more processors 102 (shown as 102a, 102b, ..., 102n in the figure) 102 (processor 102 may include, but is not limited to, a microprocessor (MCU) or a programmable gate array (FPGA), etc.), a memory 104 for storing data, and a transmission device 106 for communication functions. In addition, it may include: a display, an input / output interface (I / O interface), a Universal Serial Bus (USB) port (which may be included as one of the ports of a bus), a network interface, a power supply, and / or a camera. Those skilled in the art will understand that... Figure 1 The structure shown is for illustrative purposes only and does not limit the structure of the aforementioned electronic device. For example, computer terminal 10 may also include... Figure 1 The more or fewer components shown, or having the same Figure 1 The different configurations shown.
[0036] It should be noted that the aforementioned one or more processors 102 and / or other data processing circuits are generally referred to herein as "data processing circuits". These data processing circuits may be embodied, in whole or in part, in software, hardware, firmware, or any other combination thereof. Furthermore, the data processing circuits may be a single, independent processing module, or may be integrated, in whole or in part, into any other element within the computer terminal 10 (or mobile device). As involved in the embodiments of this application, the data processing circuits serve as a processor control mechanism (e.g., selection of a variable resistor termination path connected to an interface).
[0037] The memory 104 can be used to store software programs and modules of application software, such as the program instructions / data storage device corresponding to the method in the embodiments of this application. The processor 102 executes various functional applications and data processing by running the software programs and modules stored in the memory 104, thereby implementing the method in the above embodiments. The memory 104 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may further include memory remotely located relative to the processor 102, and these remote memories can be connected to the computer terminal 10 via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
[0038] The transmission device 106 is used to receive or send data via a network. Specific examples of the network described above may include a wireless network provided by the communication provider of the computer terminal 10. In one example, the transmission device 106 includes a Network Interface Controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In another example, the transmission device 106 may be a Radio Frequency (RF) module, used for wireless communication with the Internet.
[0039] The display can be, for example, a touchscreen liquid crystal display (LCD), which allows the user to interact with the user interface of the computer terminal 10 (or mobile device).
[0040] Figure 1 The hardware structure block diagram shown can serve not only as an exemplary block diagram of the aforementioned computer terminal 10 (or mobile device), but also as an exemplary block diagram of the aforementioned server. In one optional embodiment, Figure 2 The use of the above is illustrated in a block diagram. Figure 1 The computer terminal 10 (or mobile device) shown is an embodiment of a computing node in computing environment 201. Figure 2 A block diagram of a computing environment is shown, such as Figure 2 As shown, computing environment 201 includes multiple computing nodes (such as servers) running on a distributed network (shown as 210-1, 210-2, ... in the diagram). Each computing node contains local processing and memory resources, and end user 202 can remotely run applications or store data within computing environment 201. Applications can be provided as multiple services 220-1, 220-2, 220-3, and 220-4 within computing environment 201, representing services "A", "D", "E", and "H", respectively.
[0041] End user 202 can provide and access services through a web browser or other software application on a client. In some embodiments, the provisioning and / or requests of end user 202 can be provided to ingress gateway 230. Ingress gateway 230 may include a corresponding agent to handle the provisioning and / or requests for services (one or more services provided in computing environment 201).
[0042] The services are provided or deployed based on various virtualization technologies supported by the computing environment 201. In some embodiments, services may be provided based on virtual machine (VM)-based virtualization, container-based virtualization, and / or similar methods. VM-based virtualization can simulate a real computer by initializing a virtual machine, executing programs and applications without directly accessing any actual hardware resources. While the machine is virtualized by a virtual machine, container-based virtualization can launch containers to virtualize an entire operating system (OS), allowing multiple workloads to run on a single OS instance.
[0043] In one embodiment based on container virtualization, several containers of a service can be assembled into a Pod (e.g., a Kubernetes Pod). For example, such as Figure 2 As shown, service 220-2 can be equipped with one or more Pods 240-1, 240-2, ..., 240-N (collectively referred to as Pods). A Pod can include a proxy 245 and one or more containers 242-1, 242-2, ..., 242-M (collectively referred to as containers). One or more containers within a Pod handle requests related to one or more corresponding functions of the service. Proxy 245 typically controls service-related network functions such as routing and load balancing. Other services can also be equipped with similar Pods.
[0044] During operation, executing a user request from end user 202 may require invoking one or more services in computing environment 201, and executing one or more functions of one service may require invoking one or more functions of another service. For example... Figure 2 As shown, service "A" 220-1 receives user requests from terminal user 202 from ingress gateway 230. Service "A" 220-1 can call service "D" 220-2, and service "D" 220-2 can request service "E" 220-3 to perform one or more functions.
[0045] The aforementioned computing environment can be a cloud computing environment, where resource allocation is managed by cloud services, allowing functionality development without needing to consider implementation, adjustment, or server scaling. This computing environment allows developers to execute event-responsive code without building or maintaining complex infrastructure. Services can be partitioned into a set of functions that can automatically and independently scale, rather than scaling a single hardware device to handle potential loads.
[0046] In another alternative embodiment, Figure 3 The use of the above is illustrated in a block diagram. Figure 1 The computer terminal 10 (or mobile device) shown is an embodiment of a service mesh. Figure 3A structural block diagram of a service mesh is shown, such as Figure 3 As shown, the service mesh 300 is mainly used to facilitate secure and reliable communication between multiple microservices. Microservices refer to the decomposition of an application into multiple smaller services or instances, which are distributed across different clusters / machines.
[0047] like Figure 3 As shown, a microservice may include application service instance A and application service instance B, which together form the functional application layer of service mesh 300. In one implementation, application service instance A runs as a container / process 308 on machine / workload container group 314 (Pod), and application service instance B runs as a container / process 310 on machine / workload container group 316 (Pod).
[0048] In one implementation, application service instance A can be a product query service, and application service instance B can be a product order placement service.
[0049] like Figure 3 As shown, application service instance A and grid agent (sidecar) 303 coexist in machine / workload container group 314, and application service instance B and grid agent 305 coexist in machine / workload container group 316. Grid agents 303 and 305 form the data plane layer of service mesh 300. Grid agents 303 and 305 run as containers / processes 304 and 306 respectively, and can receive requests 312 for product query services. Grid agent 303 and application service instance A can communicate bidirectionally, and grid agent 305 and application service instance B can also communicate bidirectionally. Furthermore, grid agents 303 and 305 can also communicate bidirectionally with each other.
[0050] In one implementation, traffic from application service instance A is routed to the appropriate destination via mesh proxy 303, and network traffic from application service instance B is routed to the appropriate destination via mesh proxy 305. It should be noted that the network traffic mentioned here includes, but is not limited to, Hypertext Transfer Protocol (HTTP), Representational State Transfer (REST), high-performance, general-purpose open-source frameworks (Google Remote Procedure Call, gRPC), and open-source in-memory data structure storage systems (Redis).
[0051] In one implementation, the functionality of the extended data plane layer can be achieved by writing custom filters for the proxy (Envoy) in service mesh 300. The service mesh proxy configuration can enable the service mesh to correctly proxy service traffic, achieving service interoperability and service governance. Mesh proxy 303 and mesh proxy 305 can be configured to perform at least one of the following functions: service discovery, health checking, routing, load balancing, authentication and authorization, and observability.
[0052] like Figure 3 As shown, the service mesh 300 also includes a control plane layer. This control plane layer can consist of a set of services running in a dedicated namespace, hosted by a managed control plane component 301 within machine / workload container groups (machine / Pods) 302. Figure 3 As shown, the managed control plane component 301 communicates bidirectionally with grid agents 303 and 305. The managed control plane component 301 is configured to perform various control and management functions. For example, it receives telemetry data transmitted from grid agents 303 and 305 and can further aggregate this telemetry data. In addition to these services, the managed control plane component 301 can also provide a user-facing application programming interface (API) to facilitate manipulation of network behavior and the provision of configuration data to grid agents 303 and 305.
[0053] Under the aforementioned operating environment, this application provides the following: Figure 4 The method for creating a virtual machine instance is shown. Figure 4 This is a flowchart of a method for creating a virtual machine instance according to an embodiment of this application, such as... Figure 4 As shown, the method includes the following steps:
[0054] Step S41: Receive a resource scheduling request from the console, wherein the resource scheduling request is used to request the target scheduling system to prepare resources for the virtual machine instance to be created for the target scenario;
[0055] Step S42: Based on the resource scheduling request, prepare resources for the virtual machine instance;
[0056] Step S43: In response to the completion of resource preparation, obtain the target physical resources to be used by the virtual machine instance from the target physical resource pool, wherein the target physical resource pool is a shared physical resource pool when creating different virtual machine instances for different application scenarios.
[0057] Step S44: Create a virtual machine instance using the target physical resources.
[0058] The aforementioned console can be the management console for a cloud computing platform. Users can submit resource scheduling requests and create and manage cloud service resources such as virtual machine instances through the console interface. The console typically provides a graphical user interface, allowing users to intuitively operate and monitor cloud resources without needing to understand the underlying technical details. For example, the console can be a text-based command-line interface, where users can operate by entering commands, such as using a terminal in a Linux system for system management and application control. In cloud computing and web application management, the console can be a web interface, allowing users to manage cloud resources such as creating virtual machines, managing storage, and configuring networks. In the video game industry, a game console can be a dedicated device such as a game console for users to enjoy gaming entertainment.
[0059] In response to the user's virtual machine instance creation operation in the console, a resource scheduling request is generated and then sent to the target scheduling system. This resource scheduling request requests the target scheduling system to prepare resources for the virtual machine instance to be created for the target scenario. The request may include target scenario information for the virtual machine instance, such as the required Central Processing Unit (CPU) type, number of cores, memory size, storage type, and network configuration parameters. These parameters can be determined based on the virtual machine specifications and application scenario selected by the user on the console. Upon receiving the resource scheduling request, the target scheduling system can search for and prepare resources in the target physical resource pool according to the resource requirements specified in the request.
[0060] For example, during the generation of a resource scheduling request, the user can select the type of virtual machine instance and set various configuration parameters on the console, such as CPU model, number of cores, memory size, storage type, and network configuration. The user can also specify advanced options, such as security group configuration, image selection, and region selection. The console can further verify the reasonableness of the user-input configuration parameters, such as whether the memory size exceeds the selectable range and whether the network configuration is compatible with the selected region, thereby ensuring that the resource scheduling request can be processed correctly. The console encapsulates the verified configuration parameters into a resource scheduling request, which may contain detailed configurations of the virtual machine instance requested by the user, as well as other information related to the creation operation, such as the user's identity and request priority. The console sends the resource scheduling request to the target scheduling system through an internal Application Programming Interface (API) or message queue. Upon receiving the resource scheduling request, the target scheduling system begins processing it, and the console can continuously display the request status of the resource scheduling request.
[0061] It should be noted that the format and content of resource scheduling requests may vary depending on the specific implementation of the cloud service provider, and this application embodiment does not impose any restrictions. For example, in a cloud computing scenario, the console will convert the virtual machine instance configuration parameters requested by the user into a format that the target scheduling system can recognize, such as the instance specification "ecs.large.web". Then, it will send the resource scheduling request to the target scheduling system through an internal service interface. The target scheduling system will search for and allocate resources in a unified physical resource pool based on the resource requirements in the resource scheduling request, and finally create a virtual machine instance that meets the user's needs.
[0062] The target scenarios mentioned above include, but are not limited to: web application scenarios, high-performance computing (HPC) scenarios, database application scenarios, artificial intelligence and machine learning scenarios, containerized application scenarios, gaming and multimedia scenarios, edge computing scenarios, security and compliance scenarios, and big data processing scenarios.
[0063] Specifically, in web application scenarios, for websites and application services requiring fast response and high concurrency, the virtual machine instances to be created typically need balanced computing, network, and storage resources, as well as sufficient memory to support the generation and caching of dynamic web page content. In HPC scenarios, suitable for computationally intensive applications such as scientific computing, engineering simulation, weather forecasting, gene sequencing, and image rendering, the virtual machine instances to be created need to have high-performance CPUs, large amounts of memory, high-speed network bandwidth, and low-latency storage systems. In database application scenarios, including small and medium-sized database systems, data warehouses, data processing, and analysis, there are high requirements for the balance and stability of computing and storage resources, as well as high-performance input / output capabilities to meet data read and write needs. In artificial intelligence and machine learning scenarios, involving complex computational tasks such as deep learning, natural language processing, image recognition, and speech recognition, specific acceleration hardware is needed to support high computational demands, while also requiring high levels of memory and network bandwidth. In containerized application scenarios, the widespread application of container technology necessitates the creation of containerized virtual machine instances, thus requiring special considerations for resource isolation, scalability, and management efficiency. In gaming and multimedia scenarios, including but not limited to online games, video streaming, and streaming services, high demands are placed on CPU frequency, graphics processing power, network latency, and bandwidth to ensure a smooth user experience. In edge computing scenarios, suitable for applications such as the Internet of Things (IoT), smart devices, and edge data analytics, edge computing virtual machine instances typically need to be geographically close to the data source, with strict requirements on network latency and bandwidth, and may also have specific requirements for computing and storage resources. In security and compliance scenarios, such as financial transactions and medical data processing, strict requirements for data security and privacy protection necessitate the creation of virtual machine instances with dedicated encryption hardware or isolated physical environments. In big data processing scenarios, involving applications such as data mining, batch processing, and real-time data analysis, the virtual machine instances to be created need to have large-scale data storage and processing capabilities, and the demand for computing and storage resources may vary depending on the amount of data and the complexity of the processing tasks.
[0064] It's worth noting that resource scheduling requests can request corresponding hardware resources and software environments from the target scheduling system based on the specific needs of the different scenarios described above. Upon receiving a resource scheduling request, the target scheduling system will determine a suitable resource allocation scheme based on resource availability, cost, performance, and other strategies, thereby providing the necessary underlying support for the creation of the user's virtual machine instance.
[0065] Based on resource scheduling requests, resources are prepared for virtual machine instances. After resource preparation is complete, the target physical resources to be used by the virtual machine instance are obtained from the target physical resource pool. The target physical resource pool is a shared physical resource pool used when creating different virtual machine instances for different application scenarios, such as the underlying physical resource pool of Elastic Cloud Server (ECS). The aforementioned target physical resources are the underlying hardware resources allocated to a specific virtual machine instance from the target physical resource pool. Target physical resources include, but are not limited to, CPU, memory, storage, network resources, acceleration hardware, etc. The virtual machine instance can obtain CPU resources of a specific model, frequency, and number of cores from the target physical resource pool to meet computing needs. According to the configuration requirements of the virtual machine instance, corresponding memory resources, such as Double Data Rate Synchronous Dynamic Random Access Memory (DDR), are allocated from the target physical resource pool to ensure that the virtual machine instance has sufficient memory space to run applications. The storage resources required by the virtual machine instance can be solid state drives (SSDs), hard disk drives (HDDs), or special storage solutions, such as persistent memory. The network resources required for virtual machine instances include, but are not limited to, bandwidth, network interface card (NIC) type, and network architecture, to ensure communication between virtual machine instances and access to external networks. Acceleration hardware required for virtual machine instances may be necessary in certain scenarios, such as HPC or artificial intelligence applications, including graphics processing units (GPUs), field-programmable gate arrays (FPGAs), or other types of accelerators.
[0066] The physical resources in the aforementioned target physical resource pool can be managed uniformly. Different types of virtual machine instances can share the same physical resources. Through virtualization technologies, such as CPU scaling and memory frequency scaling, the performance of physical resources can be adjusted to adapt to the specific needs of different application scenarios. For example, a virtual machine instance for a gaming scenario requires high-frequency CPU and high-performance network resources, while a database instance focuses more on I / O and memory bandwidth. By obtaining target physical resources from a unified physical resource pool and performing customized configurations, cloud service providers can provide flexible, efficient, and economical resource supply to meet diverse task requirements.
[0067] After acquiring the target physical resources, a virtual machine instance is created using those resources. For example, a virtual computing environment is created on the target physical resources using virtualization technology. The virtualization layer abstracts hardware resources, allowing the operating system and applications to believe they can run on dedicated hardware, while actually sharing physical resources with other virtual machines. Based on the configuration requirements of the virtual machine instance, CPU, memory, storage, and network resources from the target physical resources are allocated to the new virtual machine instance. For example, if the virtual machine instance requires a 4-core CPU, 8GB of memory, and 100GB of SSD storage, the virtualization layer will allocate the corresponding resources from the physical resource pool, ensuring that these resources are isolated and dedicated to the virtual machine instance. Virtualization technology allows for the emulation of hardware devices such as virtual CPUs, virtual memory, virtual disks, and virtual network interface cards. The hardware configuration of the virtual machine instance is set according to requirements, ensuring that the virtual machine instance can see and use the allocated resources. After allocating hardware resources, the required operating system can be installed on the virtual machine instance. After installing the operating system, the corresponding software stack, such as a web server, database, and applications, can be configured according to user needs. In addition, you can assign IP addresses to virtual machine instances, set up virtual network interfaces, and connect them to the cloud platform's virtual network, including configuring security group rules and firewall settings, so that virtual machine instances can communicate with other external or internal resources.
[0068] After a virtual machine instance is created, the cloud platform can continuously monitor its resource usage and performance. Based on the monitoring data, resource allocation can be optimized, for example, dynamically scaling resources when the load increases or reclaiming resources when the load decreases. Once the virtual machine instance is created, users can access and manage it through the control panel or API provided by the cloud platform, including but not limited to operations such as starting, stopping, restarting, scaling up, or scaling down.
[0069] The target physical resources obtained from a unified physical resource pool are transformed into virtual machine instances. These virtual machine instances can be flexibly managed and used in the cloud environment to meet users' needs in computing, storage, and networking. This makes resource utilization more efficient and enables rapid response to changes in user task requirements, providing elastic scaling capabilities.
[0070] Based on steps S41 to S44 above, by receiving a resource scheduling request from the console, the system requests the target scheduling system to prepare resources for the virtual machine instance to be created for the target scenario. Once the resource preparation for the virtual machine instance is complete based on the resource scheduling request, the system retrieves the target physical resources to be used by the virtual machine instance from the target physical resource pool. The target physical resource pool is a shared physical resource pool used when creating different virtual machine instances for different application scenarios. Finally, the virtual machine instance is created using the target physical resources. This achieves dynamic resource scheduling and management, allowing for dynamic allocation of resources according to different demand scenarios, improving resource utilization and system performance. The method for creating virtual machine instances in this embodiment, by sharing a physical resource pool, can better manage and optimize resource usage, achieving reasonable allocation of target physical resources. This reduces resource waste, improves resource utilization, and effectively reduces the number of resource pools deployed, lowering hardware procurement and operation and maintenance costs. This solves the technical problems of high creation costs and low resource utilization in related technologies when creating virtual machine instances.
[0071] The method for creating virtual machine instances in the embodiments of this application will be further described below.
[0072] In one alternative embodiment, the target physical resource pool is deployed using at least one of the following infrastructure standardization strategies: uniform computing resource types, uniform network architecture, and uniform server architecture.
[0073] Uniform computing resource types involve using the same model or specifications of computing resources such as CPUs and memory within a target physical resource pool. This reduces the diversity of resource types within the pool and simplifies resource management. For example, by procuring and deploying standardized server hardware, all servers can be equipped with the same CPUs, memory, and other computing components. At the virtualization level, CPU scaling technology can be used to adjust the CPU performance (such as frequency and number of cores) of virtual machine instances in different scenarios to adapt to varying application requirements.
[0074] A unified network architecture means that the entire target physical resource pool adopts consistent network technologies and designs, such as using the same network devices, unified network protocols, and standard network topologies. This helps simplify network configuration and maintenance, and improves network stability and performance. For example, building a network architecture based on Software Defined Networking (SDN) uses unified network switching devices and virtual network interface cards (vNICs), and a centralized network controller configures and manages network resources. This allows network resources to be dynamically allocated according to demand while maintaining the consistency of the network architecture.
[0075] A unified server architecture means that servers within a target physical resource pool adhere to the same design principles and technical specifications, including standardized hardware interfaces, a unified management platform, and standardized operation and maintenance processes. This helps improve server compatibility and simplify operations and maintenance. Standardized server design, such as using identical motherboards, storage, and network interfaces, ensures the consistency and interchangeability of server hardware. A unified server architecture also includes a unified monitoring and management system, enabling centralized monitoring of the operational status of all servers and simplifying troubleshooting and resource allocation.
[0076] Specifically, the target physical resource pool is deployed using at least one infrastructure standardization strategy. A single infrastructure standardization strategy can be used to deploy the target physical resource pool, or multiple infrastructure standardization strategies can be flexibly combined to improve the management efficiency of the resource pool, reduce costs, and enhance resilience.
[0077] For example, when the target resource pool is deployed using only a uniform type of computing resource—that is, all virtual machine instances use the same type of CPU at creation—the complexity of the resource pool can be significantly reduced. In related technologies, because different scenarios have varying CPU requirements, resource pools often need to be equipped with multiple CPU models, leading to increased management and maintenance costs and potentially reduced resource utilization. Unifying the CPU model simplifies the resource scheduling process, reduces hardware procurement and management costs caused by diverse CPU models, and facilitates dynamic resource allocation and scheduling, improving the overall elasticity of the resource pool's supply.
[0078] For example, when the target resource pool is deployed using only a unified network architecture, all virtual machine instances will use the same technology and configuration to achieve network connectivity at creation. In related technologies, network architectures may vary to meet different bandwidth, latency, or isolation requirements in different scenarios, leading to redundancy in network devices and configurations, increasing costs, and potentially affecting the flexibility of network resources. A unified network architecture can simplify the types of network devices, optimize the allocation and scheduling of network resources, improve network performance and stability, reduce the complexity of network configuration, and enhance the network connectivity capabilities of resources in different scenarios.
[0079] For example, when the target resource pool is deployed using only a unified server architecture, it ensures that all virtual machine instances run on servers with the same hardware layout and design. In related technologies, server architectures can vary due to factors such as CPU requirements, network requirements, or storage characteristics, resulting in a wide variety of server types that are difficult to procure and manage uniformly. A unified server architecture helps reduce the number of server types, simplifies the procurement, deployment, and maintenance processes, and also helps optimize server resource utilization and reduce operating costs.
[0080] For example, the target resource pool can adopt a unified computing resource type and a unified network architecture, thereby enabling appropriate configuration of computing and network resources within the pool. This ensures both uniformity in computing performance and optimized management of network data flows. For example, the target resource pool can adopt a unified computing resource type and a unified server architecture, ensuring consistency in computing power and physical design across all servers within the pool, thus simplifying hardware maintenance and upgrade processes. For example, the target resource pool can adopt a unified network architecture and a unified server architecture. Standardizing network architecture and server design helps build a highly reliable, low-latency communication system while ensuring high server performance and space utilization.
[0081] For example, the target resource pool can also simultaneously adopt a unified computing resource type, a unified network architecture, and a unified server architecture, thereby producing a more synergistic effect and further improving the scalability and resource utilization of the resource pool. Through the flexible combination of infrastructure standardization strategies, a target physical resource pool that is both unified and highly adaptable can be created, further ensuring the management efficiency and cost control of the target resource pool, while ensuring that the target resource pool can quickly respond to resource needs in different scenarios.
[0082] Based on the above optional embodiments, by adopting a unified computing resource type, a unified network architecture, and a unified server architecture for the target physical resource pool, it is possible to better serve different cloud products and application scenarios, such as ECS and container services, without the need to maintain a separate resource pool for each scenario. This not only reduces the procurement and maintenance costs of physical resources but also improves resource utilization efficiency and elastic provisioning capabilities, enabling resources to be shared across different scenarios and quickly responding to changes in task requirements. Simultaneously, the unified architecture and resource type also help simplify the technology stack, reduce technical complexity, and enable the cloud platform to deploy and scale services more quickly.
[0083] In an optional embodiment, in step S43, based on the resource scheduling request, obtaining the target physical resources to be used by the virtual machine instance from the target physical resource pool includes:
[0084] Step S431: Determine the virtual machine instance category based on the resource scheduling request;
[0085] Step S432: Obtain the target physical resources to be used by the virtual machine instance from the target physical resource pool according to the virtual machine instance type.
[0086] The virtual machine instance categories mentioned above are a series of virtual machine specifications or types predefined by cloud service providers in cloud computing environments to meet the needs of different user applications and workloads. Each virtual machine instance category typically corresponds to specific resource configurations and performance characteristics, aiming to optimize the use of computing, storage, and network resources in specific scenarios. Virtual machine instance categories can be classified based on, but are not limited to, the following factors: computing power, memory size, storage type, network performance, security and isolation level, cost, and cost-effectiveness.
[0087] Specifically, virtual machine instances with varying computing performance are offered based on parameters such as CPU model, number of cores, and frequency. For example, high-performance instances are equipped with CPUs with more cores and higher frequencies, while compute-optimized instances may strike a balance between cost and performance. Different virtual machine instance categories offer varying amounts of memory to suit applications with high memory requirements, such as databases, caching, and big data processing. Virtual machine instance categories can also be categorized based on storage device type (e.g., SSD or HDD), read / write speed, storage capacity, and storage performance to meet the needs of different task scenarios. Furthermore, virtual machine instance categories with varying network performance are offered based on network bandwidth, network latency, and network interface card type to optimize applications requiring high-speed network connectivity. Virtual machine instance categories with different security levels, such as dedicated instances or isolated instances, are provided to meet the needs of users with specific data security and privacy requirements. Finally, virtual machine instance categories at different price points are also available to meet the needs of users with varying budgets, based on cost and performance considerations.
[0088] When a user submits a resource scheduling request, the appropriate virtual machine instance category is determined based on the application scenario or task requirements specified in the request. Subsequently, the target scheduling system can select target physical resources that meet the requirements of that category from the target physical resource pool and create virtual machine instances with the corresponding configurations using virtualization technology.
[0089] Based on the above optional embodiments, by determining the virtual machine instance category based on the resource scheduling request, and then obtaining the target physical resources to be used by the virtual machine instance from the target physical resource pool according to the virtual machine instance category, resource supply can be controlled more precisely, customized services can be provided, and resource utilization efficiency and cost can be optimized at the same time.
[0090] In an optional embodiment, in step S431, determining the virtual machine instance category based on the resource scheduling request includes:
[0091] Step S4311: Determine the target scenario based on the resource scheduling request;
[0092] Step S4312: Obtain the cloud computing service specification family corresponding to the target scenario;
[0093] Step S4313: Determine the virtual machine instance category based on the cloud computing service specification family.
[0094] Specifically, by parsing resource scheduling requests, the operating mode and performance requirements of applications or workloads are identified, thereby determining the target scenario. After identifying the target scenario, information on cloud service instance families is retrieved based on that scenario. An instance family is a series of virtual machine instance types with similar characteristics and uses. Each instance family is optimized for different workloads and application scenarios. For example, a high-compute instance family may contain multiple CPU cores and high-frequency CPUs, while a storage-optimized instance family may be equipped with faster SSD storage devices and larger storage capacity. Based on the requirements of the target scenario, such as resource size, cost budget, and performance requirements, one or more suitable instance types are selected from the instance families.
[0095] For example, in web scenarios, users are usually more concerned with cost-effectiveness, that is, minimizing costs while meeting application performance requirements. Figure 5 This is a schematic diagram of a target physical resource according to an embodiment of this application, such as... Figure 5 As shown, scenario A is a web scenario, and the corresponding cloud computing service specification family is Specification Family A. The CPU frequency in the underlying resources needs to be no less than 3.2GHz to ensure the processing power of the web application. The frequency selection is to find a balance between multitasking and response speed, meeting the real-time and concurrency requirements of the web application. The memory frequency needs to reach 4800MHz. A high memory frequency helps improve data read and write speed, which is especially important for web applications that require frequent memory access. The total memory bandwidth is calculated as 307GB / s multiplied by the effective bandwidth factor of 75%, which equals 230.4GB / s. Even during peak memory access periods, at least 230.4GB / s of effective bandwidth should be ensured to support the high concurrency access of the web application. To achieve high cost-effectiveness, the number of cores per socket in the server architecture is set to 18. A higher number of cores means advantages in multithreading and multitasking, better supporting the concurrent processing of web services, while also maintaining a low unit core cost, improving resource economy.
[0096] Scenario A, corresponding to ECS specification family A, was designed with the characteristics of web applications in mind: handling high concurrency requests, responding quickly to users, and maintaining low operating costs. By optimizing CPU and memory configurations, it ensures that web applications have sufficient computing and memory resources to efficiently process user requests and data, while keeping costs under control. This design approach reflects the flexibility and economy of cloud computing in resource allocation, meeting the diverse needs of users in different scenarios.
[0097] For example, in a battle game scenario, the user's primary consideration is CPU performance and frequency, which are directly related to the smoothness, responsiveness, and gaming experience of the game. Figure 6 This is a schematic diagram of another target physical resource according to an embodiment of this application, such as... Figure 6 As shown, Scenario B is a battle game scenario, corresponding to Cloud Computing Service Specification Family B. The underlying CPU frequency requirement is no less than 3.8GHz to ensure high performance during game operation. The memory frequency needs to reach 5200MHz to reduce data read / write latency and ensure fast data exchange. Simultaneously, the overall memory bandwidth is 75% of 332.8GB / s, or 249.6GB / s, further emphasizing the importance of high memory bandwidth for the gaming experience. To balance high performance and stability, the number of CPU cores per socket is set to 14. Reducing the number of cores means that each core can be allocated more resources, such as higher frequencies and larger caches, thereby improving the performance of a single core. Since the total CPU power consumption remains unchanged at 200W, reducing the number of cores allows each core to be allocated more power, contributing to improved frequency and performance. The DDR memory frequency can be set in the server's Basic Input / Output System (BIOS) to accommodate the high memory performance requirements of battle games. Adjusting the DDR frequency to 5200MHz means that the game can enjoy faster data read speeds and lower latency during operation, which is crucial for games requiring instant response and high frame rates.
[0098] In scenario B, the ECS family B, by selecting high-frequency CPUs, optimizing core counts, and adjusting to higher DDR memory frequencies, aims to provide the ultimate performance and stability required for competitive games, thereby ensuring smooth gameplay and responsiveness, and meeting the high-performance needs of competitive game users.
[0099] Based on the above optional embodiments, by determining the target scenario based on resource scheduling requests, obtaining the cloud computing service specification family corresponding to the target scenario, and finally determining the virtual machine instance category based on the cloud computing service specification family, it is possible to further improve resource utilization, reduce operating costs, and enhance the elastic supply capability and large-scale deployment capability of the cloud platform.
[0100] In an optional embodiment, step S432, obtaining the target physical resources to be used by the virtual machine instance from the target physical resource pool according to the virtual machine instance category includes:
[0101] Step S4321: Perform an inventory query on the target physical resource pool based on the virtual machine instance category to obtain the query result. The query result is used to determine whether the target physical resource pool meets the workload corresponding to the virtual machine instance category.
[0102] Step S4322: Based on the query results, the response determines that the target physical resource pool meets the workload, and obtains the target physical resources to be used by the virtual machine instance from the target physical resource pool.
[0103] Specifically, the system queries the inventory of the target physical resource pool based on the virtual machine instance type corresponding to the resource scheduling request, thereby determining whether the target physical resource pool currently has sufficient resources to create and run the requested virtual machine instance type. The query results will indicate whether the target physical resource pool can meet the workload corresponding to the virtual machine instance type, including performance, capacity, and type.
[0104] When the query results determine that the target physical resource pool meets the workload requirements, the target physical resources to be used by the virtual machine instance are obtained from the target physical resource pool to ensure that the virtual machine instance has sufficient target physical resources to support its operation, including processing power, memory capacity, storage space and network bandwidth, so as to meet the performance requirements and task requirements of the workload.
[0105] For example, when selecting and reserving target physical resources suitable for the virtual machine instance category from the target physical resource pool based on the query results, this specifically involves adjusting the status of physical resources, such as from idle to reserved, updating inventory records, and reserving the necessary computing, storage, and network resources for the virtual machine instance to be created.
[0106] Based on the above optional embodiments, by querying the inventory of the target physical resource pool according to the virtual machine instance category, the query results are obtained, and then the target physical resource pool is determined to meet the workload based on the query results. The target physical resources to be used by the virtual machine instance are obtained from the target physical resource pool, which further ensures the effective allocation and utilization of resources, avoids resource waste or shortage, and can effectively improve the creation efficiency of virtual machine instances.
[0107] In an optional embodiment, the target physical resources include computing resources and memory resources. In step S42, preparing resources for the virtual machine instance based on the resource scheduling request includes:
[0108] The operating system is used to perform in-band allocation of computing resources and out-of-band frequency scaling of memory resources to prepare resources for virtual machine instances. The operating system is pre-configured in the virtual machine image corresponding to the virtual machine instance.
[0109] Specifically, in-band provisioning refers to the ability to dynamically adjust the computing resources allocated to virtual machines, such as the number of CPU cores and frequency, within a virtualized environment when the operating system is running on a virtual machine. The in-band provisioning process is typically handled by the cloud platform's virtualization layer software, without requiring a restart of the physical server or virtual machine instance, and can respond instantly to changes in resource requirements. By adjusting CPU frequency and the number of cores, the most suitable computing power can be provided for different workloads. For example, for computationally demanding applications such as high-frequency trading or competitive games, the CPU frequency can be adjusted to a higher level to ensure high-performance computing capabilities.
[0110] Out-of-band frequency scaling refers to adjusting the memory frequency on a physical server. By adjusting the memory frequency, memory access speed can be optimized, latency reduced, and bandwidth increased. This is especially important for scenarios requiring a large number of memory read and write operations, such as databases, big data analytics, and high-performance computing. Adjusting the memory frequency ensures that memory performance matches the performance of computing resources, further improving the overall performance of the virtual machine instance.
[0111] Before creating a virtual machine instance, the cloud platform will adjust the computing and memory resources in advance according to the user's needs through in-band configuration and out-of-band frequency conversion technology to ensure that the virtual machine instance can immediately obtain customized resource configuration after startup without additional waiting time. This further improves the startup speed of the virtual machine instance and ensures the rapid deployment and efficient operation of user applications.
[0112] Figure 7 This is a schematic diagram of a physical resource pool based on related technologies, such as... Figure 7 As shown, related technologies typically employ multiple CPUs to handle different workloads. For example, scenario A corresponds to cloud service specification family A, which can only be produced in resource pool A, and not in resource pools B, C, or D. The CPUs in resource pool A are different models from those in other resource pools, and their performance and cost also differ. Creating and maintaining multiple resource pools significantly increases costs. On the one hand, the procurement cost of physical servers rises due to the increased diversity, requiring the purchase of servers for each CPU model. On the other hand, the cost of partitioning and reconfiguring resources across different workloads also increases. Small-scale, specifically configured resource pools require more frequent and complex operations when adjusting resource allocation.
[0113] Furthermore, large-scale deployments typically require a large amount of homogeneous resources, which the decentralized nature of small resource pools struggles to meet, leading to low deployment efficiency and difficulty in rapidly expanding the scope of product services. Elastic provisioning refers to the cloud platform's ability to quickly respond to changes in resource demand. With too many resource pools, each pool has limited resources, making it impossible to form a unified, large-scale elastic resource pool. This makes dynamic resource scheduling and sharing difficult, reducing overall elastic provisioning capacity. The inability to effectively share resources between different application scenarios results in untimely resource supply during peak demand periods and idle resources during off-peak periods, leading to low overall resource utilization.
[0114] Figure 8 This is a schematic diagram of a physical resource pool according to an embodiment of this application, such as... Figure 8 As shown, the target physical resource pool is a shared physical resource pool used when creating different virtual machine instances for scenarios A, B, C, and D. In cloud computing and data center environments, Physical Server Workers (PSWs) and Access Switches (ASWs) can work together to support the creation, resource scheduling, and data transmission of virtual machine instances. The PSW is responsible for providing computing and storage resources, while the ASW handles network connectivity and traffic management. The target physical resource pool adopts a unified computing resource type, a unified network architecture, and a unified server architecture. By reducing resource pooling, it improves resource scalability and solves the problem of large-scale elastic provisioning of public cloud resources. By reducing the types of underlying resources in ECS, scaling up the procurement of the same type of resources, and scaling up the procurement of single resources, such as CPU A, costs can be significantly reduced. Furthermore, by having multiple products share the same type of underlying physical resources, the scalability of products can be significantly improved.
[0115] Figure 9 This is a schematic diagram illustrating a method for creating a virtual machine instance according to an embodiment of this application, as shown below. Figure 9 As shown, the method includes the following steps:
[0116] Step S901: In response to the virtual machine instance creation operation executed by the user on the console, a resource scheduling request is generated;
[0117] Step S902: Send a resource scheduling request;
[0118] Step S903: Perform in-band allocation of computing resources and out-of-band frequency conversion of memory resources to prepare resources for virtual machine instances;
[0119] Step S904: In response to the completion of resource preparation, determine the target scenario based on the resource scheduling request;
[0120] Step S905: Obtain the cloud computing service specification family corresponding to the target scenario;
[0121] Step S906: Determine the virtual machine instance category based on the cloud computing service specification family;
[0122] Step S907: Perform an inventory query on the target physical resource pool based on the virtual machine instance type to obtain the query results;
[0123] Step S908: Based on the query results, the response determines that the target physical resource pool meets the workload, and obtains the target physical resources to be used by the virtual machine instance from the target physical resource pool;
[0124] Step S909: Create a virtual machine instance using the target physical resources;
[0125] Step S910: Send a notification message, wherein the notification message is used to notify that the virtual machine instance has been created successfully.
[0126] Based on the above optional embodiments, by receiving a resource scheduling request from the console, the target scheduling system is requested to prepare resources for the virtual machine instance to be created for the target scenario. Once the resource preparation for the virtual machine instance is complete based on the resource scheduling request, the target physical resources to be used by the virtual machine instance are obtained from the target physical resource pool. The target physical resource pool is a shared physical resource pool used when creating different virtual machine instances for different application scenarios. Finally, the virtual machine instance is created using the target physical resources. This achieves dynamic resource scheduling and management, allowing resources to be dynamically allocated according to different demand scenarios, improving resource utilization and system performance. The method for creating virtual machine instances in this embodiment, by sharing a physical resource pool, can better manage and optimize resource usage, achieving reasonable allocation of target physical resources. This reduces resource waste, improves resource utilization, and effectively reduces the number of resource pools deployed, lowering hardware procurement and operation and maintenance costs. This solves the technical problems of high creation costs and low resource utilization in related technologies when creating virtual machine instances.
[0127] Figure 10 This is a flowchart of another method for creating a virtual machine instance according to an embodiment of this application, such as... Figure 10 As shown, the method includes the following steps:
[0128] Step S101: In response to the virtual machine instance creation operation executed by the user on the console, a resource scheduling request is generated;
[0129] Step S102: Send a resource scheduling request to the target scheduling system; wherein, the resource scheduling request is used to request the target scheduling system to prepare resources for the virtual machine instance to be created for the target scenario, and the target scheduling system is used to obtain the target physical resources to be used by the virtual machine instance from the target physical resource pool when the resource preparation is completed, and to create the virtual machine instance using the target physical resources, and the target physical resource pool is a physical resource pool shared when creating different virtual machine instances for different application scenarios.
[0130] Based on steps S101 to S102 above, a resource scheduling request is generated in response to the virtual machine instance creation operation executed by the user on the console. This resource scheduling request is then sent to the target scheduling system. The resource scheduling request requests the target scheduling system to prepare resources for the virtual machine instance to be created for the target scenario. When the resources are ready, the target scheduling system obtains the target physical resources to be used by the virtual machine instance from the target physical resource pool, and uses these target physical resources to create the virtual machine instance. The target physical resource pool is a shared physical resource pool used when creating different virtual machine instances for different application scenarios. This achieves dynamic resource scheduling and management, allowing for dynamic allocation of resources according to different demand scenarios, improving resource utilization and system performance. The method for creating virtual machine instances in this embodiment, by sharing a physical resource pool, can better manage and optimize resource usage to achieve reasonable allocation of target physical resources. This reduces resource waste, improves resource utilization, and effectively reduces the number of resource pools deployed, lowering hardware procurement and operation and maintenance costs. This solves the technical problems of high creation costs and low resource utilization in related technologies when creating virtual machine instances.
[0131] The method for creating virtual machine instances in the embodiments of this application will be further described below.
[0132] In an optional embodiment, the method for creating a virtual machine instance in this application further includes:
[0133] Receive notification messages from the target scheduling system, whereby the notification messages are used to notify that the virtual machine instance has been created successfully.
[0134] Specifically, once a virtual machine instance is successfully created, the target scheduling system generates a notification message. This message contains status information about the newly created virtual machine instance, confirming that it has been successfully created according to the user request and resource scheduling policy. The notification message serves as a marker of the creation process's completion and can be sent to the cloud platform's monitoring system and the user to ensure all relevant parties are aware of the virtual machine instance's status.
[0135] Figure 11 This is a flowchart of another method for creating a virtual machine instance according to an embodiment of this application, such as... Figure 11 As shown, the method includes the following steps:
[0136] Step S111: Receive a resource scheduling request from the console, wherein the resource scheduling request is used to request the target scheduling system to prepare resources for the web application virtual machine instance to be created for the web application scenario.
[0137] Step S112: Based on the resource scheduling request, prepare resources for the web application virtual machine instance;
[0138] Step S113: In response to the completion of resource preparation, obtain the physical resources of the web application virtual machine instance to be used from the target physical resource pool, wherein the target physical resource pool is a physical resource pool shared when creating different virtual machine instances for different application scenarios.
[0139] Step S114: Create a virtual machine instance of the web application using the physical resources of the web application.
[0140] Based on steps S111 to S114 above, a resource scheduling request is received from the console to request the target scheduling system to prepare resources for the web application virtual machine instance to be created for the web application scenario. Then, when the resource preparation for the web application virtual machine instance is complete based on the resource scheduling request, the web application physical resources to be used by the web application virtual machine instance are obtained from the target physical resource pool. The target physical resource pool is a shared physical resource pool used when creating different virtual machine instances for different application scenarios. Finally, the web application virtual machine instance is created using the web application physical resources. This achieves dynamic resource scheduling and management, allowing resources to be dynamically allocated according to different demand scenarios, improving resource utilization and system performance. The method for creating virtual machine instances in this embodiment, by sharing a physical resource pool, can better manage and optimize resource usage, achieving reasonable allocation of target physical resources. This reduces resource waste, improves resource utilization, and effectively reduces the number of resource pool deployments, lowering hardware procurement and operation and maintenance costs. This solves the technical problems of high creation costs and low resource utilization in related technologies when creating virtual machine instances.
[0141] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, use and processing of the relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and corresponding operation portals are provided for users to choose to authorize or refuse.
[0142] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions, as some steps may be performed in other orders or simultaneously according to this application. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions and modules involved are not necessarily essential to this application.
[0143] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, they can also be implemented by hardware. Based on this understanding, the technical solution of this application, 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 cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of this application.
[0144] According to embodiments of this application, an apparatus for creating a virtual machine instance is also provided for implementing the above-described method for creating a virtual machine instance. Figure 12 This is a structural block diagram of an apparatus for creating a virtual machine instance according to an embodiment of this application, such as... Figure 12 As shown, the device includes:
[0145] The receiving module 1201 is used to receive resource scheduling requests from the console, wherein the resource scheduling request is used to request the target scheduling system to prepare resources for the virtual machine instance to be created for the target scenario;
[0146] Processing module 1202 is used to prepare resources for virtual machine instances based on resource scheduling requests;
[0147] The acquisition module 1203 is used to acquire the target physical resources to be used by the virtual machine instance from the target physical resource pool in response to the completion of resource preparation. The target physical resource pool is a physical resource pool shared when creating different virtual machine instances for different application scenarios.
[0148] Create module 1204 to create a virtual machine instance using the target physical resources.
[0149] Optionally, the target physical resource pool may be deployed using at least one of the following infrastructure standardization strategies: uniform computing resource types, uniform network architecture, and uniform server architecture.
[0150] Optionally, the acquisition module 1203 is further configured to: determine the virtual machine instance category based on the resource scheduling request; and obtain the target physical resources to be used by the virtual machine instance from the target physical resource pool according to the virtual machine instance category.
[0151] Optionally, the acquisition module 1203 is also used to: determine the target scenario based on the resource scheduling request; obtain the cloud computing service specification family corresponding to the target scenario; and determine the virtual machine instance category based on the cloud computing service specification family.
[0152] Optionally, the acquisition module 1203 is further configured to: perform an inventory query on the target physical resource pool based on the virtual machine instance category to obtain a query result, wherein the query result is used to determine whether the target physical resource pool meets the workload corresponding to the virtual machine instance category; and respond by determining that the target physical resource pool meets the workload based on the query result, and obtaining the target physical resources to be used by the virtual machine instance from the target physical resource pool.
[0153] Optionally, the processing module 1202 is further configured to: utilize the operating system to perform in-band allocation of computing resources and out-of-band frequency conversion of memory resources to prepare resources for the virtual machine instance, wherein the operating system is pre-configured in the virtual machine image corresponding to the virtual machine instance.
[0154] It should be noted that the receiving module 1201, processing module 1202, acquisition module 1203, and creation module 1204 correspond to steps S41 to S44 in the above embodiments. The four modules and their corresponding steps implement the same instances and application scenarios, but are not limited to the content disclosed in the above embodiments. It should be noted that the above modules or units can be hardware or software components stored in memory (e.g., memory 104) and processed by one or more processors (e.g., processors 102a, 102b, ..., 102n). The above modules can also be part of a device and run in the computer terminal 10 provided in the above embodiments.
[0155] Figure 13 This is a structural block diagram of another apparatus for creating a virtual machine instance according to an embodiment of this application, such as... Figure 13 As shown, the device includes:
[0156] The generation module 1301 is used to generate a resource scheduling request in response to the virtual machine instance creation operation performed by the user on the console;
[0157] The sending module 1302 is used to send a resource scheduling request to the target scheduling system. The resource scheduling request is used to request the target scheduling system to prepare resources for the virtual machine instance to be created for the target scenario. When the resource preparation is completed, the target scheduling system is used to obtain the target physical resources to be used by the virtual machine instance from the target physical resource pool, and to create the virtual machine instance using the target physical resources. The target physical resource pool is a shared physical resource pool when creating different virtual machine instances for different application scenarios.
[0158] Optionally, the apparatus for creating a virtual machine instance further includes a receiving module 1303, configured to receive a notification message from the target scheduling system, wherein the notification message is used to notify that the virtual machine instance has been successfully created.
[0159] It should be noted that the generation module 1301 and the sending module 1302 correspond to steps S101 to S102 in the above embodiments. The two modules and the corresponding steps implement the same instances and application scenarios, but are not limited to the content disclosed in the above embodiments. It should be noted that the above modules or units can be hardware components or software components stored in memory (e.g., memory 104) and processed by one or more processors (e.g., processors 102a, 102b, ..., 102n). The above modules can also be part of a device and run in the computer terminal 10 provided in the above embodiments.
[0160] Figure 14 This is a structural block diagram of another apparatus for creating a virtual machine instance according to an embodiment of this application, such as... Figure 14 As shown, the device includes:
[0161] The receiving module 1401 is used to receive a resource scheduling request from the console, wherein the resource scheduling request is used to request the target scheduling system to prepare resources for the web application virtual machine instance to be created for the web application scenario.
[0162] Processing module 1402 is used to prepare resources for web application virtual machine instances based on resource scheduling requests;
[0163] The acquisition module 1403 is used to acquire the physical resources of the web application virtual machine instance to be used from the target physical resource pool in response to the completion of resource preparation. The target physical resource pool is a physical resource pool shared when creating different virtual machine instances for different application scenarios.
[0164] Create module 1404, which is used to create a web application virtual machine instance using the physical resources of the web application.
[0165] It should be noted that the receiving module 1401, processing module 1402, acquisition module 1403, and creation module 1404 correspond to steps S111 to S114 in the above embodiments. The four modules and their corresponding steps implement the same instances and application scenarios, but are not limited to the content disclosed in the above embodiments. It should be noted that the above modules or units can be hardware or software components stored in memory (e.g., memory 104) and processed by one or more processors (e.g., processors 102a, 102b, ..., 102n). The above modules can also be part of a device and run in the computer terminal 10 provided in the above embodiments.
[0166] It should be noted that the preferred embodiments involved in the above embodiments of this application are the same as the solutions, application scenarios and implementation processes provided in the above embodiments, but are not limited to the solutions provided in the above embodiments.
[0167] Embodiments of this application may provide a system for creating virtual machine instances, including: a console, a target scheduling system, and a target physical resource pool;
[0168] The console is used to respond to user-executed virtual machine instance creation operations, generate resource scheduling requests, and send resource scheduling requests to the target scheduling system. The resource scheduling request is used to request the target scheduling system to prepare resources for the virtual machine instance to be created for the target scenario.
[0169] The target scheduling system is used to receive resource scheduling requests from the console, prepare resources for virtual machine instances based on the resource scheduling requests, and in response to the completion of resource preparation, obtain the target physical resources to be used by the virtual machine instances from the target physical resource pool, and create virtual machine instances using the target physical resources. The target physical resource pool is a shared physical resource pool when creating different virtual machine instances for different application scenarios.
[0170] Embodiments of this application may provide an electronic device, which may be any one of a group of electronic devices. Optionally, in this embodiment, the aforementioned electronic device may also be replaced by a terminal device such as a mobile terminal.
[0171] Optionally, in this embodiment, the aforementioned electronic device may be located in at least one of a plurality of network devices in a computer network.
[0172] In this embodiment, the computer terminal described above can execute the program code in the method.
[0173] Optionally, Figure 15This is a structural block diagram of an electronic device according to an embodiment of this application. As shown in the figure, the electronic device may include: one or more (only one is shown in the figure) processors 152, memory 154, memory controller, and peripheral interfaces, wherein the peripheral interfaces are connected to a radio frequency module, an audio module, and a display.
[0174] The memory can be used to store software programs and modules, such as the program instructions / modules corresponding to the methods and apparatus in the embodiments of this application. The processor executes various functional applications and data processing by running the software programs and modules stored in the memory, thereby implementing the methods in the above embodiments. The memory may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory may further include memory remotely located relative to the processor, and these remote memories can be connected to the terminal via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
[0175] The processor can invoke information and applications stored in memory via a transmission device to perform the following steps: receiving a resource scheduling request from the console, wherein the resource scheduling request is used to request the target scheduling system to prepare resources for a virtual machine instance to be created for a target scenario; preparing resources for the virtual machine instance based on the resource scheduling request; in response to the completion of resource preparation, obtaining the target physical resources to be used by the virtual machine instance from the target physical resource pool, wherein the target physical resource pool is a shared physical resource pool when creating different virtual machine instances for different application scenarios; and creating a virtual machine instance using the target physical resources.
[0176] Optionally, the target physical resource pool may be deployed using at least one of the following infrastructure standardization strategies: uniform computing resource types, uniform network architecture, and uniform server architecture.
[0177] Optionally, the processor may also execute program code that performs the following steps: determining the virtual machine instance category based on the resource scheduling request; and obtaining the target physical resources to be used by the virtual machine instance from the target physical resource pool according to the virtual machine instance category.
[0178] Optionally, the processor may also execute program code that performs the following steps: determining the target scenario based on the resource scheduling request; obtaining the cloud computing service specification family corresponding to the target scenario; and determining the virtual machine instance category based on the cloud computing service specification family.
[0179] Optionally, the processor may also execute program code that performs the following steps: performs an inventory query on the target physical resource pool based on the virtual machine instance category to obtain a query result, wherein the query result is used to determine whether the target physical resource pool meets the workload corresponding to the virtual machine instance category; and responds by determining that the target physical resource pool meets the workload based on the query result, and obtains the target physical resources to be used by the virtual machine instance from the target physical resource pool.
[0180] Optionally, the processor may also execute program code that performs in-band allocation of computing resources and out-of-band frequency conversion of memory resources using the operating system to prepare resources for the virtual machine instance, wherein the operating system is pre-configured in the virtual machine image corresponding to the virtual machine instance.
[0181] Optionally, the processor may also execute program code that performs the following steps: responding to a virtual machine instance creation operation performed by the user on the console and generating a resource scheduling request; sending the resource scheduling request to the target scheduling system; wherein the resource scheduling request is used to request the target scheduling system to prepare resources for the virtual machine instance to be created for the target scenario, and the target scheduling system is used to obtain the target physical resources to be used by the virtual machine instance from the target physical resource pool when the resources are prepared, and to create the virtual machine instance using the target physical resources, and the target physical resource pool is a physical resource pool shared when creating different virtual machine instances for different application scenarios.
[0182] Optionally, the processor may also execute program code that receives a notification message from the target scheduling system, wherein the notification message is used to notify that the virtual machine instance has been successfully created.
[0183] Optionally, the processor may also execute program code that performs the following steps: receiving a resource scheduling request from the console, wherein the resource scheduling request is used to request the target scheduling system to prepare resources for the web application virtual machine instance to be created for the web application scenario; preparing resources for the web application virtual machine instance based on the resource scheduling request; in response to the completion of resource preparation, obtaining the web application physical resources to be used by the web application virtual machine instance from the target physical resource pool, wherein the target physical resource pool is a shared physical resource pool when creating different virtual machine instances for different application scenarios; and creating the web application virtual machine instance using the web application physical resources.
[0184] By adopting the embodiments of this application, a resource scheduling request is received from the console to request the target scheduling system to prepare resources for the virtual machine instance to be created for the target scenario. Once the resource preparation for the virtual machine instance is complete based on the resource scheduling request, the target physical resources to be used by the virtual machine instance are obtained from the target physical resource pool. The target physical resource pool is a shared physical resource pool used when creating different virtual machine instances for different application scenarios. Finally, the virtual machine instance is created using the target physical resources. This achieves dynamic resource scheduling and management, allowing resources to be dynamically allocated according to different demand scenarios, improving resource utilization and system performance. The method for creating virtual machine instances in this embodiment of the application, by sharing a physical resource pool, can better manage and optimize resource usage to achieve reasonable allocation of target physical resources. This reduces resource waste, improves resource utilization, and effectively reduces the number of resource pools deployed, lowering hardware procurement costs and operation and maintenance costs. This solves the technical problems of high creation costs and low resource utilization in related technologies when creating virtual machine instances.
[0185] It will be understood by those skilled in the art that the structure shown in the figure is merely illustrative, and the electronic device may also be a smartphone (such as an Android phone, an iOS phone, etc.), a tablet computer, a PDA, a mobile internet device (MID), a PAD, or other terminal device. This figure does not limit the structure of the aforementioned electronic device. For example, the electronic device may include more or fewer components (such as a network interface, a display device, etc.) than shown in the figure, or may have a different configuration than that shown in the figure.
[0186] Those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be implemented by a program instructing the hardware related to the terminal device. The program can be stored in a computer-readable storage medium, which may include: flash drive, read-only memory (ROM), random access memory (RAM), disk or optical disk, etc.
[0187] Embodiments of this application also provide a computer-readable storage medium. Optionally, in this embodiment, the computer-readable storage medium can be used to store program code executed by the method provided in the above embodiments.
[0188] Optionally, in this embodiment, the storage medium may be located in any one of the electronic devices in the group of electronic devices in the computer network, or in any one of the mobile terminals in the group of mobile terminals.
[0189] Optionally, in this embodiment, the computer-readable storage medium is configured to store program code for performing the following steps: receiving a resource scheduling request from a console, wherein the resource scheduling request is used to request the target scheduling system to prepare resources for a virtual machine instance to be created for a target scenario; preparing resources for the virtual machine instance based on the resource scheduling request; in response to the completion of resource preparation, obtaining the target physical resources to be used by the virtual machine instance from the target physical resource pool, wherein the target physical resource pool is a shared physical resource pool when creating different virtual machine instances for different application scenarios; and creating a virtual machine instance using the target physical resources.
[0190] Optionally, the target physical resource pool may be deployed using at least one of the following infrastructure standardization strategies: uniform computing resource types, uniform network architecture, and uniform server architecture.
[0191] Optionally, the computer-readable storage medium is further configured to store program code for performing the following steps: determining the virtual machine instance category based on a resource scheduling request; and obtaining the target physical resources to be used by the virtual machine instance from the target physical resource pool according to the virtual machine instance category.
[0192] Optionally, the computer-readable storage medium is further configured to store program code for performing the following steps: determining a target scenario based on a resource scheduling request; obtaining a cloud computing service specification family corresponding to the target scenario; and determining a virtual machine instance category based on the cloud computing service specification family.
[0193] Optionally, the computer-readable storage medium is further configured to store program code for performing the following steps: performing an inventory query on the target physical resource pool based on the virtual machine instance category to obtain a query result, wherein the query result is used to determine whether the target physical resource pool meets the workload corresponding to the virtual machine instance category; and responding by determining, based on the query result, that the target physical resource pool meets the workload, obtaining the target physical resources to be used by the virtual machine instance from the target physical resource pool.
[0194] Optionally, the computer-readable storage medium is further configured to store program code for performing the following steps: preparing resources for a virtual machine instance by using the operating system to perform in-band allocation of computing resources and out-of-band frequency conversion of memory resources, wherein the operating system is pre-configured in the virtual machine image corresponding to the virtual machine instance.
[0195] Optionally, the computer-readable storage medium is further configured to store program code for performing the following steps: generating a resource scheduling request in response to a virtual machine instance creation operation performed by a user on a console; sending the resource scheduling request to a target scheduling system; wherein the resource scheduling request is used to request the target scheduling system to prepare resources for the virtual machine instance to be created for the target scenario, and the target scheduling system is used to obtain the target physical resources to be used by the virtual machine instance from the target physical resource pool when the resources are prepared, and to create the virtual machine instance using the target physical resources, and the target physical resource pool is a shared physical resource pool when creating different virtual machine instances for different application scenarios.
[0196] Optionally, the computer-readable storage medium is also configured to store program code for performing the following steps: receiving a notification message from the target scheduling system, wherein the notification message is used to notify that the virtual machine instance has been successfully created.
[0197] Optionally, the computer-readable storage medium is further configured to store program code for performing the following steps: receiving a resource scheduling request from a console, wherein the resource scheduling request is used to request a target scheduling system to prepare resources for a web application virtual machine instance to be created for a web application scenario; preparing resources for the web application virtual machine instance based on the resource scheduling request; in response to the completion of resource preparation, obtaining the web application physical resources to be used by the web application virtual machine instance from a target physical resource pool, wherein the target physical resource pool is a shared physical resource pool when creating different virtual machine instances for different application scenarios; and creating a web application virtual machine instance using the web application physical resources.
[0198] By adopting the embodiments of this application, a resource scheduling request is received from the console to request the target scheduling system to prepare resources for the virtual machine instance to be created for the target scenario. Once the resource preparation for the virtual machine instance is complete based on the resource scheduling request, the target physical resources to be used by the virtual machine instance are obtained from the target physical resource pool. The target physical resource pool is a shared physical resource pool used when creating different virtual machine instances for different application scenarios. Finally, the virtual machine instance is created using the target physical resources. This achieves dynamic resource scheduling and management, allowing resources to be dynamically allocated according to different demand scenarios, improving resource utilization and system performance. The method for creating virtual machine instances in this embodiment of the application, by sharing a physical resource pool, can better manage and optimize resource usage to achieve reasonable allocation of target physical resources. This reduces resource waste, improves resource utilization, and effectively reduces the number of resource pools deployed, lowering hardware procurement costs and operation and maintenance costs. This solves the technical problems of high creation costs and low resource utilization in related technologies when creating virtual machine instances.
[0199] Embodiments of this application also provide a computer program product. Optionally, in this embodiment, the computer program product may include a computer program that, when executed by a processor, implements the methods provided in the embodiments described above.
[0200] Embodiments of this application also provide a computer program product. Optionally, the computer program product may include a non-volatile computer-readable storage medium, which can be used to store a computer program that, when executed by a processor, implements the method provided in the above embodiments.
[0201] Embodiments of this application also provide a computer program. Optionally, in this embodiment, when the computer program is executed by a processor, it implements the method provided in the above embodiments.
[0202] In the above embodiments of this application, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0203] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. The device embodiments described above are merely illustrative; for example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual coupling, direct coupling, or communication connection may be through some interfaces; the indirect coupling or communication connection between units or modules may be electrical or other forms.
[0204] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0205] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0206] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard drive, magnetic disk, or optical disk.
[0207] The above description is only a preferred embodiment of this application. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of this application, and these improvements and modifications should also be considered within the scope of protection of this application.
Claims
1. A method of creating a virtual machine instance, characterized by, The method comprises: receiving a resource scheduling request from a console, wherein the resource scheduling request is used to request a target scheduling system to prepare resources for a virtual machine instance to be created for a target scenario; preparing resources for the virtual machine instance based on the resource scheduling request; in response to the completion of resource preparation, obtaining target physical resources to be used by the virtual machine instance from a target physical resource pool, wherein the target physical resource pool is a physical resource pool shared by different virtual machine instances created for different application scenarios; creating the virtual machine instance by using the target physical resources.
2. The method of claim 1, wherein, The target physical resource pool is deployed by using at least one of the following infrastructure standardization strategies: unified computing resource type, unified network architecture, and unified server architecture.
3. The method of claim 1, wherein, The obtaining of the target physical resources to be used by the virtual machine instance from the target physical resource pool based on the resource scheduling request comprises: determining a virtual machine instance category based on the resource scheduling request; obtaining the target physical resources to be used by the virtual machine instance from the target physical resource pool according to the virtual machine instance category.
4. The method of claim 3, wherein, The determination of the virtual machine instance category based on the resource scheduling request comprises: determining the target scenario based on the resource scheduling request; obtaining a cloud computing service specification family corresponding to the target scenario; determining the virtual machine instance category according to the cloud computing service specification family.
5. The method of claim 3, wherein, The obtaining of the target physical resources to be used by the virtual machine instance from the target physical resource pool according to the virtual machine instance category comprises: performing inventory query on the target physical resource pool according to the virtual machine instance category to obtain a query result, wherein the query result is used to determine whether the target physical resource pool meets a workload corresponding to the virtual machine instance category; in response to the determination that the target physical resource pool meets the workload based on the query result, obtaining the target physical resources to be used by the virtual machine instance from the target physical resource pool.
6. The method according to any one of claims 1-5, characterized in that, The target physical resources comprise computing resources and memory resources, and the preparation of resources for the virtual machine instance based on the resource scheduling request comprises: performing in-band frequency conversion on the computing resources and out-of-band frequency conversion on the memory resources by using an operating system pre-configured in a virtual machine image corresponding to the virtual machine instance, to prepare resources for the virtual machine instance.
7. A method of creating a virtual machine instance, the method comprising: The method comprises: generating a resource scheduling request in response to a virtual machine instance creation operation performed by a user on a console; sending the resource scheduling request to a target scheduling system; wherein the resource scheduling request is used to request the target scheduling system to prepare resources for a virtual machine instance to be created for a target scenario, the target scheduling system is configured to obtain target physical resources to be used by the virtual machine instance from a target physical resource pool when the resource preparation is completed, and create the virtual machine instance by using the target physical resources, and the target physical resource pool is a physical resource pool shared by different virtual machine instances created for different application scenarios.
8. The method of claim 7, wherein, The method further comprises: receive a notification message fed back by the target scheduling system, wherein the notification message is used to notify that the virtual machine instance has been successfully created.
9. A method of creating a virtual machine instance, the method comprising: The method comprises the steps of: receiving a resource scheduling request from a console, wherein the resource scheduling request is used to request a target scheduling system to prepare resources for a web application virtual machine instance to be created for a web application scenario; preparing resources for the web application virtual machine instance based on the resource scheduling request; in response to the completion of resource preparation, obtaining web application physical resources to be used by the web application virtual machine instance from a target physical resource pool, wherein the target physical resource pool is a physical resource pool shared by different virtual machine instances created for different application scenarios; creating the web application virtual machine instance by using the web application physical resources.
10. A system for creating a virtual machine instance, the system comprising: The method comprises the steps of: a console, a target scheduling system and a target physical resource pool; the console is configured to generate a resource scheduling request in response to a virtual machine instance creation operation performed by a user, and send the resource scheduling request to the target scheduling system, wherein the resource scheduling request is used to request the target scheduling system to prepare resources for a virtual machine instance to be created for a target scenario; the target scheduling system is configured to receive the resource scheduling request from the console, prepare resources for the virtual machine instance based on the resource scheduling request, obtain target physical resources to be used by the virtual machine instance from the target physical resource pool in response to the completion of resource preparation, and create the virtual machine instance by using the target physical resources, wherein the target physical resource pool is a physical resource pool shared by different virtual machine instances created for different application scenarios.
11. An electronic device, comprising: The method comprises the steps of: a memory storing an executable program; a processor configured to run the program, wherein the program performs the method of any one of claims 1 to 9 when running.
12. A computer-readable storage medium, characterized in that, The computer readable storage medium comprises a stored executable program, wherein the executable program controls the device where the storage medium is located to perform the method of any one of claims 1 to 9 when running.
13. A computer program product, characterised in that, The computer program is configured to implement the method of any one of claims 1 to 9 when executed by a processor.