CN111857946A - 基于位置的虚拟化工作负载放置 - Google Patents
基于位置的虚拟化工作负载放置 Download PDFInfo
- Publication number
- CN111857946A CN111857946A CN202010136183.5A CN202010136183A CN111857946A CN 111857946 A CN111857946 A CN 111857946A CN 202010136183 A CN202010136183 A CN 202010136183A CN 111857946 A CN111857946 A CN 111857946A
- Authority
- CN
- China
- Prior art keywords
- network
- nodes
- virtualization
- data center
- workload placement
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 claims abstract description 49
- 238000012545 processing Methods 0.000 claims description 34
- 235000008694 Humulus lupulus Nutrition 0.000 claims description 6
- 230000009467 reduction Effects 0.000 claims description 2
- 238000004891 communication Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 239000004744 fabric Substances 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000001914 filtration Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012913 prioritisation Methods 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 239000010410 layer Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0895—Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
- H04L41/122—Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/40—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
- H04L41/5054—Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/065—Generation of reports related to network devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Stored Programmes (AREA)
Abstract
提供了基于位置的虚拟化工作负载放置。在一些示例中,一种方法包括:利用计算机虚拟化调度器接收针对虚拟化设备的网络位置信息;利用计算机虚拟化调度器接收针对虚拟化设备的网络利用率信息;以及利用计算机虚拟化调度器并且基于接收到的网络位置信息和接收到的网络利用率信息来确定虚拟化工作负载放置,以最大化可用网络带宽并且最小化虚拟化设备之间的网络延迟。
Description
背景技术
云计算已经明显影响了信息技术(“IT”)基础架构的使用方式。借助于虚拟化技术,可以使用从公共云环境到依赖于本地硬件的内部数据中心等各种虚拟基础架构来部署工作负载。经由这样的虚拟基础架构,不断为应用创建、部署和使用新的工作负载。
附图说明
图1是根据一个示例的方法的流程图;
图2是示例“默认”网络位置设置的图示;
图3是示例“本地”网络位置设置的图示;
图4是示例“邻近”网络位置设置的图示;
图5是示例“直接”网络位置设置的图示;
图6是根据一个示例的计算设备的图;以及
图7是根据一个示例的机器可读存储介质的图。
具体实施方式
以下讨论涉及本公开的各种示例。尽管这些示例中的一个或多个示例可能是优选的,但不应当将本文中公开的示例解释为或以其他方式使用为限制包括权利要求在内的本公开的范围。另外,以下描述具有广泛的应用,并且任何示例的讨论仅意在描述该示例,而无意暗示将包括权利要求在内的本公开的范围限制到该示例。在整个本公开中,术语“一”和“一个”旨在表示特定元件中的至少一个。另外,如本文中使用的,术语“包括”是指包括但不限于,术语“包括的”是指包括但不限于。术语“基于”是指至少部分基于。
虚拟机(“VM”)是用于部署云计算应用基础架构的流行机制。在一些实现中,VM的多个实例可以共享相同的物理硬件,并且每个应用VM可以具有自己的操作系统、网络和存储的集合。在某些情况下,可能优选的是使用虚拟化容器而不是VM来部署应用工作负载。如本文中使用的,术语“容器”(container)例如可以是指操作系统级虚拟化,其中内核或其他机制允许多个隔离的用户空间实例。这样的实例例如可以被称为容器、分区、虚拟化引擎(“VE”)、监狱或其他合适的术语。,这样的实例例如可以被设计为从在实例中运行的程序的角度来看像是真实的计算机。与可以查看运行该程序的计算机的所有资源(例如,连接的设备、文件和文件夹、网络共享、中央处理器(“CPU”)电源、可量化硬件能力)的常规计算机程序相比,在容器内运行的程序可以被设计为可见性仅限于容器的内容和指派给容器的特定设备。在某些实现中,这样的容器可以包括附加的隔离机制,这些机制可以提供资源管理功能,以限制一个容器的活动对其他容器的影响。
容器化基础架构是当今IT增长最快的市场之一。Kubernetes已经成为容器集群管理和工作负载编排的事实上的准则,但它完全没有意识到网络拓扑和利用率。也就是说,与CPU/存储器和存储不同,作为DevOps IT基础架构的第三支柱,网络在工作负载调度和放置时完全缺失。因此,有可能确实将应用容器集(Pod)随机地调度到分布在整个群集中的节点(例如,服务器)上,潜在地可能会比在实现给定微服务或应用的多个容器之间的必要网络延迟或期望网络延迟更长。这例如可能会降低整体网络和数据中心效率,并且可能驱动行业朝着过度供应网络的设计发展。用于节点接近性的已有方法通过亲和力约束而可用。然而,这些将调度限制在完全相同的节点上,而不是调度到直接连接与已有应用容器集相同的(多个)网络交换机的任何节点。其他方法使用手动节点和容器集标签来标识用于邻近性调度的位置。这些都不是自动的或可自动化的,也不能包括网络利用率准则。
工作负载放置是管理数据中心效率的关键问题。本公开的某些实现涉及基于位置的虚拟化工作负载放置。在一些实现中,一种方法例如可以包括:(a)利用计算机虚拟化调度器接收针对虚拟化设备的网络位置信息;(b)利用计算机虚拟化调度器接收针对虚拟化设备的网络利用率信息;以及(c)利用计算机虚拟化调度器并且基于接收到的网络位置信息和接收到的网络利用率信息来确定虚拟化工作负载放置,以最大化可用网络带宽并且最小化虚拟化设备之间的网络延迟。本公开的某些实现涉及将网络意识和自动化引入到Kubernetes容器容器集调度中,并且详细介绍OpenShift和本机Kubernetes的实现。在某些情况下,这样的方法可以通过用于计算节点和可组合结构上的网络位置的Kubernetes调度器扩展,来在OpenShift上提供更高的资源效率。
如本文中使用的,“可组合结构”和相关术语例如可以是指为工作负载驱动的性能和规模目的而构建的软件定义的网络结构。这样的结构例如可以解决数据平面、控制平面和集成平面上的问题。在数据平面上,机架连接性模块例如可以形成可以提供物理连接性、拓扑和数据/分组转发的可组合的网络结构或数据平面。在这样的结构中,连接性和路由例如可以折叠为单个构件而不使用专用的骨干交换机。在这样的结构中,控制和管理平面例如可以补充在数据平面中使用的嵌入式协议并且为网络提供单点管理,同时还提供API以直接从外部系统操纵网络状态和对象。
本公开的某些实现提供了一种应用工作负载或工作负载编排系统,该系统能够查询网络以获得关于工作负载放置的输入。
本公开的某些实现可以在调度容器化应用时利用网络邻近性,以减少延迟并且增加整体网络效率。本公开的某些实现允许该编排系统查询网络并且接收满足基于特定性能的要求的一组资源。使用这样的信息,编排系统例如可以调节工作负载放置以满足资源可用性和性能要求。在阅读说明书和附图之后,本文中呈现的实现的其他优点将很清楚。
图1示出了与基于位置的虚拟化工作负载放置有关的示例方法100的流程图。在一些实现中,方法100可以以电子电路的形式(例如,在专用集成电路(ASIC)上)和/或其他合适形式,通过使用存储在存储器资源(例如,图6的计算设备的存储器资源)上的可执行指令、存储在存储介质(例如,图7的介质)上的可执行机器可读指令来实现或以其他方式执行。尽管出于说明目的,本文中对方法100的描述主要是指在服务器上执行的步骤,但应当理解,在一些实现中,方法100可以在联网环境内的另一计算设备上或在联网环境内的数据通信中执行。在一些实现中,方法100可以在网络设备上并行执行(例如,以分布式计算方式)。
方法100包括利用计算机虚拟化调度器接收(在框102处)针对虚拟化设备的网络位置信息。计算机虚拟化调度器例如可以是容器化应用调度器或容器应用容器集调度器,如本文中进一步详细描述的。本文中使用的术语“虚拟化设备”和相关术语例如可以是指用于虚拟化的任何合适的设备,诸如某些服务器、网络交换机、存储设备等。
本文中使用的术语“网络位置信息”和相关术语例如可以是指数据中心的单个机架和/或多个机架内的虚拟化设备的物理拓扑信息。本文中提供了这样的网络位置信息的其他示例。在一些实现中,网络位置信息由网络管理员经由标签输入。在一些实现中,网络位置信息基于所配置的网络拓扑信息被自动输入。
方法100包括利用计算机虚拟化调度器接收(在框104处)针对虚拟化设备的网络利用率信息。本文中使用的术语“网络利用率信息”和相关术语例如可以是指延迟水平、带宽水平和/或交换机连接性信息。关于本公开的特定示例实现,本文中提供了这样的网络利用率信息的其他示例。
方法100包括利用计算机虚拟化调度器并且基于接收到的网络位置信息和接收到的网络利用率信息来确定(在框106处)虚拟化工作负载放置,以最大化可用网络带宽并且最小化虚拟化设备之间的网络延迟。本文中使用的术语“工作负载放置”和相关术语例如可以是指选择用于运行虚拟化资源的多个服务器,虚拟化资源举例而言诸如是容器化微服务或应用。
例如,框106的工作负载放置可以由除以上明确提到的因素之外的很多合适因素来确定。例如,在某些实现中,可以基于包括CPU、存储器和存储利用率在内的因素。在一些实现中,工作负载放置被确定以最小化虚拟化设备的节点之间的网络交换机转接数(或“跳数”)。
例如,框106的工作负载放置可以通过基于上述某些因素或其他合适因素对某些节点进行优先级排序和/或排名来确定。例如,在一些实现中,工作负载放置允许对潜在容器化节点集合进行排名,以针对低延迟、高带宽和/或直接交换机连接性进行优化。在一些实现中,确定虚拟化工作负载放置包括基于网络位置对节点进行优先级排序。在一些实现中,工作负载放置通过对导致容器化应用的跳数减少的虚拟化设备进行优先级排序来确定。在一些实现中,工作负载放置通过对数据中心中的节点之间的高带宽链路进行优先级排序来确定。在一些实现中,工作负载放置通过部分基于位置和带宽对数据中心中的可用节点进行排名来确定。在一些实现中,工作负载放置通过基于节点的网络利用率对潜在容器化节点集合进行排名来确定。在一些实现中,工作负载放置允许对潜在容器化节点进行排名,同时允许对经排名的潜在容器化节点集合的特定于应用的定制。
在一些实现中,可以提供各种预定的工作负载放置确定配置。下面提供了一些示例配置:
默认(参见图2)
·过滤——无调整
·优先级排序——将网络/结构利用率添加到已有的CPU/存储器/磁盘准则中
本地(参见图3)
·过滤——从已有项目/应用节点中去除节点,而不是一个交换机跳点·优先级排序——添加网络利用率准则;按结构利用率进行排名
邻近(参见图4)
·过滤——从已有项目/应用节点去除节点,而不是一个机架
·优先级排序——添加网络利用率准则;按结构利用率进行排列
直接(见图5)
·过滤——去除不在项目/应用已经使用的(多个)机架中的节点
·优先级排序——将网络利用率添加到已有的CPU/存储器/磁盘准则中
应当理解,方法100的一个或多个操作可以周期性地执行。例如,在一些实现中,框102、104和106中的一个或多个(或本文中描述的其他操作)可以周期性地执行。框102、104和106(或本文中描述的其他操作)的各种周期时间可以是相同或不同的时间。例如,在一些实现中,框102的周期是每1分钟,而框104的周期是每2分钟。还应当理解,给定框的周期可以是规则的(例如,每1分钟),或者可以是不规则的(例如,在第一条件期间是每2分钟,而在第二网络条件期间是每3分钟)。在一些实现中,框102、104和106(或本文中描述的其他操作)中的一个或多个可以是非周期性的,并且可以通过某个网络或其他事件来触发。
尽管图1的流程图示出了特定执行顺序,但应当理解,该顺序可以被重新布置为另一合适的顺序,可以同时执行,或者部分并发执行,或者组合执行。同样,合适的附加和/或相当的步骤可以添加到方法100或本文中描述的其他方法中,以实现相同或相当的功能。在一些实现中,一个或多个步骤被省略。例如,在一些实现中,接收网络利用率信息的框104可以从方法100中省略,或者由不同的设备执行。应当理解,与本文中描述的其他实现的附加或替代功能相对应的框可以被并入方法100中。例如,与本文中以其他方式描述的实现的各个方面的功能相对应的框也可以被并入方法100中,即使这样的功能在本文中未明确地标识为方法100中的框。
现在将描述本公开的各种示例实现。应当理解,这些示例可以包括或指代本文中描述的其他实现的某些方面(反之亦然),但无意限制到本文中描述的其他实现。此外,应当理解,这些实现的某些方面可以被应用于本文中描述的其他实现。
在本公开的一些实现中,数据中心网络拓扑和位置数据通过已有机制(标签和/或注释)被添加到Kubernetes基础设施。网络拓扑感知容器集调度引擎被连接到已有Kubernetes调度器扩展框架,以添加调度模块用于使用网络数据针对容器集调度来对节点进行过滤和优先级排序。这些扩展例如可以将Kubernetes集群调度能力扩展到包括数据中心网络邻近性和约束。网络邻近性调度约束例如可以针对低延迟、高带宽或直接交换机连接性进行优化,并且可以包括针对给定微服务或应用的已有运行容器集的标识。
可以理解,数据中心网络拓扑例如可以以多个阶段来构建。第一阶段被实现在服务器节点上,并且第一阶段包括捕获每个服务器的物理网络配置并且用物理网络配置来注释针对该服务器节点的Kubernetes应用程序编程接口(API)条目,特别是用每个物理网络接口控制器(“NIC”)的媒体访问控制(“MAC”)地址来进行注释。第二阶段是在数据中心网络控制器上使用来自数据中心交换机的互连(对等)数据来实现,这样的互连(对等)数据指示数据中心交换机之间的所有内部连接。这样的数据可以用于在数据中心交换机之间建立连接图,包括对等交换机之间的潜在可用带宽。然后,可以使用网络邻居通告(链路层发现协议(“LLDP”)分组)或来自数据中心交换机的直接MAC地址查找表,将服务器节点网络适配器映射到数据中心网络拓扑。因此,构建了包括数据中心交换机和服务器节点的整个网络拓扑图,包括所有可用互连路径并且包括每个互连路径上的可用带宽。
根据本公开的某些实现,可以通过已有调度器扩展机制,利用网络感知的过滤和优先级排序方法来增强Kubernetes容器集调度。过滤方法例如可以消除不符合所请求的网络位置的候选节点。由本公开的某些实现使用的优先级排序方法例如可以按照去往/来自每个其余节点的可用结构带宽的顺序,对(过滤之后的)其余节点进行排名。
在某些实现中,可以请求多个网络位置设置,包括直接(图5)、邻近(图4)、本地(图3)、默认(图2)或禁用。任何设置可以在群集范围内或特定于应用。这样的“直接”位置设置例如可以请求将给定应用/项目/命名空间(下文中简称为“应用”)的容器容器集调度在均连接至同一数据中心交换机的节点上。这样的“邻近”位置设置例如可以请求将应用容器容器集调度在连接到相距单跳的交换机(无中间交换机)并且这些交换机之间具有最大可用带宽的节点上。这样的“本地”位置设置例如可以请求将应用容器容器集调度在连接到相距单跳的交换机(无介于中间的交换机)的节点上,而不管这些交换机之间的可用带宽如何。这样的“默认”位置设置例如可以允许放置在群集中的任何节点上。这样的“禁用”位置设置例如可以从Kubernetes调度过程中完全去除对网络的考虑。在上述所有情况下(在一些实现中“禁用”的情况除外),可用候选节点可以按可用带宽进行优先级排序。
所提出的某些实现例如可以为Kubernetes提供集群范围的调度算法默认项、以及每个应用的或应用内特定容器容器集的用户可定义覆盖。这些用户可定义覆盖可以简单地通过使用Kubernetes API中具有所定义的标签名称和值的已有标签机制来实现。
应当理解,本公开的某些实现可以专注于单个层——数据中心网络,并且专注于优化该结构内的位置,包括非分层网络拓扑。某些已有解决方案参考节点邻近性的概念以用于在故障域邻近性方面的调度。这样的解决方案试图防止在给定的故障域内调度过多的应用容器容器集。本公开是对这项工作的补充,因为本公开专注于在单个节点之外但在单个结构的故障域内的实体。两种解决方案可以共存于一个环境中,其中一组调度扩展相对于定义的边界推动容器集间隔更远,而另一组调度扩展在边界内推动容器集更靠近。
某些已有解决方案与单个容器的调度有关,而不是与应用容器集合有关。在这样的解决方案中,很可能随机地选择第一节点。如果认为该节点不合适,则从矩阵中选择“第二”节点。本公开的某些实现包括协作方法,由此将网络位置属性(例如,延迟和/或带宽“距离”)包括到更大的节点选择过程中,该节点选择过程包括整体调度过程中的CPU负载、存储器负载、磁盘使用和亲和力/反亲和力,等等。
图6是根据本公开的例如可以用作容器化应用调度系统的计算设备108的图。计算设备108的形式例如可以是在网络环境内或与网络环境或其设备通信的服务器或另一合适的计算设备。如下面进一步详细描述的,计算设备108包括处理资源110和存储器资源114,存储器资源114存储机器可读指令116和118。为了说明,计算设备108的描述参考某些图、方法和本文中的其他具体实现的各个方面。然而,应当理解,与本文中其他各处描述的实现相比,计算设备108可以包括更多的、替代的或更少的方面、功能等,并且无意受其相关公开内容的限制。
存储在存储器资源114上的指令116在由处理资源110执行时使处理资源110部分基于每个节点与数据中心内的其他节点相比的物理位置,来对数据中心内的潜在容器化节点集合进行排名。指令116可以结合方法100的框的一个或多个方面或本文中描述的其他实现的另一合适方面(反之亦然)。例如,在一些实现中,指令116使处理资源基于节点的网络利用率来对潜在容器化节点集合进行排名。在由处理资源110执行时,存储在存储器资源114上的指令118使处理资源110基于经排名的节点集合来选择用于运行容器化应用的节点。指令116可以结合方法100的框的一个或多个方面或本文中描述的其他实现的另一合适方面(反之亦然)。
计算设备108的处理资源110例如可以是以下形式:中央处理单元(CPU),基于半导体的微处理器,诸如数字图像处理单元等的数字信号处理器(DSP),适合于取回和执行存储在存储器资源114中的指令的其他硬件设备或处理元件,或前述的合适组合。处理资源110例如可以包括芯片上的单个或多个核、跨多个芯片的多个核、跨多个设备的多个核、或前述的合适组合。处理资源110可以用于指取、解码和执行如本文所述的指令。作为检索和执行指令的替代或补充,处理资源110例如可以包括至少一个集成电路(IC)、其他控制逻辑、其他电子电路、或其合适的组合,其包括用于执行存储在存储器资源114上的指令的功能的多个电子组件。在一些实现中,术语“逻辑”可以是用于执行本文中描述的特定动作和/或功能等的替代或附加处理资源,其包括硬件,例如各种形式的晶体管逻辑、专用集成电路(ASIC)等,与存储在存储器中并且由处理器可执行的机器可执行指令(例如,软件固件等)不同。处理资源110例如可以跨多个处理单元实现,并且指令可以由计算设备108的不同区域中的不同处理单元实现。
计算设备108的存储器资源114例如可以是用于包含或存储诸如机器可读指令116和118等信息的非暂态机器可读存储介质的形式,诸如合适的电子、磁性、光学或其他物理存储装置。这样的指令可以用于执行本文中描述的一个或多个功能,诸如本文中关于方法100或本文所述其他方法所描述的功能。存储器资源114例如可以容纳在与用于计算设备108的处理资源110相同的壳体内,诸如在用于计算设备108的计算塔式外壳内(在其中计算设备108被容纳在计算塔式外壳内的实现中)。在一些实现中,存储器资源114和处理资源110被容纳在不同的壳体中。如本文中使用的,术语“机器可读存储介质”例如可以包括随机存取存储器(RAM)、闪存、存储驱动器(例如,硬盘)、任何类型的存储盘(例如,紧凑型光盘只读存储器(CD-ROM)、任何其他类型的光盘、DVD等)等,或前述的组合。在一些实现中,存储器资源114可以对应于存储器,包括诸如随机存取存储器(RAM)等主存储器(软件可以在运行时期间驻留在其中)和辅助存储器。辅助存储器例如可以包括存储机器可读指令的副本的非易失性存储器。应当理解,机器可读指令以及相关数据都可以存储在存储介质上,并且出于描述的目的,多个介质可以被视为单个介质。
存储器资源114可以经由通信链路112与处理资源110通信。每个通信链路112可以在与处理资源110相关联的机器(例如,计算设备)的本地或者对于与处理资源110相关联的机器(例如,计算设备)而言是远程的。本地通信链路112的示例可以包括机器(例如,计算设备)内部的电子总线,其中存储器资源114是经由电子总线与处理资源110通信的易失性、非易失性、固定和/或可移动存储介质之一。
在一些实现中,计算设备108的一个或多个方面可以是功能模块的形式,功能模块例如可以用于执行指令116或118的一个或多个过程或本文中描述的与本公开的已有关的其他功能。如本文中使用的,术语“模块”是指硬件(例如,处理器,诸如集成电路或其他电路系统)和软件(例如,机器或处理器可执行指令、命令或代码,诸如固件、编程或目标代码)的组合。硬件和软件的组合可以包括仅硬件(即,没有软件元素的硬件元素)、托管在硬件处的软件(例如,存储在存储器处并且在处理器处执行或解释的软件)或硬件和托管在硬件处的软件。还应当理解,术语“模块”还旨在指代一个或多个模块或模块组合。计算设备108的每个模块例如可以包括一个或多个机器可读存储介质和一个或多个计算机处理器。
鉴于以上所述,应当理解,上述计算设备108的各种指令可以对应于分离和/或合并的功能模块。例如,指令116可以对应于“排名模块”,该“排名模块”用于部分基于每个节点与数据中心内的其他节点相比的物理位置来对数据中心内的潜在容器化节点集合进行排名。同样地,指令118可以对应于“节点选择模块”,该“节点选择模块”用于基于经排名的节点集合来选择用于运行容器化应用的节点。还应当理解,给定模块可以用于多种功能。作为一个示例,在一些实现中,单个模块可以用于对潜在容器化节点进行排名(例如,对应于指令116的功能)以及用于选择节点(例如,对应于指令118的功能)。
本公开的一个或多个实现还可以包括合适的通信模块以允许网络设备之间的网络通信。这样的通信模块例如可以包括具有以太网端口和/或光纤通道端口的网络接口控制器。在一些实现中,这样的通信模块可以包括有线或无线通信接口,并且在一些实现中可以提供虚拟网络端口。在一些实现中,这样的通信模块包括硬盘驱动器形式的硬件、相关固件、以及用于允许硬盘驱动器与其他网络设备可操作地通信的其他软件。通信模块例如可以包括用于与通信模块通信的机器可读指令,诸如用于实现物理或虚拟网络端口的固件。
图7示出了包括可以由计算机处理器或其他处理资源执行的各种指令的机器可读存储介质120。在一些实现中,介质120可以被容纳在服务器内,在网络环境内的另一计算设备上,或者在网络环境内的本地或远程有线或无线数据通信中。为了说明,本文中提供的对机器可读存储介质120的描述参考计算设备108(例如,处理资源110)的各个方面以及本公开的其他实现(例如,方法100)。尽管计算设备108的一个或多个方面(以及诸如指令116和118等指令)可以被应用于介质120或以其他方式与介质120结合,但应当理解,在一些实现中,介质120可以与这样的系统分开地存储或容纳。例如,在一些实现中,介质120可以的形式是随机存取存储器(RAM)、闪存、存储驱动器(例如,硬盘)、任何类型的存储盘(例如,光盘只读存储器(CD-ROM)、任何其他类型的光盘、DVD等),等等,或者前述的组合。
介质120包括存储在其上的机器可读指令122,用于使处理资源110基于公共数据中心内的设备位置信息来确定容器化应用工作负载放置。指令116例如可以结合方法100的框106的一个或多个方面或本文中描述的其他实现的另一合适的方面(反之亦然)。例如,在一些实现中,确定工作负载放置以最小化虚拟化设备的节点之间的跳数。
介质120包括存储在其上的机器可读指令124,用于使处理资源110基于设备位置信息为数据中心内的虚拟化设备指派工作负载,以提高整体网络利用率。指令118例如可以结合方法100的框106的一个或多个方面或本文中描述的其他实现的另一合适的方面(反之亦然)。
尽管上面已经示出和描述了某些实现,但可以进行形式和细节方面的各种改变。例如,已经关于一个实现和/或过程描述的一些特征可以与其他实现相关。换言之,关于一个实现描述的过程、特征、组件和/或特性在其他实现中可能是有用的。此外,应当理解,本文中描述的系统和方法可以包括所描述的不同实现的组件和/或特征的各种组合和/或子组合。因此,参考一个或多个实现描述的特征可以与本文中描述的其他实现组合。
如本文中使用的,“逻辑”是用于执行本文中描述的特定动作和/或功能等的替代或附加处理资源,这样的处理资源包括硬件,例如各种形式的晶体管逻辑、专用集成电路(ASIC)等,与存储在存储器中并且由处理器可执行的机器可执行指令(例如,软件固件等)不同。此外,如本文中使用,“一个”或“若干”可以是指一个或多个这样的事物。例如,“若干小部件”可以是指一个或多个小部件。同样,如本文中使用的,“多个”可以指多个这样的事物。
Claims (20)
1.一种方法,包括:
利用计算机虚拟化调度器接收针对虚拟化设备的网络位置信息;
利用所述计算机虚拟化调度器接收针对虚拟化设备的网络利用率信息;以及
利用所述计算机虚拟化调度器并且基于接收到的所述网络位置信息和接收到的所述网络利用率信息来确定虚拟化工作负载放置,以最大化可用网络带宽并且最小化虚拟化设备之间的网络延迟。
2.根据权利要求1所述的方法,其中所述计算机虚拟化调度器是容器化应用调度器。
3.根据权利要求1所述的方法,其中所述计算机虚拟化调度器是容器应用容器集调度器。
4.根据权利要求1所述的方法,其中所述虚拟化设备包括用于运行容器化应用的服务器。
5.根据权利要求1所述的方法,其中所述虚拟化设备包括网络交换机。
6.根据权利要求1所述的方法,其中确定虚拟化工作负载放置还基于其他因素,包括中央处理单元(CPU)、存储器和存储利用率。
7.根据权利要求1所述的方法,其中所述网络位置信息包括数据中心的多个机架内的虚拟化设备的物理拓扑信息。
8.根据权利要求1所述的方法,其中所述网络位置信息包括数据中心的单个机架内的虚拟化设备的物理拓扑信息。
9.根据权利要求1所述的方法,其中所确定的所述虚拟化工作负载放置包括选择多个服务器以运行容器化微服务或应用。
10.根据权利要求1所述的方法,其中所述网络位置信息由网络管理员经由标签输入。
11.根据权利要求1所述的方法,其中确定虚拟化工作负载放置包括基于网络位置对节点进行优先级排序。
12.一种非暂态机器可读存储介质,其上存储有用于使计算机处理器执行以下操作的机器可读指令:
基于公共数据中心内的设备位置信息来确定容器化应用工作负载放置;以及
基于所述设备位置信息来向所述数据中心内的虚拟化设备指派工作负载,以提高整体网络利用率。
13.根据权利要求12所述的介质,其中所述工作负载放置被确定以最小化所述虚拟化设备的节点之间的跳数。
14.根据权利要求12所述的介质,其中所述工作负载放置通过以下来确定:对导致容器化应用的跳数减少的虚拟化设备进行优先级排序。
15.根据权利要求12所述的介质,其中所述工作负载放置通过对数据中心中的节点之间的高带宽链路进行优先级排序来确定。
16.根据权利要求12所述的介质,其中所述工作负载放置通过部分基于位置和带宽对数据中心中的可用节点进行排名来确定。
17.一种容器化应用调度系统,包括:
处理资源;以及
存储器资源,存储用于使所述处理资源执行以下操作的机器可读指令:
部分基于每个节点与数据中心内的其他节点相比的物理位置来对所述数据中心内的潜在容器化节点集合进行排名;以及
基于经排名的所述节点集合来选择用于运行容器化应用的节点。
18.根据权利要求17所述的系统,其中所述指令用于使所述处理资源基于所述节点的网络利用率来对所述潜在容器化节点集合进行排名。
19.根据权利要求17所述的系统,其中所述指令用于提供一种默认方法用于对所述潜在容器化节点进行排名、同时允许对经排名的所述潜在容器化节点集合的特定于应用的定制。
20.根据权利要求17所述的系统,其中所述指令用于对所述潜在容器化节点集合进行排名以针对低延迟、高带宽和/或直接交换机连接性进行优化。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/396,591 | 2019-04-26 | ||
US16/396,591 US11650837B2 (en) | 2019-04-26 | 2019-04-26 | Location-based virtualization workload placement |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111857946A true CN111857946A (zh) | 2020-10-30 |
CN111857946B CN111857946B (zh) | 2023-11-28 |
Family
ID=72840153
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010136183.5A Active CN111857946B (zh) | 2019-04-26 | 2020-03-02 | 基于位置的虚拟化工作负载放置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11650837B2 (zh) |
CN (1) | CN111857946B (zh) |
DE (1) | DE102020110143A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11144362B1 (en) * | 2020-05-05 | 2021-10-12 | International Business Machines Corporation | Container scheduling in a container orchestration system |
CN112559186B (zh) * | 2020-12-22 | 2021-09-24 | 北京云思畅想科技有限公司 | 一种Kubernetes容器资源扩缩容方法 |
US11375006B1 (en) * | 2020-12-28 | 2022-06-28 | Pensando Systems, Inc. | Methods and systems for rating workloads based on network interface device resources and for optimal scheduling |
US20220414577A1 (en) * | 2021-06-28 | 2022-12-29 | Dell Products L.P. | System and method for performance-centric workload placement in a hybrid cloud environment |
US11736348B2 (en) | 2021-06-28 | 2023-08-22 | Dell Products L.P. | System and method for network services based functionality provisioning in a VDI environment |
US11924107B2 (en) | 2021-10-04 | 2024-03-05 | Cisco Technology, Inc. | Cloud-native workload optimization |
US11782798B2 (en) * | 2022-02-11 | 2023-10-10 | Dell Products, L.P. | Method and apparatus for predicting and exploiting aperiodic backup time windows on a storage system |
US20240160495A1 (en) * | 2022-11-04 | 2024-05-16 | Oracle International Corporation | Network locality in a gpu super-cluster |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1777120A (zh) * | 2005-12-07 | 2006-05-24 | 中国科学院计算技术研究所 | 结构化p2p系统的分布式负载均衡方法 |
CN101465875A (zh) * | 2008-11-12 | 2009-06-24 | 湖南大学 | 一种基于网络定位的负载均衡算法 |
US9130844B1 (en) * | 2014-11-11 | 2015-09-08 | Citigroup Technology, Inc. | Systems and methods for harvesting excess compute capacity across domains |
CN106034144A (zh) * | 2015-03-12 | 2016-10-19 | 中国人民解放军国防科学技术大学 | 一种基于负载均衡的虚拟资产数据存储方法 |
US20160378518A1 (en) * | 2015-06-29 | 2016-12-29 | Vmware, Inc. | Policy based provisioning of containers |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9888067B1 (en) * | 2014-11-10 | 2018-02-06 | Turbonomic, Inc. | Managing resources in container systems |
US8683023B1 (en) * | 2010-06-30 | 2014-03-25 | Amazon Technologies, Inc. | Managing communications involving external nodes of provided computer networks |
US9582221B2 (en) * | 2012-08-24 | 2017-02-28 | Vmware, Inc. | Virtualization-aware data locality in distributed data processing |
US10007584B2 (en) * | 2015-01-28 | 2018-06-26 | Red Hat, Inc. | Automated container migration in a platform-as-a-service system |
US10613888B1 (en) * | 2015-12-15 | 2020-04-07 | Amazon Technologies, Inc. | Custom placement policies for virtual machines |
US9954758B2 (en) * | 2016-02-17 | 2018-04-24 | Dell Products L.P. | Virtual network function resource allocation and management system |
EP3432515B1 (en) * | 2016-04-08 | 2020-05-20 | Huawei Technologies Co., Ltd. | Management method and device |
US10757048B2 (en) * | 2016-04-08 | 2020-08-25 | Microsoft Technology Licensing, Llc | Intelligent personal assistant as a contact |
US11169706B2 (en) * | 2016-05-26 | 2021-11-09 | Nutanix, Inc. | Rebalancing storage I/O workloads by storage controller selection and redirection |
US10432532B2 (en) * | 2016-07-12 | 2019-10-01 | Cisco Technology, Inc. | Dynamically pinning micro-service to uplink port |
US10390114B2 (en) * | 2016-07-22 | 2019-08-20 | Intel Corporation | Memory sharing for physical accelerator resources in a data center |
US20180097845A1 (en) * | 2016-10-05 | 2018-04-05 | Rapid Focus Security, Llc | Self-Managed Intelligent Network Devices that Protect and Monitor a Distributed Network |
US20180136931A1 (en) | 2016-11-14 | 2018-05-17 | Ca, Inc. | Affinity of microservice containers |
US11044162B2 (en) | 2016-12-06 | 2021-06-22 | Cisco Technology, Inc. | Orchestration of cloud and fog interactions |
US11087087B1 (en) * | 2017-02-15 | 2021-08-10 | Robert Mayer | Comparative expression processing |
US10542104B2 (en) | 2017-03-01 | 2020-01-21 | Red Hat, Inc. | Node proximity detection for high-availability applications |
US10467052B2 (en) | 2017-05-01 | 2019-11-05 | Red Hat, Inc. | Cluster topology aware container scheduling for efficient data transfer |
US10705881B2 (en) * | 2017-05-12 | 2020-07-07 | Red Hat, Inc. | Reducing overlay network overhead across container hosts |
US10467046B2 (en) | 2017-05-30 | 2019-11-05 | Red Hat, Inc. | Fast and greedy scheduling machine based on a distance matrix |
US10728135B2 (en) * | 2017-10-13 | 2020-07-28 | Keysight Technologies, Inc. | Location based test agent deployment in virtual processing environments |
US10871998B2 (en) * | 2018-01-18 | 2020-12-22 | Red Hat, Inc. | Usage instrumented workload scheduling |
US10516601B2 (en) * | 2018-01-19 | 2019-12-24 | Citrix Systems, Inc. | Method for prioritization of internet traffic by finding appropriate internet exit points |
US10691986B2 (en) * | 2018-02-23 | 2020-06-23 | International Business Machines Corporation | Cloning a computing environment |
US10908940B1 (en) * | 2018-02-26 | 2021-02-02 | Amazon Technologies, Inc. | Dynamically managed virtual server system |
US10805215B2 (en) * | 2018-03-20 | 2020-10-13 | Cisco Technology, Inc. | Intra-host and end-to-end packet path and treatment tracing using in-situ OAM in container networking architecture |
US10585714B2 (en) * | 2018-04-05 | 2020-03-10 | International Business Machines Corporation | Workload management with data access awareness using an ordered list of hosts in a computing cluster |
US11169856B2 (en) * | 2019-01-31 | 2021-11-09 | Hewlett Packard Enterprise Development Lp | Container management |
US11030009B2 (en) * | 2019-03-28 | 2021-06-08 | Atlassian Pty Ltd. | Systems and methods for automatically scaling compute resources based on demand |
US11016819B2 (en) * | 2019-08-16 | 2021-05-25 | Cisco Technology, Inc. | Optimizing clustered applications in a clustered infrastructure |
US11513842B2 (en) * | 2019-10-03 | 2022-11-29 | International Business Machines Corporation | Performance biased resource scheduling based on runtime performance |
US11444855B2 (en) * | 2020-07-07 | 2022-09-13 | Juniper Networks, Inc. | System and method for determining a data flow path in an overlay network |
-
2019
- 2019-04-26 US US16/396,591 patent/US11650837B2/en active Active
-
2020
- 2020-03-02 CN CN202010136183.5A patent/CN111857946B/zh active Active
- 2020-04-14 DE DE102020110143.0A patent/DE102020110143A1/de active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1777120A (zh) * | 2005-12-07 | 2006-05-24 | 中国科学院计算技术研究所 | 结构化p2p系统的分布式负载均衡方法 |
CN101465875A (zh) * | 2008-11-12 | 2009-06-24 | 湖南大学 | 一种基于网络定位的负载均衡算法 |
US9130844B1 (en) * | 2014-11-11 | 2015-09-08 | Citigroup Technology, Inc. | Systems and methods for harvesting excess compute capacity across domains |
CN106034144A (zh) * | 2015-03-12 | 2016-10-19 | 中国人民解放军国防科学技术大学 | 一种基于负载均衡的虚拟资产数据存储方法 |
US20160378518A1 (en) * | 2015-06-29 | 2016-12-29 | Vmware, Inc. | Policy based provisioning of containers |
Also Published As
Publication number | Publication date |
---|---|
DE102020110143A1 (de) | 2020-10-29 |
CN111857946B (zh) | 2023-11-28 |
US20200341794A1 (en) | 2020-10-29 |
US11650837B2 (en) | 2023-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111857946B (zh) | 基于位置的虚拟化工作负载放置 | |
US10862760B2 (en) | Network functions virtualization | |
US8434087B2 (en) | Distributed acceleration devices management for streams processing | |
JP4916881B2 (ja) | オートノミック・フェイルオーバのための方法、装置、およびプログラム | |
US8566822B2 (en) | Method and system for distributing hypervisor functionality over multiple physical devices in a network and configuring sub-hypervisor to control the virtual machines | |
WO2017152633A1 (zh) | 一种端口绑定实现方法及装置 | |
US8626955B2 (en) | Directing packets to a processor unit | |
CN106331065B (zh) | 一种用于具有服务容器的主机系统的代理应用以及系统 | |
JP5594171B2 (ja) | 通信処理装置、アドレス学習プログラムおよびアドレス学習方法 | |
US8842562B2 (en) | Method of handling network traffic through optimization of receive side scaling | |
JP2005056391A (ja) | コンピューティング環境の作業負荷を均衡させる方法およびシステム | |
JP2012094119A (ja) | 仮想マシン間の通信 | |
JP5503678B2 (ja) | ホスト提供システム及びホスト提供方法 | |
CN113472624A (zh) | 一种基于vDPA实现虚拟网络数据包转发的方法及应用 | |
US20210392091A1 (en) | User-mode protocol stack-based network isolation method and device | |
US20120106557A1 (en) | Dynamic network identity architecture | |
CN107408058B (zh) | 一种虚拟资源的部署方法、装置及系统 | |
US11334436B2 (en) | GPU-based advanced memory diagnostics over dynamic memory regions for faster and efficient diagnostics | |
JP2010039729A (ja) | I/o管理システム、サーバシステム及びそのi/oスイッチの管理方法 | |
JP6369730B2 (ja) | 仮想マシン始動方法及び装置 | |
US20220405104A1 (en) | Cross platform and platform agnostic accelerator remoting service | |
CN117501243A (zh) | 用于管理服务网格的交换机 | |
EP3811210B1 (en) | Method and supporting node for supporting process scheduling in a cloud system | |
CN114816651A (zh) | 一种通信方法、装置以及系统 | |
US20160164740A1 (en) | Partner discovery in control clusters using shared vlan |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |