A method for intelligent scheduling of network cards based on clusters
Patent Information
- Application Number
- CN202411846807.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-16
- Publication Date
- 2026-10-13
- Estimated Expiration
- 2044-12-16
AI Technical Summary
[0007]在云基础设施平台上,面对不同类型的物理网卡,不同网络虚拟化策略,以及虚拟机使用网络方式,若运维人员以虚拟机为维度去管理网络资源,会存在管理困难,网络资源未释放,网络资源分配不合理等导致网络资源利用率低的问题,还会使得网络资源重复分配,导致网络拥塞造成虚拟机开机失败的问题
[0043]本发明通过组建多个网络资源池,并将同步创建的多个消息队列分别部署于各个网络资源池内;针对集群中的每个服务器,利用对应的网络资源监控装置对服务器中网络资源的使用情况进行统计,得到统计结果,并根据统计结果分配网络资源;网络管理装置根据统计结果和消息队列,在所有网络资源池中筛选出所有满足待调度虚拟机需求的网络资源池;网络管理装置在所有满足待调度虚拟机需求的网络资源池中为待调度虚拟机选择目标服务器,并将选择结果下发至与目标服务器对应的网络资源监控装置;网络资源监控装置根据为待调度虚拟机配置的网络类型标签和物理网卡数量,按照评分规则将待调度虚拟机调度至目标服务器内的目标物理网卡上;与现有技术相比,本发明根据网络资源监控装置统计各网络资源池的负载情况,并利用网络控制装置将待调度虚拟机动态调度至最优的服务器上,提高了网络资源的使用率,减少了虚拟机因找不到网络资源导致开机失败的现象。
Smart Images

Figure CN119629180B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of computer network technology, and in particular to a method for intelligent scheduling of network interface cards (NICs) in a cluster. Background Technology
[0002] Network virtualization technology improves resource utilization efficiency and network flexibility by building multiple independent virtual networks on a physical network. It achieves network isolation and security, supports on-demand scaling and dynamic adjustment, simplifies network management, and reduces operational overhead, playing a key role in modern network applications such as cloud computing and data centers. Virtual machines and containers in the cloud place even higher demands on the ease of use, functionality, and performance of network virtualization technology.
[0003] Network virtualization has three methods: software emulation, virtio-based paravirtualization, and device passthrough. Among them, device passthrough accelerates the network data plane, allowing physical devices of the high-speed serial computer extended bus standard (PCIe, peripheral component interconnect express) to directly access the physical addresses allocated by the corresponding drivers running in the virtual machine's internal operating system, GuestOS.
[0004] Pure software simulation means that the usage and experience of using a virtual network card in the guest system are exactly the same as on a physical machine (except for performance), without the need to modify the kernel driver or configuration.
[0005] The emergence of Single Root I / O Virtualization (SR-IOV) allows a single physical device to virtualize multiple virtual devices, which are then passed directly to the virtual machines, enabling a single physical device to support multiple virtual machines in application scenarios.
[0006] Virtual machine networking can be used in host mode, Network Address Translation (NAT) mode, and bridged mode.
[0007] On cloud infrastructure platforms, when faced with different types of physical network cards, different network virtualization strategies, and the network usage methods of virtual machines, if operations and maintenance personnel manage network resources from the perspective of virtual machines, they will encounter problems such as management difficulties, unreleased network resources, and unreasonable allocation of network resources, resulting in low utilization of network resources. It will also lead to the duplicate allocation of network resources, causing network congestion and virtual machine boot failures. Summary of the Invention
[0008] This invention provides a cluster-based intelligent network card scheduling method, which aims to improve the utilization rate of network resources and reduce the phenomenon of virtual machines failing to boot due to not being able to find network resources.
[0009] To achieve the above objectives, the present invention provides a cluster-based intelligent network card scheduling method, which is applied to a cloud infrastructure platform. The cloud infrastructure platform includes a cluster consisting of multiple servers, a network management device, and multiple network resource monitoring devices. One network resource monitoring device corresponds to one server, and each server includes multiple physical network cards.
[0010] Intelligent scheduling methods for network interface cards include:
[0011] The system obtains a list of servers in the cluster, the network resources and virtualization types of each server, sets up multiple network resource pools of different types, and deploys multiple message queues created synchronously in each network resource pool. The network resource monitoring device communicates with the network management device through the message queues.
[0012] For each server in the cluster, the corresponding network resource monitoring device is used to collect statistics on the network resource usage of the server, obtain the statistical results, and allocate network resources based on the statistical results.
[0013] Based on statistical results and message queues, the network management device selects all network resource pools that meet the requirements of the virtual machines to be scheduled from all network resource pools.
[0014] According to the scheduling strategy, the network management device selects a target server for the virtual machine to be scheduled from all network resource pools that meet the needs of the virtual machine to be scheduled, and sends the selection result to the network resource monitoring device corresponding to the target server.
[0015] The network resource monitoring device schedules the virtual machines to be scheduled to the target physical network cards within the target server according to the network type label and the number of physical network cards configured for the virtual machines to be scheduled, and in accordance with the scoring rules.
[0016] Furthermore, multiple different types of network resource pools can be established, including:
[0017] Based on the virtualization type, multiple shared bridged network resource pools and multiple dedicated transparent network resource pools are set up. Each type of network resource pool includes at least one message queue and multiple network resource monitoring devices.
[0018] Furthermore, intelligent network interface card (NIC) scheduling methods also include:
[0019] The servers in the cluster are divided into one control node and multiple compute nodes;
[0020] The network management device is deployed on the control node to collect and analyze the data of the servers on each computing node in the message queue. Based on the analysis results, it selects a target server for the virtual machine to be scheduled from the shared bridged network resource pool or the exclusive transparent network resource pool that meets the needs of the virtual machine to be scheduled, and schedules the virtual machine to be scheduled to the target server.
[0021] The network resource monitoring device is deployed on the computing node. The network resource monitoring device corresponds one-to-one with the computing node. It is used to collect statistics on the network resource usage of the servers on the computing node and report the network resource statistics of the servers on each computing node to the network management device, and schedule the virtual machines to be scheduled to the target physical network card in the target server.
[0022] The message queue is deployed on the compute nodes, and there is a one-to-one correspondence between the message queue and the compute node.
[0023] Furthermore, message queues employ distributed queue technology and asynchronous communication methods.
[0024] Furthermore, the network management device includes a data center module and a scheduling service module;
[0025] The data center module communicates with each network resource monitoring device through message queues to analyze the data collected from the servers on each computing node from each message queue.
[0026] The scheduling service module communicates with the data center module to select a target server for the virtual machine to be scheduled from the shared bridged network resource pool or the exclusive transparent network resource pool that meets the needs of the virtual machine to be scheduled, based on the analysis results, and schedules the virtual machine to be scheduled to the target server.
[0027] Furthermore, each network resource monitoring device includes a resource acquisition module and a resource allocation module;
[0028] The resource acquisition module is used to collect statistics on the usage of network resources on computing nodes and store the statistical results in a message queue.
[0029] The resource allocation module is used to schedule virtual machines to be scheduled to the target physical network interface card (NIC) within the target server based on statistical results. It is also used to split or virtualize physical NICs according to different virtual types.
[0030] Furthermore, network resources on a computing node include:
[0031] The physical network card model, single root input / output virtualization segmentation usage, shared network I / O throughput, number of shared network virtual machines allocated, and average number of packet losses per hour.
[0032] Furthermore, based on the analysis results, a target server is selected for the virtual machine to be scheduled from either a shared bridged network resource pool or a dedicated transparent network resource pool that meets the needs of the virtual machine to be scheduled, including:
[0033] All servers in the shared bridged network resource pool that meet the requirements of the virtual machines to be scheduled are scored to obtain the first score result. The server with the highest score in the first score result is selected as the first candidate server.
[0034] All servers in the exclusive transparent network resource pool that meet the requirements of the virtual machines to be scheduled are scored to obtain a second score result. The server with the highest score in the second score result is selected to obtain the second candidate server.
[0035] Compare the ratings of the first and second candidate servers, and select the server with the highest rating as the target server.
[0036] Furthermore, the scoring calculation expression for all servers in the shared bridged network resource pool that meet the needs of the virtual machines to be scheduled is as follows:
[0037] Mark1=HVm*HW1+HIn*HW2+HLvn*HW3
[0038] Where Mark1 represents the first score result, HVm represents the number of shared network virtual machines allocated, HW1 represents the weight corresponding to the number of shared network virtual machines allocated, HIn represents the shared network I / O throughput, HW2 represents the weight corresponding to the shared network I / O throughput, HLvn represents the average number of packet losses per hour, and HW3 represents the weight corresponding to the average number of packet losses per hour.
[0039] Furthermore, the scoring calculation expression for all servers in the exclusive transparent network resource pool that meet the needs of the virtual machines to be scheduled is as follows:
[0040] Mark2 = HWu * HW0 + HWu * HW1
[0041] Where Mark2 represents the second scoring result, HWu represents the usage of single-root input / output virtualization partitioning, and HW0 represents the weight corresponding to the usage of single-root input / output virtualization partitioning.
[0042] The above-described solution of the present invention has the following beneficial effects:
[0043] This invention establishes multiple network resource pools and deploys multiple synchronously created message queues within each pool. For each server in the cluster, a corresponding network resource monitoring device statistically analyzes the network resource usage, obtains statistical results, and allocates network resources based on these results. A network management device, based on the statistical results and message queues, selects all network resource pools that meet the requirements of the virtual machines to be scheduled. The network management device then selects a target server for each virtual machine from these pools and sends the selection result to the corresponding network resource monitoring device. The network resource monitoring device, based on the network type label and number of physical network cards configured for the virtual machine, schedules the virtual machine to the target physical network card on the target server according to a scoring rule. Compared to existing technologies, this invention improves network resource utilization by using the network resource monitoring device to statistically analyze the load of each network resource pool and dynamically schedules the virtual machines to the optimal server using a network control device. This reduces the likelihood of virtual machines failing to boot due to a lack of network resources.
[0044] Other beneficial effects of the present invention will be described in detail in the following detailed description section. Attached Figure Description
[0045] Figure 1 This is a flowchart illustrating an embodiment of the present invention;
[0046] Figure 2 This is an architecture diagram of an embodiment of the present invention;
[0047] Figure 3 This is a schematic diagram of the scheduling process for the virtual machine to be scheduled in an embodiment of the present invention. Detailed Implementation
[0048] To make the technical problems, solutions, and advantages of this invention clearer, a detailed description will be provided below with reference to the accompanying drawings and specific embodiments. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.
[0049] In the description of this invention, the terms "first," "second," and "third" are used for descriptive purposes only and should not be construed as indicating or implying relative importance.
[0050] In the description of this invention, it should be noted that, unless otherwise explicitly specified and limited, the terms "installation," "connection," and "linking" should be interpreted broadly. For example, they can refer to a locking connection, a detachable connection, or an integral connection; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; and they can refer to the internal connection of two components. Those skilled in the art can understand the specific meaning of the above terms in this invention based on the specific circumstances.
[0051] Furthermore, the technical features involved in the different embodiments of the present invention described below can be combined with each other as long as they do not conflict with each other.
[0052] This invention addresses existing problems by providing a method for intelligent network interface card scheduling based on a cluster.
[0053] like Figure 1-3 As shown, an embodiment of the present invention provides a cluster-based intelligent network card scheduling method, which is applied to a cloud infrastructure platform. The cloud infrastructure platform includes a cluster consisting of multiple servers, a network management device, and multiple network resource monitoring devices. One network resource monitoring device corresponds to one server, and each server includes multiple physical network cards.
[0054] Intelligent scheduling methods for network interface cards include:
[0055] S1: Obtain the list of servers in the cluster, the network resources and virtualization type of each server, build multiple network resource pools of different types, and deploy multiple message queues created synchronously in each network resource pool. The network resource monitoring device communicates with the network management device through the message queues.
[0056] S2: For each server in the cluster, use the corresponding network resource monitoring device to count the usage of network resources on the server, obtain the statistical results, and allocate network resources according to the statistical results;
[0057] S3: Based on statistical results and message queues, the network management device selects all network resource pools that meet the requirements of the virtual machines to be scheduled from all network resource pools.
[0058] S4. According to the scheduling strategy, the network management device selects a target server for the virtual machine to be scheduled from all network resource pools that meet the needs of the virtual machine to be scheduled, and sends the selection result to the network resource monitoring device corresponding to the target server.
[0059] S5: The network resource monitoring device schedules the virtual machines to be scheduled to the target physical network cards in the target server according to the network type label and the number of physical network cards configured for the virtual machines to be scheduled, in accordance with the scoring rules.
[0060] Specifically, the cloud infrastructure platform also includes a cluster manager for centralized management of multiple target servers, enabling cluster functionality in the cluster manager and ensuring that all servers have joined the cluster; and enabling the cluster's network interface card (NIC) intelligent scheduling function in the cluster manager so that it can automatically manage and schedule network resources.
[0061] It should be noted that, in this embodiment of the invention, a cluster is a unified computer composed of multiple servers with the same functions, which performs the same business and provides computing, network, storage and other resources to the outside world, and has the characteristics of scalability and high availability. A network resource pool is an independent network resource pool composed of the physical network cards of the servers. The servers in the network resource pool can be all the servers in the cluster or some of the servers in the cluster. The resources in the network resource pool can be the physical network cards of all the servers in the cluster or some of the physical network cards of the servers in the cluster. The advantage of resource pooling is that it can be allocated on demand, the resources are unlimited, and it is a virtual resource pool that can be expanded / contracted as needed.
[0062] In this embodiment of the invention, the virtual machine starts the automatic network scheduling function, provided that a network resource pool already exists in the cluster. If it does not exist, a network resource pool needs to be created. When the virtual machine is created, the corresponding network resource pool and the number of virtual network cards are selected according to the service type. When the virtual machine starts, it requests virtual network resources from the network management device according to the configuration file.
[0063] Specifically, multiple different types of network resource pools are established, including:
[0064] Based on the virtualization type, multiple shared bridged network resource pools and multiple dedicated transparent network resource pools are set up. Each type of network resource pool includes at least one message queue and multiple network resource monitoring devices.
[0065] In this embodiment of the invention, under the condition that the cloud infrastructure platform has enabled the cluster function, the operation and maintenance personnel create different types of network resource pools and generate message queues according to the actual business scale based on the cluster. Then, they select the network virtualization type and divide the network resource pools into shared bridged network resource pools and dedicated transparent network resource pools according to the usage scenario. They also select some or all of the idle physical network cards in the cluster and send the network resource pool creation information to the network management device and the network resource monitoring device.
[0066] Specifically, network interface card (NIC) intelligent scheduling methods also include:
[0067] The servers in the cluster are divided into one control node and multiple compute nodes;
[0068] The network management device is deployed on the control node to collect and analyze the data of the servers on each computing node in the message queue. Based on the analysis results, it selects a target server for the virtual machine to be scheduled from the shared bridged network resource pool or the exclusive transparent network resource pool that meets the needs of the virtual machine to be scheduled, and schedules the virtual machine to be scheduled to the target server.
[0069] The network resource monitoring device is deployed on the computing node. The network resource monitoring device corresponds one-to-one with the computing node. It is used to collect statistics on the network resource usage of the servers on the computing node and report the network resource statistics of the servers on each computing node to the network management device, and schedule the virtual machines to be scheduled to the target physical network card in the target server.
[0070] The message queue is deployed on the compute nodes, and there is a one-to-one correspondence between the message queue and the compute node.
[0071] It should be noted that the network management device is a process or program running on the control node, used to collect and analyze data from servers on each compute node in the message queue. Based on the analysis results, it selects a target server for the virtual machine to be scheduled from a shared bridged network resource pool or a dedicated transparent network resource pool that meets the needs of the virtual machine to be scheduled, and schedules the virtual machine to be scheduled to the target server to maximize network performance. The network resource monitoring device is a process or program running on the compute node, used to statistically analyze the network resource usage of servers on the compute node, and report the network resource statistics of servers on each compute node to the network management device, and schedules the virtual machine to be scheduled to the target physical network card in the target server.
[0072] Ideally, the message queue should employ distributed queue technology to ensure the reliability and high concurrency of communication between modules, while also handling communication between modules through asynchronous communication.
[0073] Preferably, the network management device includes a data center module and a scheduling service module;
[0074] The data center module communicates with each network resource monitoring device through message queues to analyze the data collected from the servers on each computing node from each message queue.
[0075] The scheduling service module communicates with the data center module to select a target server for the virtual machine to be scheduled from the shared bridged network resource pool or the exclusive transparent network resource pool that meets the needs of the virtual machine to be scheduled, based on the analysis results, and schedules the virtual machine to be scheduled to the target server.
[0076] In this embodiment of the invention, after the network management device receives the information to create a network resource pool, it obtains the server list and the list of physical network interface cards (NICs) and virtualization type in each server, generates a network resource pool identifier corresponding to the virtualization type, and sends the data carrying the network resource pool identifier, the list of physical NICs, and the virtualization type to the network resource monitoring device.
[0077] Ideally, each network resource monitoring device includes a resource acquisition module and a resource allocation module;
[0078] The resource acquisition module is used to collect statistics on the usage of network resources on computing nodes and store the statistical results in a message queue.
[0079] The resource allocation module is used to schedule virtual machines to be scheduled to the target physical network interface card (NIC) within the target server based on statistical results. It is also used to split or virtualize physical NICs according to different virtual types.
[0080] In this embodiment of the invention, when the network resource monitoring device receives information about creating a network resource pool and data carrying the network resource pool identifier, a list of physical network interface cards (NICs), and the virtualization type, the resource allocation module processes the network resource pool according to the virtualization type and the list of physical NICs. For a dedicated transparent network resource pool, the physical NICs are divided into multiple independent NICs according to their models and configuration files, and each NIC is labeled with a corresponding type. These are then managed and scheduled uniformly by the network management device. For a shared bridged network resource pool, a corresponding virtual switch is created, bound to a specified physical NIC, and responsible for the network communication of virtual machines on the server, and labeled with a corresponding type.
[0081] The network management device receives a virtual machine requesting virtual network resources. Based on the virtualization type tag, it initially filters out all network resource pools that meet the requirements. If no such pool is found, it returns that no network resource of that type tag exists, the virtual machine fails to boot, and prompts the user to reselect a network type tag. The server uses different scoring criteria for resource pools with different type tags, and each metric has a different fixed weight. Network resources on the compute nodes are used as the metric, and these metrics include:
[0082] The physical network card model, single root input / output virtualization segmentation usage, shared network I / O throughput, number of shared network virtual machines allocated, and average number of packet losses per hour.
[0083] It should be noted that the use of single input / output virtualization splitting refers to the number of physical network cards split within the same server, and also to the number of spatial network cards within the same server.
[0084] Since physical network cards have different functions, different models of network cards also have different functions. Therefore, in order to determine the number of available network cards, it is necessary to first determine the model of the physical network card.
[0085] Shared network I / O throughput refers to the I / O throughput of the network card within the same server, calculated as an hourly average.
[0086] The number of shared network virtual machines allocated refers to the number of virtual machines (shu.liang) running on the same network interface card (NIC) within the same server.
[0087] The average hourly packet loss rate refers to the number of packets lost by the network interface card within the same server.
[0088] In this embodiment of the invention, when resources are sufficient, the optimal computing node is selected from the network resource pool. This is mainly based on the number of physical network cards of the host in the network resource pool, the number of idle sriov network cards after splitting, the IO throughput of the shared-bridged mode network cards, and the average number of packet losses per hour. Each item is statistically analyzed based on idle resources. The more idle resources, the higher the score. The lower the IO throughput and the lower the number of packet losses, the higher the score. The server with the highest comprehensive score is selected, and the optimal server sends the message to the network resource monitoring device.
[0089] Specifically, based on the analysis results, a target server is selected for the virtual machine to be scheduled from either a shared bridged network resource pool or a dedicated transparent network resource pool that meets the requirements of the virtual machine to be scheduled, including:
[0090] All servers in the shared bridged network resource pool that meet the requirements of the virtual machines to be scheduled are scored to obtain the first score result. The server with the highest score in the first score result is selected as the first candidate server.
[0091] All servers in the exclusive transparent network resource pool that meet the requirements of the virtual machines to be scheduled are scored to obtain a second score result. The server with the highest score in the second score result is selected to obtain the second candidate server.
[0092] The scores of the first and second candidate servers are compared, and the server with the highest score is selected as the target server. The scheduling goal is to schedule the virtual machines to be scheduled to different physical network cards within the target server, so as to achieve dynamic load balancing of all network card resources within the server.
[0093] Furthermore, the scoring calculation expression for all servers in the shared bridged network resource pool that meet the needs of the virtual machines to be scheduled is as follows:
[0094] Mark1=HVm*HW1+HIn*HW2+HLvn*HW3
[0095] Where Mark1 represents the first score result, HVm represents the number of shared network virtual machines allocated, HW1 represents the weight corresponding to the number of shared network virtual machines allocated, HIn represents the shared network I / O throughput, HW2 represents the weight corresponding to the shared network I / O throughput, HLvn represents the average number of packet losses per hour, and HW3 represents the weight corresponding to the average number of packet losses per hour.
[0096] Furthermore, the scoring calculation expression for all servers in the exclusive transparent network resource pool that meet the needs of the virtual machines to be scheduled is as follows:
[0097] Mark2 = HWu * HW0 + HVm * HW1
[0098] Where Mark2 represents the second scoring result, HWu represents the usage of single-root input / output virtualization partitioning, and HW0 represents the weight corresponding to the usage of single-root input / output virtualization partitioning.
[0099] It should be noted that after the virtual machine to be scheduled is shut down, the network resource monitoring device detects that the virtual machine on the host is shut down, releases and reclaims the network resources used by the virtual machine, reports it to the network management device of the control node, and updates the network resource usage information on the node.
[0100] This invention establishes multiple network resource pools and deploys multiple synchronously created message queues within each pool. For each server in the cluster, a corresponding network resource monitoring device statistically analyzes the network resource usage, obtains statistical results, and allocates network resources based on these results. A network management device, based on the statistical results and message queues, selects all network resource pools that meet the requirements of the virtual machines to be scheduled. The network management device then selects a target server for each virtual machine from these pools and sends the selection result to the corresponding network resource monitoring device. The network resource monitoring device, based on the network type label and number of physical network cards configured for the virtual machine, schedules the virtual machine to the target physical network card on the target server according to a scoring rule. Compared to existing technologies, this invention improves network resource utilization by using the network resource monitoring device to statistically analyze the load of each network resource pool and dynamically schedules the virtual machines to the optimal server using a network control device. This reduces the likelihood of virtual machines failing to boot due to a lack of network resources.
[0101] The above description represents the preferred embodiments of the present invention. It should be noted that those skilled in the art can make various improvements and modifications without departing from the principles of the present invention, and these improvements and modifications should also be considered within the scope of protection of the present invention.
Claims
1. A method for intelligent network interface card scheduling based on a cluster, characterized in that, It is applied to a cloud infrastructure platform, which includes a cluster of multiple servers, a network management device, and multiple network resource monitoring devices. Each network resource monitoring device corresponds to one server, and each server includes multiple physical network cards. The network interface card (NIC) intelligent scheduling method includes: The system obtains the server list, network resources and virtualization type of each server in the cluster, establishes multiple shared bridged network resource pools and multiple dedicated transparent network resource pools, and deploys multiple message queues created simultaneously in each network resource pool. The network resource monitoring device communicates with the network management device through the message queues. For each server in the cluster, the network resource usage of the server is statistically analyzed using the corresponding network resource monitoring device to obtain statistical results, and network resources are allocated based on the statistical results. Based on the statistical results and the message queue, the network management device selects all network resource pools that meet the requirements of the virtual machines to be scheduled from all network resource pools. According to the scheduling strategy, the network management device selects a target server for the virtual machine to be scheduled from all network resource pools that meet the requirements of the virtual machine to be scheduled, and sends the selection result to the network resource monitoring device corresponding to the target server. The network management device includes a data center module and a scheduling service module. The data center module communicates with each of the network resource monitoring devices through message queues to analyze the data collected from the servers on each computing node from each message queue. The scheduling service module communicates with the data center module to select a target server for the virtual machine to be scheduled from a shared bridged network resource pool or a dedicated transparent network resource pool that meets the requirements of the virtual machine to be scheduled, based on the analysis results. This includes: Each server in the shared bridged network resource pool that meets the requirements of the virtual machine to be scheduled is scored, and the score calculation expression for the first score result is as follows: in, This indicates the first score result. Indicates the number of virtual machines allocated in the shared network. This represents the weight corresponding to the number of virtual machines allocated in the shared network. Indicates shared network I / O throughput. The weights representing the shared network I / O throughput This represents the average number of packets lost per hour. The weight corresponding to the average number of packet losses per hour is used to filter the servers with the highest scores in the first scoring results to obtain the first candidate servers; Each server in the dedicated transparent network resource pool that meets the requirements of the virtual machine to be scheduled is scored, and the scoring calculation expression for the second scoring result is as follows: in, This indicates the second scoring result. This indicates the usage of single-root input / output virtualization splitting. The weights corresponding to the use of single-root input / output virtualization splitting are used to filter the servers with the highest scores in the second scoring results, thus obtaining the second candidate servers. Compare the scores of the first candidate server and the second candidate server, select the server with the highest score as the target server, and schedule the virtual machine to be scheduled to the target server; The network resource monitoring device schedules the virtual machine to be scheduled onto the target physical network card in the target server according to the network type label and the number of physical network cards configured for the virtual machine to be scheduled, and in accordance with the scoring rules.
2. The intelligent network card scheduling method based on clustering according to claim 1, characterized in that, Each network resource pool includes at least one message queue and multiple network resource monitoring devices.
3. The intelligent network card scheduling method based on clustering according to claim 2, characterized in that, The intelligent scheduling method for network interface cards also includes: The servers in the cluster are divided into one control node and multiple computing nodes; The network management device is deployed on the control node and is used to collect and analyze the data of the servers on each computing node in the message queue. Based on the analysis results, it selects a target server for the virtual machine to be scheduled from the shared bridged network resource pool or the exclusive transparent network resource pool that meets the needs of the virtual machine to be scheduled, and schedules the virtual machine to be scheduled to the target server. The network resource monitoring device is deployed on the computing node, and there is a one-to-one correspondence between the network resource monitoring device and the computing node. It is used to statistically analyze the network resource usage of the servers on the computing node, and report the network resource statistics of the servers on each computing node to the network management device, and schedule the virtual machine to be scheduled to the target physical network card in the target server.
4. The intelligent network card scheduling method based on clustering according to claim 3, characterized in that, The message queue employs distributed queue technology and asynchronous communication.
5. The intelligent network card scheduling method based on clustering according to claim 3, characterized in that, Each of the aforementioned network resource monitoring devices includes a resource acquisition module and a resource allocation module; The resource acquisition module is used to collect statistics on the usage of network resources on computing nodes and store the statistical results in a message queue. The resource allocation module is used to schedule virtual machines to be scheduled to the target physical network interface card (NIC) within the target server based on statistical results, and is also used to split or virtualize physical NICs according to different virtualization types.
6. The intelligent network card scheduling method based on clustering according to claim 5, characterized in that, The network resources on the computing node include: The physical network card model, single root input / output virtualization segmentation usage, shared network I / O throughput, number of shared network virtual machines allocated, and average number of packet losses per hour.
Citation Information
Patent Citations
Cloud platform, cloud platform management method and device, electronic equipment and storage medium
CN112286632A
Virtual machine NUMA automatic scheduling method based on cluster
CN118733194A