CN107924336A - 用于虚拟服务器机架部署中的分散式机架体系架构的硬件管理系统 - Google Patents
用于虚拟服务器机架部署中的分散式机架体系架构的硬件管理系统 Download PDFInfo
- Publication number
- CN107924336A CN107924336A CN201680047662.1A CN201680047662A CN107924336A CN 107924336 A CN107924336 A CN 107924336A CN 201680047662 A CN201680047662 A CN 201680047662A CN 107924336 A CN107924336 A CN 107924336A
- Authority
- CN
- China
- Prior art keywords
- resource
- physical
- hms
- rack
- distributing
- 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.)
- Pending
Links
- 238000003860 storage Methods 0.000 claims description 85
- 238000000034 method Methods 0.000 claims description 65
- 230000008859 change Effects 0.000 claims description 17
- 230000004044 response Effects 0.000 claims description 8
- 238000007726 management method Methods 0.000 description 153
- 239000000203 mixture Substances 0.000 description 46
- 238000004891 communication Methods 0.000 description 37
- 239000010410 layer Substances 0.000 description 34
- 230000008569 process Effects 0.000 description 27
- 238000009826 distribution Methods 0.000 description 18
- 238000012545 processing Methods 0.000 description 14
- 238000013500 data storage Methods 0.000 description 12
- 238000012423 maintenance Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 101000911390 Homo sapiens Coagulation factor VIII Proteins 0.000 description 7
- 102000057593 human F8 Human genes 0.000 description 7
- 238000012544 monitoring process Methods 0.000 description 7
- 229940047431 recombinate Drugs 0.000 description 7
- 239000000872 buffer Substances 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 150000001875 compounds Chemical class 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 239000008186 active pharmaceutical agent Substances 0.000 description 4
- 230000000712 assembly Effects 0.000 description 4
- 238000000429 assembly Methods 0.000 description 4
- 230000003139 buffering effect Effects 0.000 description 4
- 230000007613 environmental effect Effects 0.000 description 4
- 230000036541 health Effects 0.000 description 4
- 238000009434 installation Methods 0.000 description 4
- 238000002372 labelling Methods 0.000 description 4
- 230000006855 networking Effects 0.000 description 4
- 238000006116 polymerization reaction Methods 0.000 description 4
- 239000007787 solid Substances 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 239000011800 void material Substances 0.000 description 4
- 102100035373 Cyclin-D-binding Myb-like transcription factor 1 Human genes 0.000 description 3
- 101000804518 Homo sapiens Cyclin-D-binding Myb-like transcription factor 1 Proteins 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 3
- 238000004220 aggregation Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- VMSRVIHUFHQIAL-UHFFFAOYSA-N sodium;dimethylcarbamodithioic acid Chemical compound [Na+].CN(C)C(S)=S VMSRVIHUFHQIAL-UHFFFAOYSA-N 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000003862 health status Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000011229 interlayer Substances 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000005086 pumping Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000012536 storage buffer Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000003442 weekly effect Effects 0.000 description 1
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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- 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/0893—Assignment of logical groups to network 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/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/08—Configuration management of networks or network elements
- H04L41/0895—Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Abstract
本文公开了用于虚拟服务器机架部署中的分散式机架体系架构的硬件管理系统。一种管理物理机架中的分散式物理硬件资源的示例装置包括:硬件管理系统,用于发现物理机架中的分散式物理硬件资源并生成分散式物理硬件资源的列表;以及物理资源管理器,用于基于来自分散式物理硬件资源列表的资源生成组合资源,硬件管理系统管理组合资源。
Description
相关申请
本专利要求2015年8月17日提交的标题为“用于虚拟服务器机架部署中的分散式机架体系架构的硬件管理系统(HARDWARE MANAGEMENT SYSTEMS FOR DISAGGREGATED RACKARCHITECTURES IN VIRTUAL SERVER RACK DEPLOYMENTS)”、序列号为62/206,104的美国临时申请以及2016年6月30日提交的标题为“用于虚拟服务器机架部署中的分散式机架体系架构的硬件管理系统(HARDWARE MANAGEMENT SYSTEMS FOR DISAGGREGATED RACKARCHITECTURES IN VIRTUAL SERVER RACK DEPLOYMENTS)”、序列号为15/198,914的美国非临时申请的权益,在此通过引用将其整体并入本文。
技术领域
本公开总地涉及云计算,并且更具体地,涉及用于虚拟服务器机架部署中的分散式机架体系架构的硬件管理系统。
背景技术
虚拟化计算机系统提供了诸如在单个硬件计算机上执行多个计算机系统、复制计算机系统、在多个硬件计算机之间移动计算机系统等益处。“基础设施即服务”(通常也称为“IaaS”)一般将由服务提供商提供的一套技术描述为允许弹性创建虚拟化、网络化和池化计算平台(有时被称为“云计算平台”)的集成解决方案。企业可以使用IaaS作为业务内部组织云计算平台(有时被称为“私有云”),其使应用程序开发人员能够访问基础设施资源,诸如虚拟化服务器、存储和联网资源。通过提供对运行应用程序所需的硬件资源的迅速(ready)访问,云计算平台使开发人员能够以比以往任何时候更大的规模和更快的速度构建、部署和管理网页应用程序(或任何其他类型的联网应用程序)的生命周期。
云计算环境可以由许多处理单元(例如,服务器)组成。处理单元可以安装在被称为机架的标准化框架中,其通过允许处理单元垂直堆叠来提供对地板空间(floor space)的有效利用。机架可以另外包括云计算环境的其他组件,诸如存储设备、联网设备(例如交换机)等。
附图说明
图1描绘了用于管理根据分散式机架体系架构配置的池化硬件资源的物理机架的示例硬件管理服务(HMS)。
图2结合示例虚拟服务器机架部署中的第二物理机架描绘了图1的示例物理机架。
图3描绘了图1和图2的示例物理机架的示例配置。
图4描绘了使用分散式机架体系架构配置和部署图2的示例虚拟服务器机架的示例体系架构。
图5描绘了在示例硬件与图2和图4的示例虚拟资源管理器(VRM)之间接口的图2-4的示例硬件管理服务(HMS)。
图6描绘了图1-5的HMS的示例应用程序编程接口(API),以使图5的示例物理资源管理器(PRM)能与图1-5的分散式物理硬件资源进行通信。
图7描绘了图1-6的HMS的示例物理机架分散式机架(pRACK DR)对象的元素的示例pRACK DR对象层次结构。
图8是表示示例机器可读指令的流程图,该示例机器可读指令可以被执行以实现图1-6的示例HMS以及图5和图6的示例PRM。
图9是表示示例机器可读指令的流程图,该示例机器可读指令可以被执行以实现图5和图6的示例PRM,以根据本公开的教导组成和/或重组组合资源。
图10是示例处理平台的框图,该示例处理平台能够执行图8的示例机器可读指令和/或图9的示例机器可读指令,以实现图1-6的示例HMS和/或图5和图6的示例PRM。
具体实施方式
云计算基于对跨越网络的许多物理资源的部署,将物理资源虚拟化为虚拟资源,以及供应用于跨云计算服务和应用程序使用的虚拟资源。用于虚拟化计算机系统的示例系统在2007年9月21日提交的标题为“用于管理虚拟机和真实机的方法和系统(METHOD ANDSYSTEM FOR MANAGING VIRTUAL AND REAL MACHINES)”、序列号为11/903,374并且被授权为美国专利第8,171,485号的美国专利申请,以及2007年3月26日提交的标题为“用于管理虚拟机和真实机的方法和系统(METHOD AND SYSTEM FOR MANAGING VIRTUAL AND REALMACHINES)”的第60/919,965号美国临时专利申请,以及2012年12月12日提交的标题为“用于虚拟化计算的方法和装置(METHODS AND APPARATUS FOR VIRTUALIZED COMPUTING)”的第61/736,422号美国临时专利申请中被描述,在此所有这三个专利通过引用整体并入本文。
在启动云计算环境或向已建立的云计算环境增加资源时,数据中心运营商努力提供成本高效的服务,同时使得基础设施资源(例如,存储硬件、计算硬件和联网硬件)共同工作以实现无痛安装/操作,并且优化资源以提高性能。用于建立和维护数据中心以提供云计算服务的现有技术经常将数据中心锁定在用于硬件资源的单个资源中,因为需要使用为特定类型的硬件专门设计的定制虚拟化软件。
本文公开的示例使得能够基于与供应商无关的虚拟化软件使用分散式机架体系架构(DRA)来建立和维护数据中心。通过这种方式,数据中心运营商可具有从多个硬件制造商的任意一个进行选择的灵活性,以满足基于DRA的数据中心的物理硬件需求,同时使数据中心运营商能够相对容易地初始化、虚拟化和供应新的DRA资源。也就是说,数据中心运营商可以使用本文公开的示例来从多个制造商中的任意一个寻求DRA硬件资源的来源,而不要求数据中心运营商承担开发新软件以初始化、虚拟化和供应这样的DRA硬件资源的负担。
传统的基于服务器的物理机架基于非分散式配置,并且包括物理安装在物理机架中的多个机架安装式服务器以形成固定物理服务器节点的集群。固定物理服务器包括一个或更多个中央处理单元(CPU)、一个或更多个网络接口卡(NIC)、一个或更多个随机存取存储器(RAM)设备,以及配置为以彼此固定关联的方式操作以提供服务器功能的一个或更多个存储硬件。当固定物理服务器资源(例如CPU、NIC、RAM、存储等)被虚拟化以创建逻辑资源(例如计算能力、网络吞吐量、RAM大小、存储大小等)时,逻辑资源可以被分配给不同的工作负载以提供虚拟服务或基于云的服务。这样,机架中的固定物理服务器可以被划分成许多可分配的逻辑计算机能力资源、逻辑联网资源、逻辑RAM资源和/或逻辑贮存器资源。当固定物理服务器的逻辑计算能力资源、逻辑联网资源、逻辑RAM资源和/或逻辑贮存器资源中的一个或更多个耗尽时,需要机架中的另一物理服务器来满足另一工作负载的逻辑资源需求。
与传统的基于非分散式服务器的物理机架(其中,许多机架安装式服务器被物理地安装在物理机架中以形成固定物理服务器节点的集群)不同,基于DRA的物理机架包括物理资源的许多机架安装式抽屉(drawer)或托盘(tray)。例如,一个或更多个抽屉包括物理计算模块阵列,一个或更多个抽屉包括物理网络模块阵列,一个或更多个抽屉包括RAM模块阵列,一个或更多个抽屉包括物理存储模块阵列等等。在基于DRA的物理机架中,跨许多抽屉分散的不同类型的物理资源可以在抽屉之间跨局域网聚集,以组成许多组合服务器。例如,可以通过网络聚集来自CPU抽屉的一个或更多个CPU、来自NIC抽屉的一个或更多个NIC、来自RAM抽屉的一个或更多个RAM设备以及来自存储抽屉的一个或更多个硬盘驱动器(HDD)或固态驱动器(SSD)形成组合服务器。因此,与包括一套多个专用于该物理服务器的一个或更多个CPU、一个或更多个NIC、一个或更多个RAM设备、一个或更多个存储硬件等的非分散式物理服务器不同,基于DRA的物理机架的机架安装式抽屉或托盘使得能够通过添加另一种特定资源类型来配置可以在任何资源类型(例如计算、网络、RAM、存储等)中升级的组合服务器。以这种方式,如果组合服务器的特定资源完成分配,则可以将所需资源类型的另一物理资源网络聚合到该组合服务器,而无需安装完全不同的物理服务器。
本文公开的示例使得能够管理基于DRA的物理机架中的硬件资源,以从机架部署提供虚拟服务和/或基于云的服务。例如,本文公开的示例可以用于实现硬件管理服务(HMS)和物理资源管理器(PRM),其使得能够管理基于DRA的物理机架中的硬件资源,以配置和维护组合服务器。HMS和PRM提供带有对这种组合服务器的访问的虚拟化层,以由虚拟化层用于创建逻辑资源并将这种逻辑资源分配给实现虚拟服务器和/或基于云的服务的工作负载。
图1描绘了示例HMS 102,其用于管理根据分散式机架体系架构(DRA)配置的分散式物理硬件资源108的示例物理机架104。在所示示例中,HMS 102在管理交换机(MS)112中运行,该管理交换机(MS)112安装在物理机架104中并且经由局域网114与物理硬件资源108通信。以这种方式,MS 112的HMS 102可以与分散式物理硬件资源106进行通信并对其进行管理以配置、维护和/或升级组合服务器,如图1中示出的示例组合服务器节点118。例如,图1的分散式物理硬件资源108包括池化计算资源108a、池化网络资源108b和池化贮存器资源108c,HMS 102从中组成和配置组合服务器节点118。在所示示例中,池化计算资源108a、池化网络资源108b和池化贮存器资源108c包括安装在本文称为子机架单元(SRU)的相应抽屉或托盘中的相应硬件组件(例如CPU、NIC、HDD、SSD等)阵列。例如,池化计算资源108a的抽屉或托盘已经安装了包括CPU组件阵列的CPU子机架单元模块(SRUMCPU),池化网络资源108b的抽屉或托盘已经安装了包括交换机组件阵列的交换机子机架单元模块(SRUMSW),并且池化贮存器资源108c已经安装了包括HDD或SSD组件阵列的存储子机架单元模块(SRUMS)。尽管未示出,但物理机架104中可以附加地或替代地包括其他类型的池化物理硬件资源。例如,其他物理硬件资源可以包括RAM、网络接口卡(NIC)、图形处理单元(GPU)、多媒体硬件加速器、数字信号处理器(DSP)等。可以用来实现物理机架104中的分散式硬件的示例DRA体系架构是Intel分散式机架级体系架构(Rack Scale Architecture,RSA)。虽然本文公开的示例涉及Intel分散式RSA的方面,但是本文公开的示例不限于与Intel分散式RSA一起使用。相反,本文公开的示例可以使用任何其他类型的DRA体系架构来实现。另外,所示示例的物理机架104还可以包括非分散式物理硬件资源,诸如同样由物理机架104中的HMS 102管理的固定物理交换机、固定物理服务器和/或固定物理存储。
由于上面描述的物理硬件资源108的分散式物理布局(其中相同类型的硬件资源的阵列在分别对应的各个池化计算资源108a、池化网络资源108b和池化贮存器资源108c中被保持),物理机架104使用分散式机架体系架构来实现。使用物理硬件资源108的这种分散式物理布局,示例HMS 102可以基于池化计算资源108a、池化网络资源108b和池化贮存器资源108c灵活地组成和配置具有不同量的计算能力、网络吞吐量和存储容量的许多组合服务器节点。例如,HMS 102使用池化计算资源108a的两个示例CPU 122a和122b、来自池化网络资源108b的示例交换机124以及来自池化贮存器资源108c的示例HDD 126来组成和配置组合服务器节点118。
在所示示例中,分散式物理硬件资源108的每个SRU包括共享功能,HMS 102通过共享功能经由局域网113进行通信以访问池化物理资源108a、108b、108c的组件的阵列。用于在每个SRU中实现共享功能的示例硬件包括NIC+交换机芯片、处理器和后端光学互连,用于连接到光接插板(optical patch panel),例如在物理机架104的顶部。在一些示例中,可以使用安装在SRU中的夹层(mezzanine)/附加卡向每个SRU提供共享功能硬件。在其他示例中,共享功能硬件被直接插入或直接安装在每个SRU的印刷电路板(PCB)上。在一些示例中,每个SRU中的共享功能硬件中的NIC+交换机芯片通过局域网114将SRUM中具有通信能力的硬件组件提供给物理机架104中的其他硬件(例如其他SRU、MS 112、图2中所示的架顶式(TOR)交换机等)。在这样的示例中,池化网络资源108b可以被省略或者可以被用于实现用于专用通信的其他交换机或NIC,所述专用通信延伸超过通过局域网104与物理机架104的其他硬件通信所需的通信。
在所示示例中,共享功能硬件的CPU(例如Intel Atom级处理器)运行操作系统,并且为外部管理实体提供控制平面和管理平面应用程序编程接口(API)。在Intel分散式RSA中,用于外部管理实体的该控制平面和管理平面API被称为池化系统管理引擎(PSME),其运行池化系统管理固件(PSMF)。在本文公开的示例中,PSME和PSMF可互换使用。在所示示例中,根据本公开的教导,使用HMS 102来实现外部管理实体。
在所示示例中,HMS 102被配置为经由PSME/PSMF接口与SRU的共享功能进行通信以访问池化物理资源108a、108b、108c。例如,在Intel分散式RSA中,每个SRU的PSME可以使用表述性状态转移(representational state transfer,REST)API来访问。在所示示例中,REST API是来自外部管理实体的超文本传输协议(HTTP)连接的终点。例如,PSME接口可以像超级基板管理控制器(BMC)一样对待,其通过REST API处理同一SRU中的所有SRUM。
所示示例的HMS 102被配置为除了非分散式固定物理硬件资源之外还管理分散式物理硬件资源108。用于管理非分散式固定物理硬件资源的示例在2015年6月30日提交的标题为“配置硬件管理系统以用于虚拟计算环境的虚拟服务器机架部署的方法和装置(METHODS AND APPARATUS TO CONFIGURE HARDWARE MANAGEMENT SYSTEMS FOR USE INVIRTUAL SERVER RACK DEPLOYMENTS FOR VIRTUAL COMPUTING ENVIRONMENTS)”的第14/788,004号(代理人案号C150.02)美国专利申请中公开,在此通过引用将其整体并入本文。为了管理分散式物理硬件资源108,HMS 102使用在物理机架104中发现的分散式物理硬件资源108的分散的CPU、存储器、存储和/或网络组件来组成、配置和管理可组合的服务器(例如组合服务器节点118)。示例HMS 102还能够通过例如向/从组合服务器添加和/或移除硬件组件来动态地重组(例如升级、更新、降级等)组合服务器。示例HMS 102还能够在不存在智能平台管理接口(IPMI)的情况下发现分散式物理硬件资源108的SRU、SRUM和/或组件。示例HMS 102能够与物理机架104中的特定于供应商的管理元件(例如,具有定义的接口的固件/软件)进行通信。当这样的BMC接口不可用时,示例HMS 102能够在不使用BMC接口的情况下执行其管理操作。示例HMS 102除了固定物理组件级别的发现(诸如发现固定物理服务器、固定物理交换机、固定物理存储设备等)之外,还能够执行分散式物理硬件资源108的硬件组件(例如SRUMCPU、SRUM存储器、SRUM存储、SRUM交换机、SRU)的细粒度(fine-grain)发现。除了固定物理硬件(例如固定物理服务器、固定物理交换机、固定物理存储设备等)的扁平层级之外,示例HMS 102还能够管理物理机架104中的硬件层级(诸如SRU级硬件、SRUM级硬件和组件级硬件)的多个层。示例HMS 102能够支持分散式物理硬件的热插拔和热交换(例如,SRU和/或SRUM的热插拔和热交换)。示例HMS 102还能够通过使用来自跨多个物理机架的分散组件的服务器来组成多机架服务器组合。示例HMS 102还能够使用多个交换元件(例如,多个架顶式(ToR)交换机)或单个ToR交换元件来管理物理机架104。示例HMS 102还能够与交换元件的网络拓扑和配置一起工作,其具有特定于分散式机架体系架构的特征并且不同于例如仅具有固定物理服务器、交换机等的物理机架中使用的ToR交换机/配置拓扑。示例HMS 102也能够执行列尾(End of Row)切换管理。示例HMS 102能够配置和管理共享/池化SRUM类型(诸如SRUM、SRUMCPU、SRUMM、SRUMSW、SRUMS等)。HMS 102还能够执行电力管理和管理共享电力。
在图1所示的示例中,物理机架104由示例系统集成商132准备以分配给客户。所示示例的系统集成商132接收并履行(fulfill)计算硬件的客户订单。图1的示例的系统集成商132从其他供应商(例如一个或更多个示例硬件供应商134)获得计算机硬件和/或软件,并且将各个硬件组件和/或软件组装成功能计算单元以履行客户订单。可选地,系统集成商132可以设计和/或建造要用于组装计算单元的部分或全部硬件组件和/或软件。根据所示示例,系统集成商132为其他实体(例如,不拥有/雇佣系统集成商132以及不被系统集成商132拥有/雇佣的企业和/或个人)准备计算单元。可选地,系统集成商132可以组装计算单元以供与系统集成商132相同的实体使用(例如,系统集成商132可以是公司的部门,其中公司订购和/或使用组装的计算单元)。如本文所使用的,术语客户是指接收和/或操作由系统集成商132提供的计算单元的任何个人和/或实体。在一些示例中,系统集成商132是独立于设备制造商的实体,诸如提供没有品牌的硬件的白标签设备制造商。在其他示例中,系统集成商132是原始器材制造商(original equipment manufacturer,OEM)合作伙伴或原始设备制造商(original device manufacturer,ODM)合作伙伴,其与提供品牌标签硬件的OEM或ODM(例如,非白标签器材制造商)合作。示例OEM/ODM硬件包括OEM/ODM服务器(诸如(HP)服务器和服务器),以及OEM/ODM交换机(诸如Arista交换机)和/或任何其他由原始制造商标记的OEM/ODM服务器、交换机或器材。
根据所说明的示例,从示例系统集成商132订购和/或由其组装的一种类型的计算单元是物理机架104。所示示例的物理机架104由系统集成商132准备为处于使分散式物理硬件资源108能够被快速部署(例如,少于2个小时)以用于组成组合服务器(诸如在客户位置处的组合服务器节点118)的部分配置状态。例如,系统集成商132可以安装操作系统、驱动程序、操作软件、管理软件等。当虚拟服务器机架被安装并且首次由客户供电时,所安装的组件可以被配置有一些系统细节(例如,用于辅助物理机架104的组件之间的相互通信的系统细节)和/或可以由软件来准备以从客户收集更多信息。
为了辅助准备用于分配给客户的物理机架104,在将示例物理机架104运送到客户之前,示例系统集成商132利用虚拟成像设备136在物理机架104上准备和配置操作系统、系统配置、软件等。所示示例的虚拟成像设备136是通过示例网络140(例如因特网、虚拟专用网络等)由示例虚拟系统解决方案提供商138提供给系统集成商132的虚拟计算设备。示例虚拟成像设备136由示例系统集成商132在系统集成商132的虚拟计算环境中执行。例如,虚拟成像设备136可以是虚拟计算图像、虚拟应用程序、容器虚拟机镜像、在系统集成商132计算单元的操作系统中安装的软件应用程序等。虚拟成像设备136可选地由任何其他实体提供和/或可以是物理计算设备、可以是多个物理计算设备和/或可以是虚拟和物理计算组件的任意组合。
所示示例的虚拟成像设备136在物理机架104的准备期间经由网络140从虚拟系统解决方案提供商138检索软件映像和配置数据以安装在物理机架104上。所示示例的虚拟成像设备136将软件映像和配置数据推送(例如,传送、发送等)到物理机架104的组件。例如,所示示例的虚拟成像设备136包括多个网络连接(例如虚拟网络连接、物理网络连接和/或虚拟连接和网络连接的任意组合)。例如,所示示例的虚拟成像设备136连接到安装在物理机架104中的一个或更多个网络交换机的管理接口,在一个或更多个网络交换机上安装网络配置信息,并重新启动一个或更多个交换机,以加载所安装的配置,从而将虚拟成像设备136与经由一个或更多个网络交换机通信地耦合的分散式物理硬件资源108通信地耦合。示例虚拟成像设备136还连接到示例物理机架104的一个或更多个固定物理服务器的管理网络接口(例如带外(OOB)接口),以使得一个或更多个操作系统被安装(例如利用操作系统安装程序的预启动执行环境(PXE)启动)。例如,除了分散式物理硬件资源108之外,物理机架104还可以配备有具有相应的固定CPU、RAM、存储、网络等硬件的一个或更多个固定物理服务器,虚拟成像设备136使用以在物理机架104上安装一个或更多个操作系统和其他虚拟环境管理组件的硬件(结合图3-6并在下面的页面中进一步详细描述)。另外,一个或更多个固定物理服务器节点还可以用于运行HMS 102的部分。示例虚拟成像设备136还使得HMS 102和虚拟环境管理组件启动,使得它们可以接管示例物理机架104的部署。
示例虚拟成像设备136被配置为在没有用户干预并且不需要示例系统集成商132的用户手动连接到示例物理机架104的组件的各种接口的情况下执行部署的许多操作。此外,示例虚拟成像设备136的用户免受定位可能被需要以配置示例物理机架104(例如,一个或更多个网络交换机的固件映像、一个或更多个服务器的操作系统映像、安装在物理机架104中的硬件组件的一个或更多个操作系统驱动程序等)的各种软件映像的负担。此外,由示例虚拟成像设备136部署的虚拟环境管理组件由虚拟成像设备136配置,以辅助在客户位置轻松地部署物理机架104。例如,由示例虚拟成像设备136安装在物理机架104上的虚拟管理组件包括图形用户界面,其通过输入配置参数(例如,客户网络的详细信息、关于现有虚拟环境的信息等)的过程引导客户。此外,示例虚拟管理组件自动发现关于客户系统的一些信息(例如,自动发现关于现有虚拟环境的信息)。
所示示例的网络140将示例系统集成商132与虚拟系统解决方案提供商138通信地耦合。根据所示示例,网络140是因特网。可选地,网络140可以是任何类型的局域网、广域网、无线网络、有线网络、网络的任何组合等。
所示示例的虚拟系统解决方案提供商138是分配(例如,销售)该示例虚拟成像设备136的企业。所示示例的虚拟系统解决方案提供商138还提供图像库和/或可由虚拟成像设备136检索并安装在物理机架104上的其他类型的软件(例如,虚拟机映像、驱动程序、操作系统等)。虚拟系统解决方案提供商138可选地可由多个实体(例如从一个或更多个软件制造商)和/或任何其他类型的实体实现。
图2描绘了图1的示例物理机架104(例如,第一物理机架104)和虚拟服务器机架206的示例部署中的第二物理机架204。例如,物理机架104、204可以由图1的示例系统集成器132组装。在所示示例中,第一物理机架104具有示例架顶式(ToR)交换机A 210、示例ToR交换机B 212、图1的示例管理交换机112以及示例固定物理服务器主机节点(0)209。在所示示例中,管理交换机112和服务器主机节点(0)209运行用于第一物理机架104的示例硬件管理服务(HMS)102。所示示例的第二物理机架204还装备有示例ToR交换机A 216、示例ToR交换机B 218、示例管理交换机213以及示例固定物理服务器主机节点(0)211。在所示示例中,管理交换机213和固定物理服务器主机节点(0)211运行用于第二物理机架204的HMS 214。
所示示例的固定物理服务器主机节点(0)209、211包括非分散式配置的相应的固定或专用CPU、RAM、存储、NIC等资源。即,与图1使用图1的分散式物理硬件资源108来组成和配置的组合服务器节点118不同,固定物理服务器主机节点(0)209、211被物理地构造为包括形成固定物理服务器的硬件资源。
在所示示例中,相应物理机架104、204的管理交换机102、213运行相对应的带外(OOB)代理和相应的HMS 102、214的OOB插件。另外在所示示例中,相应的物理机架104、204的固定物理服务器主机节点(0)209、211运行相应的IB代理、IB插件、HMS服务API以及聚合器。
在所示示例中,HMS 102、214连接到服务器主机节点(0)209、211的服务器管理端口(例如,使用基板管理控制器(BMC)),连接到TOR交换机210、212、216、218的ToR交换机管理端口(例如,使用1Gbps链路),并且还连接到一个或更多个主干交换机(spine switch)222的主干交换机管理端口。这些示例连接形成用于OOB管理的不可路由的专用互联网协议(IP)管理网络。所示示例的HMS 102、214使用至服务器主机节点(0)209、211的服务器管理端口的该OOB管理接口用于服务器硬件管理。此外,所示示例的HMS 102、214使用至TOR交换机210、212、216、218的TOR交换机管理端口以及至一个或更多个主干交换机222的主干交换机管理端口的该OOB管理接口用于交换机管理。在本文公开的示例中,ToR交换机210、212、216、218连接到物理机架104、204中的服务器主机的服务器网络接口卡(NIC)端口(例如使用10Gbps链路)用于下行链路通信,并且连接到一个或更多个主干交换机(例如,使用40Gbps链路)用于上行链路通信。在所示示例中,管理交换机112、213还连接到ToR交换机210、212、216、218(例如,使用10Gbps链路),用于管理交换机207、213和ToR交换机210、212、216、218之间的内部通信。另外在所示示例中,HMS 102、214装备有到物理机架104、204的每个分散式物理硬件SRU(例如,示例分散式物理硬件资源108、226的SRU)的IB连接。在所示示例中,IB连接通过在SRU的共享功能上运行的操作系统使用特定于OS的API(诸如vSphereAPI、命令行接口(CLI)和/或诸如来自分布式管理任务组(DMTF)的公共信息模型之类的接口)接口至分散式物理硬件资源108、226。
相应的物理机架104、204的HMS 102、214与相应的物理机架104、204的虚拟机架管理器(VRM)225、227接口,以使用物理机架104、204的分散式物理硬件资源108、226(如处理器、网络接口卡、服务器、交换机、存储设备、外围设备、电源等)实例化并管理虚拟服务器机架206。在所示示例中,第一物理机架104的VRM 225在第一物理机架104的三个服务器主机节点上运行,其中一个是服务器主机节点(0)209。如本文所用,术语“主机”指的是功能上不可分割的单元,例如物理固定物理服务器或组合服务器(如图1的组合服务器节点118,其由分散式物理硬件资源108、226组成)。例如,主机可以被组成、配置或作为一个整体分配到虚拟机架和/或工作负载;整体上电或断电;或者可被认为是一个完整的功能单元。另外在所示示例中,第二物理机架204的VRM 227在第二物理机架204的三个服务器主机节点上运行,其中一个是服务器主机节点(0)211。在所示示例中,相应物理机架104、204的VRM 225、227通过一个或更多个主干交换机222相互通信。此外,在所示示例中,物理机架104、204的分散式物理硬件资源108、226之间的通信通过一个或更多个主干交换机222在物理机架104、204的ToR交换机210、212、216、218之间交换。在所示示例中,每个ToR交换机210、212、216、218连接到两个主干交换机222中的每一个。在其他示例中,可以使用更少或更多的主干交换机。例如,当将物理机架添加到虚拟服务器机架206时,可以添加附加的主干交换机。
VRM 225使用高可用性(HA)模式配置在第一物理架104的三个服务器主机节点的集群上运行。此外,VRM 227使用HA模式配置在第二物理机架204的三个服务器主机节点的集群上运行。以这种方式使用HA模式,使能在集群中用于VRM 225、227的三个服务器主机节点之一故障的情况下,VRM 225、227的容错操作。一旦执行VRM 225、227的服务器主机节点故障,VRM 225、227可重新启动,以在集群中的另一个主机上执行。因此,即使在集群中的服务器主机节点之一故障的情况下,VRM 225、227继续可用。
在本文公开的示例中,使用命令行接口(CLI)和API来管理ToR交换机210、212、216、218。例如,HMS 102、214使用CLI/API来填充与ToR交换机210、212、216、218相对应的交换机对象。当HMS启动,HMS 102、214用静态可用信息填充初始交换机对象。此外,HMS 102、214使用周期轮询机制作为HMS交换机管理应用程序线程的一部分,以从ToR交换机210、212、216、218(例如链路状态、分组统计数据、可用性等)收集统计和健康数据。还有一个配置缓冲区作为交换机对象的一部分,其存储要在交换机上应用的配置信息。
图3描绘了图1和图2的示例物理机架104、204之一的示例配置。在图3所示示例中,HMS 102、214通过管理网络接口卡(NIC)302与分散式物理硬件资源108、226的物理硬件SRU进行通信。例如,NIC 302可以是物理硬件SRU中共享功能的一部分。示例HMS 102、214还示出为与示例ToR交换机210、216、212、218通信。示例ToR交换机210、216、212、218通过分布式交换机306的多个上行链路端口308、310与分布式交换机306通信。在所示示例中,上行链路端口308、310使用单独的NIC来实现。在所示示例中,分布式交换机306可以是安装在物理机架104、204中的固定物理交换机,或者可以是池化网络资源108b(图1)的交换机。
在所示示例中,分布式交换机306运行被称为虚拟机内核(VMK)的多个虚拟适配器,所述虚拟机内核包括示例VMK0管理内核314、示例VMK1 vMotion内核316、示例VMK2vSAN内核318以及示例VMK3 VXLAN 320。VMK0管理内核314虚拟适配器是由分布式交换机306执行的软件,以使用分配给分布式交换机306使用的各个分散式物理硬件资源108、226。在本文公开的示例中,图2的VRM1 225使用VMK0管理内核314来通过图2的主干交换机222与VRM2 227进行通信。VMK1 vMotion316虚拟适配器是由分布式交换机306执行的软件,以辅助分散式物理硬件资源108、226之间的虚拟机的实时(live)迁移,而本质上很少或没有停机时间,以从正在迁移的虚拟机提供连续的服务可用性。VMK2 vSAN 318虚拟适配器是由分布式交换机306执行的软件,用于聚集虚拟集群中的本地附接的数据存储盘,以创建在虚拟机供应操作期间可以从分布式交换机306供应的存储解决方案。示例VMK3 VXLAN 320是由分布式交换机306执行的虚拟适配器软件,以建立和/或支持在分布式交换机306中供应的一个或更多个虚拟网络。在所示示例中,VMK3 VXLAN 320与示例网络虚拟化管理器304通信。所示示例的网络虚拟化管理器304管理虚拟化网络资源(诸如物理硬件交换机),以提供基于软件的虚拟网络。示例网络虚拟化管理器304可以使用例如图4的VMware 网络虚拟化管理器416来实现。在图3所示的示例中,分布式交换机306被示出为通过多个NIC322、324与分散式物理硬件资源108、226中的一个或更多个接口。例如,NIC 322、324可以是分散式物理硬件资源108、226的SRU的共享功能的一部分或者可以是包括多个NIC SRUM的池化网络资源108b(图1)的网络SRU中的组件。以这种方式,VM内核314、316、318、320可以基于分散式物理硬件资源108、226的一个或更多个或部分来实例化虚拟资源。
图1、图2和图3所示示例的HMS 102、214是负责管理物理机架104、204中的各个硬件元件(诸如分散式物理硬件资源108、226)的无状态软件代理。在所示示例中,HMS 102、214在Linux上使用Java实现,使得HMS 102、214的OOB部分在物理机架104、204中的白盒管理交换机(例如,管理交换机112、213)上作为Java应用程序运行。然而,任何其他编程语言和任何其他操作系统可以用于实现HMS 102、214。HMS 102、214管理的分散式物理硬件资源108、226包括白标签SRU,用于与白标签分散式机架体系架构系统(例如,英特尔的机架级体系架构(Rack Scale Architecture,RSA))一起使用。虽然示例HMS 102、214在本文中被公开为管理分散式物理硬件资源,但是在一些示例中,HMS 102、214还管理非分散式白标签设备,诸如白标签服务器、白标签网络交换机、白标签外部存储阵列和/或其他非分散式物理硬件。白标签设备是计算设备,它是没有品牌的,由制造商出售给系统集成商,系统集成商在白标签设备上安装定制软件和其他可能的硬件,以建造满足终端用户或客户规范的计算/网络系统。这种设备的原始制造商的白标签或无品牌使第三方系统集成商能够使用第三方系统集成商的品牌出售其终端用户集成系统。在一些示例中,HMS 102、214也可以用于管理非白标签设备(诸如原始设备制造商(OEM)设备)。这种OEM设备包括OEM服务器(诸如(HP)服务器和服务器),以及OEM交换机(诸如Arista交换机)和/或任何其他OEM服务器、交换机或设备。
图4描绘了示例体系架构400,其中图1的示例虚拟成像设备136被用于配置和部署虚拟服务器机架206(例如,图1-3的物理机架104、204中的一个或更多个)。图4的示例体系架构400包括硬件层402、虚拟化层404以及操作和管理层406。在所示示例中,硬件层402、虚拟化层404以及操作和管理层406是图2的示例虚拟服务器机架206的一部分。所示示例的虚拟服务器机架206基于图1-3的物理机架104、204。可选地,物理机架104或204中的任何一个可以以独立的方式操作,以实例化和运行虚拟服务器机架206。示例虚拟服务器机架206被配置为配置分散式物理硬件资源108、226,以将分散式物理硬件资源108、226虚拟化为虚拟资源,从而供应虚拟资源用于在提供基于云的服务中使用,以及维护分散式物理硬件资源108、226和虚拟资源。示例体系架构400包括虚拟成像设备(VIA)136,其与硬件层402通信,以将操作系统(OS)和软件映像存储在硬件层402的存储器中,用于在初始化配置虚拟服务器机架206所需的物理资源中使用。在所示示例中,VIA 136经由示例网络140从虚拟系统解决方案提供商138(图1)的虚拟系统解决方案提供商映像库424中检索OS和软件映像。例如,VIA 136可以由图1的示例虚拟系统解决方案提供商132提供给图1的系统集成器132,来配置新的物理机架(例如,图1-3的物理机架104、204)以用作虚拟服务器机架(例如,虚拟服务器机架206)。也就是说,每当系统集成商132希望配置用作虚拟服务器机架的新硬件(例如,新物理机架)时,系统集成商132将VIA 136连接到新硬件,并且VIA 136与虚拟系统提供商映像库424通信,以检索配置用作虚拟服务器机架的新硬件所需的OS和/或软件映像。在所示示例中,位于虚拟系统提供商映像库424中的OS和/或软件映像被配置为向系统集成商132提供选择灵活性,以从多个硬件制造商中的任何一个获得硬件。像这样,终端用户可以从多个硬件制造商获得硬件,而无需为每个硬件制造商开发定制软件解决方案。示例VIA136的更多细节在2015年6月26日提交的标题为“用于虚拟计算环境的机架部署的方法和装置(Methods and Apparatus for Rack Deployments for Virtual ComputingEnvironments)”的第14/752,699号美国专利申请中公开,在此通过引用整体并入本文。
图4的示例硬件层402包括图1-3的HMS 102、214,其与分散式物理硬件资源108、226(例如CPU、NIC、交换机、存储设备、外围设备、电源等)接口。HMS 102、214被配置为管理各个组合服务器节点,例如图1的从分散式物理硬件资源108、226的不同组件组成的组合服务器节点118。例如,对组合服务器节点的管理涉及组合和配置节点、发现组合节点、自举组合节点、重置组合节点、处理硬件事件(例如警报、传感器数据阈值触发)和状态改变,以独立于硬件的方式将硬件事件和状态改变暴露给其他资源和虚拟服务器机架206的堆栈。HMS102、214还支持分散式物理硬件资源108、226的机架级启动顺序,并且提供诸如对分散式物理硬件资源108、226的安全重置、远程重置和/或硬重置之类的服务。
所示示例的HMS 102、214是相应物理机架104、204中包括双冗余管理交换机112、213的专用管理基础体系架构和附接到服务器主机节点(0)209、211和ToR交换机210、212、216、218(图2和3)的专用管理端口的一部分。在所示的示例中,HMS 102、214的一个实例运行每个物理机架104、204。例如,HMS 102、214可以在安装在示例物理机架104、204中的管理交换机112、213和服务器主机节点(0)209、211上运行。在图2中所示的示例中,HMS 102、214两者都被设置在相应的管理交换机112、213和相应的服务器主机节点(0)209、211中作为冗余特征,其中HMS 102、214之一是主HMS,而HMS 102、214中的另一个是辅助HMS。以这种方式,在硬件管理交换机112、213故障和/或另一个HMS 102、214在其上执行的服务器主机节点(0)209、211故障的情况下,HMS 102、214之一可以作为主HMS接管。在一些示例中,为了实现无缝故障转移,HMS 102、214的两个实例在单个物理机架104、204中运行。在这样的示例中,物理机架104、204设置有两个管理交换机,并且两个管理交换机的每一个运行HMS 102、214的单独实例。在这样的示例中,图1和图2的物理机架104在两个独立的物理硬件管理交换机和两个独立的服务器主机节点(0)上运行HMS 102的两个实例,并且图2的物理机架204在两个独立的物理硬件管理交换机和两个独立的服务器主机节点(0)上运行HMS 214的两个实例。以这种方式,例如,物理机架104上的HMS 102的实例之一用作主HMS 102,而HMS102的另一个实例用作辅助HMS 102。HMS 102在物理机架104中的两个独立的管理交换机和两个独立的服务器主机节点(0)上的两个实例(或者HMS 214在物理机架204中的两个独立的管理交换机和两个独立的服务器主机节点(0)上的两个实例)通过点到点、专用以太网链路连接,其在主HMS实例和辅助HMS实例之间传输心跳(heartbeat)和存储器状态同步。
HMS 102、214可能遇到许多种类的故障。下面表1中列出了一些示例故障类别。
表1-HMS故障类别
在图4所示的示例中,硬件层402包括监视HMS 102、214的操作状态和健康的示例HMS监视器428。示例HMS监视器428是HMS 102、214的环境之外的外部实体,其检测和修复HMS 102、214中的故障。也就是说,HMS监视器428是在HMS守护进程(daemon)之外运行以监视守护进程的进程。例如,HMS监视器428可以在与HMS 102、214相同的管理交换机112、213中与HMS 102、214一起运行。示例HMS监视器428被配置为监视以上表1的类型1故障,并且在需要修复此类故障时重启HMS守护进程。示例HMS监视器428还被配置为调用HMS维护模式守护进程,来监视以上表1的类型2故障。在本文公开的示例中,HMS维护模式守护进程是最小HMS代理,其充当HMS 102、214的基本备份,直到HMS 102、214的类型2故障得到解决为止。
示例虚拟化层404包括虚拟机架管理器(VRM)225、227。示例VRM 225、227与HMS102、214通信以管理分散式物理硬件资源108、226。示例VRM 225、227从可能跨越一个或更多个物理机架(或诸如超级设备或半机架的较小单元)的底层分散式物理硬件资源108、226创建示例虚拟服务器机架206,并且处理对这些资源的物理管理。示例VRM 225、227使用虚拟服务器机架206作为聚合的基础来创建并提供操作视图、处理故障域和改变规模(scale)以适应工作负载简档。示例VRM 225、227记录虚拟服务器机架206中的可用容量,在整个SDDC生命周期中维护虚拟资源的逻辑池的视图,并且将逻辑资源供应转换为对分散式物理硬件资源108、226的分配。示例VRM 225、227与虚拟系统解决方案提供商138(图1)、示例VMware 虚拟化基础体系架构组件套件408、示例VMware 虚拟基础体系架构服务器410、示例ESXi TM超级管理程序组件412、示例VMware 网络虚拟化平台414(例如,网络虚拟化组件或网络虚拟器)、示例VMware 网络虚拟化管理器416以及示例VMware vSANTM网络数据存储虚拟化组件418(例如,网络数据存储虚拟器)的组件接口。在所示示例中,VRM 225、227与这些组件通信以管理和呈现底层资源(例如主机和集群)的逻辑视图。示例VRM 225、227还使用逻辑视图来协调和供应工作负载。VRM 225、227的其他细节在下面结合图5公开。
所示示例的VMware 虚拟化基础体系架构组件套件408是设置和管理服务器、网络和其他资源的虚拟基础体系架构的组件集合。VMware 虚拟化基础体系架构组件套件408的示例组件包括示例VMware 虚拟基础体系架构服务器410和示例ESXiTM超级管理程序组件412。
示例VMware 虚拟基础体系架构服务器410提供对虚拟化基础体系架构(例如,VMware 虚拟化基础体系架构)的集中管理。例如,VMware 虚拟基础体系架构服务器410提供对来自单个控制台的虚拟化主机和虚拟机的集中管理,以向IT管理员提供对检查和管理虚拟基础体系架构组件的配置的访问。
示例ESXi TM超级管理程序组件412是安装并运行在由示例分散式物理硬件资源108、226构成的组合服务器(例如,图1的示例组合服务器节点118)上的超级管理程序,以使组合服务器能够划分成多个逻辑服务器来创建虚拟机。
示例VMware 网络虚拟化平台414(例如,网络虚拟化组件或网络虚拟器)虚拟化诸如物理硬件交换机(例如,图1的池化网络资源108b的物理交换机)之类的网络资源以提供基于软件的虚拟网络。示例VMware 网络虚拟化平台414能够将物理网络资源(例如交换机)视为传输容量池。在一些示例中,VMware 网络虚拟化平台414还使用策略驱动方法向虚拟机提供网络服务和安全服务。
示例VMware 网络虚拟化管理器416管理诸如物理硬件交换机(例如,图1的池化网络资源108b的物理交换机)之类的虚拟化网络资源,以提供基于软件的虚拟网络。在所示示例中,VMware 网络虚拟化管理器416是VMware 网络虚拟化平台414的集中式管理组件,并且作为ESXi主机上的虚拟设备运行(例如图1的组合服务器节点118运行ESXi TM超级管理程序412)。在所示的示例中,VMware 网络虚拟化管理器416管理使用VMware 虚拟基础体系架构服务器410实现的单个vCenter服务器环境。在所示示例中,VMware 网络虚拟化管理器416与VMware 虚拟基础体系架构服务器410、ESXi TM超级管理程序组件412和VMware 网络虚拟化平台414通信。
示例VMware vSAN TM网络数据存储虚拟化组件418是软件定义的存储,用于与使用VMware 虚拟化基础体系架构组件套件408实现的虚拟化环境一起使用。示例VMware vSAN TM网络数据存储虚拟化组件将服务器附加的硬盘驱动器(HDD)和固态驱动器(SSD)(例如,图1的池化贮存器资源108c的存储设备)组成集群,来创建用作虚拟环境中的虚拟贮存器资源的共享数据存储。
尽管示例VMware 虚拟化基础体系架构组件套件408、示例VMware虚拟基础体系架构服务器410、示例ESXiTM超级管理程序组件412、示例VMware网络虚拟化平台414、示例VMware 网络虚拟化管理器416以及示例VMwarevSAN TM网络数据存储虚拟化组件418在所示示例中示出为使用由VMware公司开发和销售的产品实现,但这些组件中的部分或全部可由具有其他虚拟化组件开发商开发和销售的相同或类似功能的组件替代供应。
所示示例的虚拟化层404及其相关组件被配置为运行虚拟机。然而,在其他示例中,虚拟化层404可以附加地或可选地被配置为运行容器。虚拟机是数据计算机节点,其使用虚拟化软件虚拟化的主机资源,在主机上使用自身的客户操作系统进行操作。容器是数据计算机节点,其在主机操作系统顶部运行,不需要超级管理程序或单独的操作系统。
所示示例的虚拟服务器机架206使得能够提取(abstract)分散式物理硬件资源108、226。在一些示例中,虚拟服务器机架206包括一组物理单元(例如,一个或更多个机架),每个单元包括分散式硬件108、226,用于在组成、配置和分配组合服务器节点中使用。从用户的角度来看,示例虚拟服务器机架206是作为一个或更多个vCenter ESXi TM集群公开的逻辑资源的聚集池以及逻辑存储池和网络连接。在本文公开的示例中,集群是虚拟环境中的组合的和/或固定的物理服务器组。例如,vCenterESXi TM集群是使用运行ESXi TM超级管理程序(由VMware公司开发和销售)的分散式物理硬件资源108、226组成的一组固定物理服务器和/或组合服务器(例如,图1的示例组合服务器118),以将处理器、存储器、存储和联网资源虚拟化为逻辑资源,以运行多个虚拟机,所述虚拟机运行操作系统和应用程序,就好像这些操作系统和应用程序在物理硬件上运行而没有中间虚拟化层一样。
在所示示例中,示例OAM层406是VMware 自动化中心(VCAC)的扩展,其依赖于VCAC功能,并且还利用实用程序(诸如vRealize、Log Insight TM和)来交付SDDC操作和管理的单点。示例OAM层406被配置为提供不同的服务,诸如热图服务、容量计划器服务、维护计划器服务、事件和操作视图服务以及虚拟机架应用程序工作负载管理者服务。
在所示示例中,OAM层406的热图服务暴露了映射到虚拟化层和应用程序层的硬件的组件健康状况(例如,以指示良好的、警告的和关键的状态)。示例热图服务还根据所提供的服务级别协议(SLA)来衡量实时传感器数据,并且可以触发一些逻辑操作来进行调整以确保持续的SLA。
在所示示例中,OAM层406的容量计划器服务针对可用资源进行检查,并且在部署应用程序工作负载之前查找潜在的瓶颈。示例容量计划器服务在扩展容量时,还在收集/堆栈中集成了附加的机架单元。
在所示示例中,OAM层406的维护计划器服务在开始维护硬件组件之前动态地触发一组逻辑操作以重新定位虚拟机(VM),以增加本质上很少或不停机的可能性。OAM层406的示例维护计划器服务在开始应用程序的维护之前创建现有状态的快照。OAM层406的示例维护计划器服务通过创建机器的克隆来自动进行软件升级/维护,并且继续在克隆上升级软件,暂停正在运行的机器以及将克隆附加到网络。如果升级不成功,则OAM层406的示例维护计划器服务也执行回滚。
在所示示例中,OAM层406的事件和操作视图服务通过馈送至Log Insight而为日志提供单个仪表板。OAM层406的示例事件和操作视图服务还将来自热图服务的针对日志的事件(例如,服务器开始过热、连接开始掉线、来自App服务器的许多HTTP/503)相关联。OAM层406的示例事件和操作视图服务还创建业务操作视图(例如,从应用程序工作负载=>逻辑资源视图=>物理资源视图的自上而下视图)。OAM层406的示例事件和操作视图服务还提供逻辑操作视图(例如,从物理资源视图=>vCenter ESXi集群视图=>VM视图的自底向上视图)。
在所示示例中,OAM层406的虚拟机架应用程序工作负载管理器服务使用vCAC和vCAC企业服务来将应用程序部署到vSphere主机。OAM层406的示例虚拟机架应用程序工作负载管理器服务使用来自热图服务、容量计划器服务、维护计划器服务以及事件和操作视图服务的数据来构建智能,以选择主机上最佳的应用程序组合(例如,不把所有高CPU密集的应用程序放在一台主机上)。OAM层406的示例虚拟机架应用程序工作负载管理器服务优化了应用程序和虚拟存储区域网络(vSAN)阵列以同时具有高数据弹性和最佳可能性能。
图5描绘了图4中示出图2-4的示例HMS 102、214的示例体系架构400的另一视图,所述HMS 102、214在图2-4的示例分散式物理硬件资源108、226和图4的示例体系架构400的示例VRM 225、227之间接口。在所示示例中,VRM 225、227包括与体系架构400的其他组件接口的多个应用程序编程接口(API)502、504、506、508。所示示例的API 502、504、506、508包括例程、协议、函数调用以及被定义为由外部程序、例程或与VRM 225、227通信的组件使用的其他组件。这种通信可以包括向VRM 225、227发送信息,从VRM 225、227请求信息,请求VRM 225、227执行操作,配置VRM 225、227等。例如,VRM 225、227的HMS API接口502用于辅助HMS 102、214和VRM 225、227之间的通信,VRM 225、227的另一个API接口506用于辅助操作和管理层406与VRM 225、227之间的通信,而VRM 225、227的另一个API接口508用于促进VRM 225、227和网络虚拟化管理器304以及vCenter服务器510之间的通信。VRM 225、227的另一个API接口504可以用于辅助VRM 225、227与用户接口之间的通信以供管理员用来管理VRM 225、227。
示例VRM 225、227经由HMS API接口502与HMS 102、214进行通信,以管理分散式物理硬件资源108、226。例如,VRM 225、227通过与HMS 102、214通信获得并维护分散式物理硬件资源108、226的清单。示例VRM 225、227还使用HMS 102、214来发现新的硬件(例如,分散式物理硬件资源108、226),并且将新发现的硬件添加到清单。示例VRM 225、227还被配置为通过使用每机架HMS 102、214来管理虚拟服务器机架206内的分散式物理硬件资源108、226。示例VRM 225、227维护故障域的概念(notion)并在其逻辑资源(例如,虚拟资源)到分散式物理硬件资源108、226的映射中使用这些域。响应于来自HMS 102、214的硬件事件的通知,示例VRM 225、227处理分散式物理硬件资源108、226(例如,附加的SRU和/或SRUM)的添加/移除,添加新的机架单元,维护以及硬关机/重置。示例VRM 225、227还将物理传感器数据和警报转换为逻辑事件。
在图5所示的示例中,VRM 225、227的软件堆栈包括示例工作流服务引擎514、示例资源聚合和相关引擎516、示例物理资源管理器(PRM)518、示例逻辑资源管理器(LRM)520、示例广播和选择管理器522、示例安全管理器524、示例资产清单和许可管理器526、示例逻辑对象生成引擎528、示例事件处理管理器530、示例VRM目录532、示例可扩展性工具534、示例配置组件服务536、示例VRM配置组件538以及示例配置用户界面(UI)540。示例VRM 225、227还包括示例VRM数据存储542。提供示例工作流服务引擎514用于管理被供应为由虚拟服务器机架206的资源执行的服务的工作流。提供示例资源聚集和相关引擎516来聚集逻辑和物理资源,并且协调逻辑和物理资源之间的操作以分配给要由虚拟服务器机架206执行的服务。提供示例PRM 518以供应、维护、分配和管理分散式物理硬件资源108、226,以供虚拟服务器机架206用于供应和分配逻辑资源。提供示例LRM 520以供应、维护、分配和管理逻辑资源。
提供示例广播和选择管理器522来广播或者广告虚拟服务器机架206的能力。例如,寻找虚拟服务器机架的资源的服务可以通过从广播和选择管理器522接收这种能力的广播或广告来从虚拟服务器机架206获得可用的能力(例如,逻辑资源)。广播和选择管理器522还被配置为标识已被请求分配的虚拟服务器机架206的资源。示例安全管理器524被提供以实现安全过程,以防止误用虚拟服务器机架206的资源和/或防止对虚拟服务器机架206的未经授权访问。
在所示示例中,还提供广播和选择管理器522来管理示例主VRM选择过程。在本文公开的示例中,由VRM 225、227执行主VRM选择过程,以确定将作为虚拟服务器机架的主VRM操作的VRM。例如,如图2所示,示例虚拟服务器机架206包括在第一物理机架104中运行的第一VRM 225以及在第二物理机架204中运行的第二VRM 227。在图2所示的示例中,第一VRM225和第二VRM 227彼此通信以执行主VRM选择过程。例如,VRM 225可以执行从第二VRM 227获得信息的过程,并且执行算法以决定它(第一VRM 225)还是第二VRM 227将是主VRM,以管理虚拟服务器机架206的所有物理机架104、204的虚拟资源。在一些示例中,广播和选择管理器522实例化相对应的VRM 225、227的管理程序(zookeeper)810a,b(图8)。在一些示例中,广播和选择管理器522执行作为管理程序810a,b的一部分的主VRM选择过程。
提供示例资产清单和许可管理器526来管理虚拟服务器机架206的组件的清单并确保使用符合许可要求的虚拟服务器机架206的不同组件。在所示示例中,示例资产清单和许可管理器526还与许可服务器通信,以确保虚拟服务器机架206具有适当的用于虚拟服务器机架206的组件的最新许可证。提供示例逻辑对象生成引擎528来为分散式物理硬件资源108、226的不同部分生成逻辑对象,使得逻辑对象可以用于基于分散式物理硬件资源108、226来供应逻辑资源。提供示例事件过程管理器530来管理在虚拟服务器机架206中运行的不同进程的实例。提供示例VRM目录532来跟踪虚拟服务器机架206中的逻辑和物理资源的身份和可用性。提供示例可扩展性工具534,通过添加附加组件(诸如附加物理机架)以形成虚拟服务器机架206来辅助扩展虚拟服务器机架206的能力。
示例配置组件服务536找到用于虚拟化物理机架104、204的配置组件,并且获得配置参数,这样的配置组件需要该配置参数以用于虚拟化过程。示例配置组件服务536使用它们相对应的配置参数和事件来调用配置组件。示例配置组件服务536将配置参数映射到示例配置UI 540的用户界面属性以供管理员用于通过示例VRM门户544来管理VRM 225、227。示例VRM门户544是基于网页的界面,其提供对VRM 225、227的一个或更多个组件的访问,以使管理员能够配置VRM 225、227。
示例VRM配置组件538提供配置逻辑以配置图4的示例虚拟化层404的虚拟化组件。例如,VRM配置组件538配置VRM 225、227、图4的VMware 虚拟基础体系架构服务器410、图4的ESXi TM超级管理程序组件412、图4的VMware 网络虚拟化平台414和VMware 网络虚拟化管理器416以及图4的VMware vSAN TM网络数据存储虚拟化组件418。
提供示例VRM数据存储542以存储配置信息、供应信息、资源分配信息和/或由VRM225、227用来管理虚拟服务器机架206的硬件配置、逻辑配置、工作流程、服务等的任何其他信息。
当所示示例的VRM 225、227启动之后,VRM 225、227被重新配置为具有新的网络设置。为了跨越后端组件(例如,图4的VMware 虚拟基础体系架构服务器410、ESXiTM超级管理程序组件412、VMware 网络虚拟化平台414、VMware 网络虚拟化管理器416和VMware vSANTM网络数据存储虚拟化组件418)重新配置新的网络设置,VRM225、227服务示例配置UI 540以使管理员可访问配置参数。所示示例的VRM 225、227允许组件插入并参与IP地址分配/重新分配。例如,可以通过配置UI 540访问IP重新分配服务,使得用户可以在插入组件时调用IP重新分配服务。示例VRM 225、227将状态消息记录到VRM数据存储542中、向配置UI 540提供状态更新并向配置UI 540提供故障消息。示例VRM 225、227允许组件(例如,图4的示例VMware 虚拟基础体系架构服务器410、图4的示例ESXi TM超级管理程序组件412、图4的示例VMware 网络虚拟化平台414、图4的示例VMware 网络虚拟化管理器416、图4的示例VMware vSAN TM网络数据存储虚拟化组件418和/或任何其他物理和/或虚拟组件)来指定所需IP地址的数量,如果不需要,则包括零。另外,示例VRM 225、227允许组件指定其在IP重新分配过程期间可由VRM 225、227使用的序列号,以调用组件分配IP地址。示例VRM 225、227还通过公共对象启用配置共享,使得组件可以获得其他组件的新旧IP地址。示例VRM 225、227将组件的IP地址存储在VRM数据存储542中。VRM 225、227的其他示例在2015年7月10日提交的标题为“用于在虚拟计算环境的虚拟服务器机架部署中使用的配置虚拟资源管理器的方法和装置(Methods andApparatus to Configure Virtual Resource Managers for use in Virtual ServerRack Deployments for Virtual Computing Environment)”的第14/796,803号(代理人卷号为C150.06)美国专利申请中公开,在此通过引用将其整体并入本文。
在所示示例中,操作和管理层406经由API接口506与VRM 225、227进行通信以提供不同的服务,例如热图服务、容量计划器服务、维护计划器服务、事件和操作查看服务以及虚拟机架应用程序工作负载管理器服务。在所示示例中,网络虚拟化管理器304和vCenter服务器510与VRM 225、227进行通信以实例化、管理虚拟网络和虚拟基础体系架构并与其通信。例如,所示示例的网络虚拟化管理器304可以使用图4的VMware 网络虚拟化管理器416来实现,以虚拟化网络资源,例如图1的池化网络资源108b的物理硬件交换机,以提供基于软件的虚拟网络。示例vCenter服务器510提供用于管理虚拟基础体系架构的集中式和可扩展平台。例如,可以使用图4的VMware 虚拟基础体系架构服务器410来实现vCenter服务器510,以从单个控制台提供对虚拟主机和虚拟机的集中管理。所示示例的vCenter服务器510经由API接口508与VRM 225、227进行通信,以向管理员提供对虚拟服务器机架206的配置的访问及其视图。
所示示例的vCenter服务器510包括示例单点登录(SSO)服务器552以使管理员能够访问和/或配置VRM 225、227。示例SSO服务器552可以使用安全断言标记语言2.0(SAML2.0)的网页浏览器SSO简档实现。在所示示例中,SSO服务器552的SSO用户界面可通过示例VRM门户544访问。以这种方式,使VRM 225、227可访问,但仍使用SSO简档保护。
图6描绘了图1-5的HMS 102、214的示例应用程序编程接口(API),以使示例PRM518能够与物理机架104、204(图1-3)的分散式物理硬件资源108、226(图1-5)和非分散式物理硬件资源进行通信。在所示示例中,HMS 102、204包括图1-5的HMS 102、214的硬件管理应用程序编程接口(API)602,以使PRM 518能够与物理机架104、204的非分散式物理硬件进行通信。所示示例的HMS 102、214还包括硬件组合API 604,以使得PRM 518能够与图1-5的分散式物理硬件资源108、226通信。示例PRM 518是虚拟服务器机架206(图2)的软件堆栈中的VRM 225、227(图4和图5)的组件。在每个物理机架202、204中提供示例PRM 518,并且被配置为管理相对应的物理机架104、204的相对应的分散式物理硬件资源108、226和/或非分散式物理硬件资源,并且维护用于相对应的物理机架104、204的软件物理机架对象。示例PRM518与相同物理机架104、204的相对应HMS 102、214接口,以管理在SRU级、SRUM级和/或组件级的分散式物理硬件资源108、226。在一些示例中,PRM 518运行HMS监视器线程(例如,图4的HMS监视器428的类似物或部分),以监视针对如上表1所示的类型4和类型5故障运行HMS102、214的管理交换机112、213。在一些示例中,当管理交换机112、213的OS需要外部干预时,PRM 518中的HMS监视器线程还监视上表1中所示的一些类型3故障。
在所示示例中,HMS 102、214是无状态的,因为它不保持关于永久存储的任何状态信息。相反,示例HMS 102、214依赖于示例PRM 518,用于组合资源的组成信息(例如标识符、属性等)及与其相关联的子组件(例如,SRUM)。示例PRM 518维持跨越HMS功率周期的状态信息,并且在PRM 518与HMS 102、214之间的初始握手之后以及在HMS 102、214执行发现过程并提供给PRM 518已发现的分散式物理硬件资源清单之后向HMS 102、214通知组合资源。
在所示示例中,PRM 518通过示例LRM 520(图5)为使用物理机架对象(例如,图6的通用pRACK对象624)提供PRM-LRM接口606(例如,一组PRM-LRM API)。示例LRM 520与各个PRM 518实例交互,以基于LRM 520的物理资源需求来采用物理资源。在一些示例中,PRM518作为虚拟服务器机架206中给定服务器节点(例如,图1的组合服务器节点118或固定物理服务器节点)上的LRM应用程序的一部分运行。在所示示例中,LRM 520在Linux上使用Java来实现。但是,可以使用任何其他编程语言和任何其他操作系统。所示示例的PRM 518作为物理机架104、204中的指定服务器节点上的VRM 225、227的一部分在基于x86的Linux虚拟机环境中运行。
在图6所示的示例中,HMS 102、214公布HMS API 610,供非分散式物理硬件资源的原始设备制造商(OEM)使用,以将硬件或软件与虚拟服务器机架206的软件堆栈集成。在所示示例中,OEM非分散式硬件的集成点是硬件管理API 602。在所示示例中,OEM非分散式硬件配备有特定于供应商的插件接口,其可以被开发供硬件管理API 602使用,以辅助与具有特定于供应商的接口的特定供应商的物理硬件通信。在所示示例中,这样的特定于供应商的插件接口使用由底层的非分散式硬件组件支持的接口协议(例如,IPMI API、代表性状态转移(REST)API、可扩展标记语言(XML)API、超文本传输协议(HTTP)API、客户信息模型(CIM)API等)与相应的非分散式硬件接口。在所示示例中,安装在物理机架104、204中的非分散式物理硬件资源可以包括一个或更多个物理服务器、一个或更多个物理交换机和外部存储。所示示例的物理交换机包括图2的管理交换机112、213和ToR交换机210、212、216、218。
在所示示例中,HMS 102、214提供示例HMS API 610,供PRM 518使用,以基于非分散式物理硬件资源来访问虚拟资源的使用。在所示示例中,HMS API 610不是特定于任何特定供应商和/或硬件的,并且使用REST/JSON(JavaScript对象概念)API协议来实现。但是,可以使用任何其他的API协议。示例HMS API 610与底层非分散式物理硬件资源进行通信,其被封装在一组软件对象(例如示例服务器对象632、示例交换机对象634和/或示例存储对象636)中。在所示示例中,HMS 102、214维护服务器对象632、交换机对象634和存储对象636及其相关属性。在所示示例中,HMS 102、214在示例服务器主机节点(0)209、211(图2)上运行HMS API 610,以与示例PRM 518、示例OEM插件612以及示例RSA插件614接口。示例OEM插件612和示例RSA插件614作为带外(OOB)通信代理进行操作,以与非分散式物理硬件资源和示例分散式物理硬件资源108、226进行通信。在所示示例中,OEM插件612和示例RSA插件614在管理交换机112、213上运行。在所示示例中,OEM插件612和示例RSA插件614被配置为通过特定于供应商的接口与供应商硬件进行通信。
示例HMS 102、214在内部维护硬件管理API 602,以服务在HMS API 610处接收到的API请求。所示示例的硬件管理API 602是特定于供应商的并且被实现为HMS 102、214的特定于供应商的插件。硬件管理API 602使用OEM插件612和RSA插件614与非分散式物理硬件资源的特定于供应商的插件接口进行接合,以与非分散式物理硬件资源进行通信。例如,硬件管理API 602使用OEM插件612和RSA插件614在HMS API 610和非分散式物理硬件资源的特定于供应商的插件接口之间交换数据。示例特定于供应商的接口可以是用于硬件管理的相应的OEM供应商专有的。不管特定于供应商的接口是专有的,还是工业标准或开放接口的一部分,公布的硬件管理API 602被配置为在PRM 518和非分散式物理硬件资源之间无缝地工作,以管理非分散式物理硬件资源。在本文公开的示例中,在PRM 518和HMS 102、214之间提供实现示例HMS API 610的单个通用API接口(例如,REST API、JSON API等),以辅助隐藏所有硬件和HMS 102、214中的非分散式硬件管理的供应商特定性,并且将这种硬件和供应商特定性的复杂性与PRM 518和/或LRM 520中的上层进程隔离。
在本文公开的示例中,HMS 102、214使用用于OOB管理的IPMI/DCMI(数据中心可管理性接口)。由HMS 102、214执行的示例OOB操作包括发现新硬件、自举、远程功率控制、认证、无响应主机的硬复位、监视灾难性硬件故障以及固件升级。在本文公开的示例中,集成的BMC(基板管理控制器)嵌入式局域网(LAN)信道用于固定物理服务器主机的OOB管理。在本文公开的示例中,针对OOB管理流量启用一个专用接口。在这样的示例中,为动态主机配置协议(DHCP)启用接口并且连接到管理交换机(例如,运行HMS 102、214的管理交换机112、213)。在本文公开的示例中,创建管理用户以操作用于OOB管理流量的专用接口。示例HMSOOB线程使用IPMI命令通过用于OOB管理流量的专用接口来发现和管理固定物理服务器节点。可通过集成BMC嵌入式LAN用于OOB管理流量的示例IPMI特征包括以下属性和传感器。
属性
设备ID
冷重置
获得自测试结果
设置/获取ACPI电源状态
设置/获取用户名
设置/获取用户访问
设置/获取用户密码
获取机箱状态
机箱控制电源关闭/开启/重启/硬重置
机箱身份
设置/获取系统引导选项
获取系统重新启动的原因
设置/获取LAN配置
DHCP主机名称
认证类型支持
认证类型启用
主RMCP端口号
默认网关
传感器
电源单元状态
BMC固件健康
HDD状态
处理器状态
处理器DIMM
处理器温度
示例HMS 102、214使用带内(IB)管理来周期性地监视物理资源(例如,非分散式物理硬件资源和/或分散式物理硬件资源108、226)的状态和健康,并且保持服务器对象632和交换机对象634是最新的。在本文公开的示例中,HMS 102、214在VMware ESXi TM超级管理程序和CIM客户端中使用分布式管理任务组(DMTF)通用信息模型(CIM)提供商来进行IB管理。CIM是用于管理DMTF定义的硬件设备和服务的软件框架,并且在VMware ESXiTM超级管理程序中受支持。CIM提供商是接收和履行由CIM对象管理器(CIMOM)分派给它们的客户请求的类。例如,当应用程序从CIMOM请求动态数据时,它使用CIM提供商接口将请求传递给CIM提供商。由HMS 102、214执行的示例IB操作包括控制电源状态、访问温度传感器、控制硬件(例如CPU、存储器、磁盘等)的BIOS(基本输入/输出系统)清单、事件监视以及记录事件。在本文公开的示例中,HMS 102、214使用IB管理监视的主要组件是I/O设备(例如,网络接口卡、PCI-e接口和磁盘驱动器)。在本文公开的示例中,HMS 102、214使用CIM提供商来监视这样的I/O设备。示例CIM提供商可以被开发为VMware ESXi TM超级管理程序用户世界,以与对应于被监视的I/O设备的驱动程序接口,以收集与那些I/O设备有关的数据。在一些示例中,CIM提供商是C++类,其定义由HMS 102、214用来从底层物理资源(例如,硬件I/O设备)获取数据的对象集合和相应的属性。
所示示例的PRM 518以通用供应商中立的方式将物理机架对象及其相关联的子对象暴露给示例LRM 520。用于非分散式物理硬件资源的物理机架对象的示例子对象包括示例服务器对象列表626(例如,服务器列表)、示例交换机对象列表628(例如,交换机列表)和存储对象列表630(例如,外部存储列表)。示例PRM 518使用示例HMS API 610与示例HMS102、214进行通信,以管理物理机架104、204中的非分散式物理资源(例如硬件),并且获得在物理机架104、204中可用的非分散式物理资源的信息和清单。在所示示例中,HMS 102、214基于这些物理资源的硬件管理API 602执行来自PRM 518的特定于底层非分散式物理硬件资源的指令。也就是说,在HMS 102、214经由HMS API 610从PRM 518接收到与物理机架104、204中的特定非分散式物理硬件资源上的动作相对应的指令之后,HMS 102、214使用示例硬件管理API 602使用该特定物理资源的硬件管理API来向特定的非分散式物理资源发出相应的指令。以这种方式,PRM 518不需要被配置为与物理机架104、204中的不同的非分散式物理资源的多个不同的API通信。相反,PRM 518被配置为经由HMS API 610与HMS 102、214通信,并且HMS 102、214通过示例硬件管理API 602处理与不同的非分散式物理资源的多个不同的特定API的通信。通过使用用于PRM 518的HMS API 610来通过HMS 102、214管理非分散式物理资源并与其接口,物理机架104、204可被配置有或填充有来自许多不同制造商的非分散式硬件,而无需显著地重新配置PRM 518。也就是说,即使这样的制造商需要使用不同的特定于其非分散式设备的API,HMS 102、214被配置为处理使用这样的不同API的通信,而不改变PRM 518如何使用HMS API 610经由HMS 102、214与非分散式物理资源进行通信。因此,示例HMS API 610与示例硬件管理API 602的分离允许HMS 102、214独立于由HMS 102、214提供的供PRM 518使用以管理这种非分散式硬件的HMS API 610,与来自ODM、OEM以及其他供应商的硬件无缝集成。
所示示例的HMS API 610支持许多获取/设置事件,使得HMS 102、214能够支持来自PRM 518的请求。这样的获取/设置事件将对软件服务器和交换机对象属性起作用。HMSAPI 610的示例获取/设置事件包括:
·PRM_HMS_ACK_HANDSHAKE()
·PRM_HMS_GET_RACK_INVENTORY(服务器对象[],交换机对象[],..)
·PRM_HMS_GET_SERVER_OBJECT_PROP(密钥,值)
·PRM_HMS_SET_SERVER_OBJECT_PROP(密钥,值)
·PRM_HMS_GET_SWITCH_OBJECT_PROP(密钥,值)
·PRM_HMS_SET_SWITCH_OBJECT_PROP(密钥,值)
在上述通用HMS服务API 610的获取/设置事件的示例中,“密钥”是作为服务器/交换机对象属性的一部分列出的属性ID。示例PRM_HMS_ACK_HANDSHAKE()事件API使得PRM518能够执行与HMS 102、214的基于确认的握手以建立PRM 518与HMS 102、214之间的连接。示例PRM_HMS_GET_RACK_INVENTORY(服务器对象[],交换机对象[],..)API使得PRM 518能够请求HMS 102、214提供物理机架102、204的非分散式硬件清单。示例PRM_HMS_GET_SERVER_OBJECT_PROP(密钥,值)API使得PRM 518能够从HMS 102、214请求服务器对象属性。例如,PRM 518提供标识所请求的服务器对象属性ID的“密钥”,并且HMS 102、214返回所请求的服务器对象属性的“值”。示例
PRM_HMS_SET_SERVER_OBJECT_PROP(密钥,值)API使得PRM 518能够经由HMS 102、214设置服务器对象属性。例如,PRM 518提供标识目标服务器对象属性ID的“密钥”,并且提供“值”以设置目标服务器对象的属性。示例PRM_HMS_GET_SWITCH_OBJECT_PROP(密钥,值)API使得PRM 518能够从HMS 102、214请求交换机对象属性。例如,PRM 518提供标识所请求的交换机对象属性ID的“密钥”,并且HMS 102、214返回所请求的交换机对象属性的“值”。示例PRM_HMS_SET_SWITCH_OBJECT_PROP(密钥,值)API使得PRM 518能够经由HMS 102、214来设置交换机对象属性。例如,PRM 518提供标识目标交换机对象属性ID的“密钥”,并且提供“值”以设置目标交换机对象的属性。
所示示例的PRM 518向HMS 102、214注册一组回调,PRM 518被配置为用于接收来自HMS 102、214的通信。当PRM回调被注册时,当与这些回调相对应的事件发生时,HMS 102、214调用回调。示例PRM回调API可由PRM 518注册,作为通用HMS服务API 610的一部分,包括:
·PRM回调API
·HMS_PRM_HOST_FAILURE(服务器对象[],原因代码)
·HMS_PRM_SWITCH_FAILURE(交换机对象[],原因代码)
·HMS_PRM_MONITOR_SERVER_OBJECT(密钥,值,更新频率)
·HMS_PRM_MONITOR_SWITCH_OBJECT(密钥,值,更新频率)
示例HMS_PRM_HOST_FAILURE(服务器对象[],原因代码)回调使得HMS 102、214能够向PRM 518通知物理机架104、204中的主机(例如,固定物理服务器)的故障。示例HMS_PRM_SWITCH_FAILURE(交换机对象[],原因代码)回调使得HMS 102、214能够通知PRM 518物理机架104、204的固定物理交换机的故障。示例HMS_PRM_MONITOR_SERVER_OBJECT(密钥,值,更新频率)回调使得HMS 102、214能够将关于服务器对象632的监视器更新发送到PRM518。在所示示例中,“密钥”标识更新相对应的服务器对象632,“值”包括由服务器对象632的HMS 102、214监视的更新的信息,并且“更新频率”指示由HMS 102、214提供给PRM 518的服务器对象监视器更新回调的频率。示例HMS_PRM_MONITOR_SWITCH_OBJECT(密钥,值,更新频率)回调使得HMS 102、214能够将关于交换机对象634的监视器更新发送到PRM 518。在所示示例中,“密钥”标识更新相对应的交换机对象634,“值”包括由交换机对象634的HMS102、214监视的更新的信息,并且“更新频率”指示由HMS 102、214向PRM 518提供交换机对象监视器更新回调的频率。
示例HMS API 610提供不可屏蔽事件类型以供HMS 102、214用于通知PRM 518故障情况,其中HMS 102、214不能继续运行。
·不可屏蔽事件HMS APIs
·HMS_SOFTWARE_FAILURE(原因代码)
·HMS_OUT_OF_RESOURCES(原因代码)
示例HMS_SOFTWARE_FAILURE(原因代码)不可屏蔽事件API使HMS102、214能够向PRM 518通知HMS 102、214中的软件故障。示例HMS_OUT_OF_RESOURCES(原因代码)不可屏蔽事件API使得当HMS 102、214物理资源不足时,HMS 102、214通知PRM 518。
HMS 102、214提供示例硬件管理API 602,以供示例HMS API 610使用,使得HMS102、214能够基于经由HMS API 610从PRM 518接收的指令与物理资源224、226进行通信。所示示例的硬件管理API 602使用其相对应的管理接口与非分散式物理资源对象接口,其中一些可以是特定于供应商的接口。例如,HMS 102、214使用硬件管理API 602来维护托管服务器、交换机和存储软件对象属性。下表2中示出了用于访问服务器对象的示例硬件管理API602。
表2–服务器硬件管理API
下表3中示出了用于访问交换机对象的示例硬件管理API 602。
表3–交换机硬件管理API
在图6所示的示例中,PRM 518维护示例通用pRack对象624。示例通用pRack对象624保存由HMS 102、214返回的并且根据对象类型分类的非分散式物理资源的列表。示例通用pRack对象624包括以下pRack对象定义。
·pRACK对象
··机架ID(逻辑由VRM 225、227提供)
··制造商ID()
··号码服务器对象
··服务器对象列表626
·交换机对象列表628
·HMS心跳时间戳
在上文的pRack对象定义中,机架ID是虚拟服务器机架206(图2)的逻辑标识符。制造商ID()返回配置虚拟服务器机架206的系统集成商104(图1)的标识符。“号码服务器对象”元素存储针对虚拟服务器机架206配置的服务器对象的数量。“服务器对象列表”626元素存储针对虚拟服务器机架206配置的服务器对象的列表。“交换机对象列表”628元素存储为虚拟服务器机架206配置的交换机对象的列表。“HMS心跳时间戳”元素存储当在虚拟服务器机架206的定期监视期间检查虚拟服务器机架206的操作状态(例如,心跳)时的时间戳。
示例PRM 518提供由LRM 520(图5)使用以访问pRack对象624的上述元素的PRM-LRM接口606。在本文公开的示例中,PRM 518和LRM 520在同一个应用程序中运行。如此,PRM518和LRM 520使用本地进程间通信(IPC)彼此进行通信。PRM-LRM接口606的获取/设置事件API的示例包括:
·获取/设置事件LRM API
·LRM_PRM_RECIEVE_HANDSHAKE_ACK()
·LRM_PRM_GET_RACK_OBJECT(PRM_RACK_OBJECT[])
·LRM_PRM_SET_SERVER_OBJECT_PROP(密钥,值)
·LRM_PRM_GET_SERVER_STATS(可用,使用中,故障)
·LRM_PRM_SET_SERVER_CONFIG(SERVER_CONFIG_BUFFER)
·LRM_PRM_SET_SWITCH_ADV_CONFIG(SWITCH_CONFIG_BUFFER)
在获取/设置事件LRM API中,LRM 520可以使用示例LRM_PRM_RECIEVE_HANDSHAKE_ACK()API来建立LRM 520和PRM518之间的连接。LRM 520可以使用示例LRM_PRM_GET_RACK_OBJECT(PRM_RACK_OBJECT[])API来获得与虚拟服务器机架206相对应的机架对象的标识符。LRM 520可以使用示例LRM_PRM_SET_SERVER_OBJECT_PROP(密钥,值)API来经由PRM 518来设置服务器对象属性。例如,LRM 520提供标识目标服务器对象属性ID的“密钥”,并且提供针对目标服务器对象属性设置的“值”。LRM 520可以使用示例LRM_PRM_GET_SERVER_STATS(可用,使用中,故障)API来通过PRM 518请求非分散式物理资源的固定物理服务器的操作状态。例如,PRM518可返回指示非分散式物理资源中有多少固定物理服务器可用的“可用”值,可返回指示非分散式物理资源中有多少固定物理服务器正在使用中的“使用中”值,并且可以返回指示非分散式物理资源中有多少固定物理服务器处于故障状态的“故障”值。LRM 520可以使用示例LRM_PRM_SET_SERVER_CONFIG(SERVER_CONFIG_BUFFER)API来在非分散式物理资源的固定物理服务器中设置配置信息。例如,LRM 520可以通过在“SERVER_CONFIG_BUFFER”参数中引用来通过(pass)存储器缓冲区以指示存储用于固定物理服务器的配置信息的存储器的一部分。LRM520可以使用示例LRM_PRM_SET_SWITCH_ADV_CONFIG(SWITCH_CONFIG_BUFFER)来设置非分散式物理资源的固定物理交换机中的配置信息。例如,LRM 520可以通过在“SWITCH_CONFIG_BUFFER”参数中引用来通过存储器缓冲区以指示存储用于固定物理交换机的配置信息的存储器的一部分。
所示示例的LRM 520向PRM 518注册一组回调,LRM 520被配置为用于接收来自PRM518的通信。当LRM回调被注册时,PRM 518在相对应于那些回调的事件发生时调用回调。可以由LRM 520注册的示例回调包括:
·LRM回调API
·PRM_LRM_SERVER_DOWN(SERVER_ID,REASON_CODE)
·PRM_LRM_SWITCH_PORT_DOWN(SERVER_ID,REASON_CODE)
·PRM_LRM_SERVER_HARDWARE_FAULT(SERVER_ID,REASON_CODE)
当固定物理服务器关闭时,示例PRM_LRM_SERVER_DOWN(SERVER_ID,REASON_CODE)回调API使得PRM 518能够通知LRM 520。当交换机端口关闭时,示例PRM_LRM_SWITCH_PORT_DOWN(SERVER_ID,REASON_CODE)回调API使得PRM 518能够通知LRM 520。当发生固定物理服务器硬件故障时,示例PRM_LRM_SERVER_HARDWARE_FAULT(SERVER_ID,REASON_CODE)回调API使得PRM 518能够通知PRM 518通知LRM 520。
示例HMS API 610提供不可屏蔽事件类型供HMS 102、214使用,以向PRM 518通知其中HMS 102、214不能继续运行的故障情况。
·不可屏蔽事件LRM APIs
·PRM_SOFTWARE_FAILURE(REASON_CODE)
·PRM_OUT_OF_RESOURCES(REASON_CODE)
当发生软件故障时,示例PRM_SOFTWARE_FAILURE(REASON_CODE)不可屏蔽事件API使得PRM 518能够通知LRM 520。当PRM 518资源不足时,示例PRM_OUT_OF_RESOURCES(REASON_CODE)不可屏蔽事件API使得PRM 518能够通知LRM 520。
所示示例的HMS 102、214包括硬件可组合性API 604,以使得PRM 518能够与图1-5的分散式物理硬件资源108、226进行通信。在所示示例中,为了与图1-6的分散式物理硬件资源108、226进行通信并对其进行管理,HMS102、214包括HMS可组合性API 650,供分散式物理硬件资源的原始设备制造商(OEM)使用来将硬件或软件与虚拟服务器机架206的软件堆栈集成。在所示示例中,OEM分散式硬件设置有特定于供应商的插件接口,其可以被开发以供硬件管理API 602使用,以辅助与具有特定于供应商的接口的特定供应商的分散式物理硬件资源108、226通信。
在所示示例中,HMS 102、214提供示例HMS可组合性API 650供PRM 518使用,以基于分散式物理硬件资源108、226来访问虚拟资源的使用。在所示示例中,HMS可组合性API650并不特定于任何特定的供应商和/或硬件,并且使用REST/JSON(JavaScript对象概念)API协议来实现。但是,可以使用任何其他的API协议。示例HMS可组合性API 650与底层非分散式物理硬件资源进行通信,其被封装在一组软件对象中,例如示例SRUM CPU对象654、示例SRUM交换机对象656、示例SRUM贮存器对象658、示例SRUM存储器对象660和/或示例SRU对象662。在所示示例中,HMS 102、214维护SRUM CPU对象654、SRUM交换机对象656、SRUM贮存器对象658、SRUM存储器对象660和SRU对象662及其相关联的属性。在所示示例中,HMS 102、214在示例服务器主节点(0)209、211(图2)上运行HMS可组合性API 650,以与示例PRM 518、示例OEM插件612以及示例RSA插件614接口。示例OEM插件612和示例RSA插件614作为OOB通信代理进行操作,以与非分散式物理硬件资源和示例分散式物理硬件资源108、226进行通信。
在所示示例中,HMS可组合性API 650能够在组件级(例如SRUM、CPU、NIC、存储设备、存储器设备等)处细粒度地发现分散式物理硬件资源清单,并且被配置为将发现的分散式物理硬件资源推送到PRM 518,并且从PRM 518回收所述PRM 518从所发现的分散式物理硬件资源建立的组合元素(例如,组合服务器、组合交换机等)。以这种方式,HMS可组合性API 650被用于HMS 102、214和PRM 518的可组合性操作。当组合资源建立并被PRM 518返回给HMS 102、214时,使用HMS API 610管理组合资源,HMS API 610为以相同的方式管理固定物理资源和组合资源的管理接口。
示例HMS 102、214在内部维护硬件可组合性API 604以服务在HMS可组合性API650处接收到的API请求。所示示例的硬件可组合性API 604是特定于供应商的并且被实现为到HMS 102、214的特定于供应商的插件。硬件可组合性API 604使用OEM插件612和RSA插件614来与分散式物理硬件资源108、226的特定于供应商的插件接口,以与在细粒度组件级别(例如SRUM、CPU、NIC、存储设备、存储器设备等)的分散式物理硬件资源108、226进行通信。例如,硬件可组合性API 604使用OEM插件612和RSA插件614在HMS可组合性API 650和分散式物理硬件资源108、226的特定于供应商的插件接口之间交换数据。示例特定于供应商的接口可以是专属于用于硬件管理的相应的OEM厂商。不管特定于供应商的接口是专有的还是工业标准或开放式接口的一部分,公布的硬件可组合性API 604被配置为在PRM 518和分散式物理硬件资源108、226之间无缝地工作,以管理分散式物理硬件资源108、226。在本文公开的示例中,在PRM 518与HMS 102、214之间提供实现示例HMS可组合性API 650的单个通用API接口(例如,REST API、JSON API等),以辅助隐藏HMS 102、214中的分散式硬件管理的所有硬件和供应商特定性,并且将这种硬件和供应商特定性的复杂性与PRM 518和/或LRM 520中的上层进程隔离。
在所示示例中,HMS 102、214使用OEM插件612和RSA插件614经由示例机架级管理模块668和示例池化系统管理引擎670与分散式物理硬件资源108、226进行通信。示例机架级管理模块668使能与ToR交换机210、212、216、218的通信,用于由HMS 102、214进行整个物理机架管理。示例池化系统管理引擎670使能与分散式物理硬件资源108、226的SRU的共享功能(例如,PSME功能)的通信。在HMS 102、214组成组合服务器(例如,图1的组合服务器118)之后,示例OEM插件612和示例RSA插件614以与固定物理服务器节点同样的方式与组合服务器节点进行通信。另外,HMS 102、214使用HW管理API 602,HMS API 610和服务器对象632以与固定物理服务器节点相同的方式配置和管理组合服务器节点。
为了基于组合服务器(例如,图1的组合服务器节点118)和/或SRUM来管理虚拟资源,所示示例的PRM 518以通用供应商中立的方式将物理机架分散式机架(pRACK DR)对象672并且其关联的组合服务器列表/SRUM列表674暴露给示例LRM 520。示例组合服务器列表/SRUM列表674包括可用于虚拟化和/或已经虚拟化的组合服务器和SRUM的列表。示例PRM518使用示例HMS可组合性API 650与示例HMS 102、214进行通信以管理物理机架104、204中的分散式物理硬件资源108、226,并且获得物理机架104、204中可用的分散式物理硬件资源108、226的信息和清单。在所示示例中,HMS 102、214基于这些物理资源的硬件可组合性API604,执行来自PRM 518的特定于底层物理资源的指令。也就是说,在HMS 102、214经由HMS可组合性API 650从PRM 518接收到对应于物理机架104、204中的特定分散式物理硬件资源108、226上的动作的指令之后,HMS 102、214使用示例硬件可组合性API 604来使用该特定物理资源的硬件管理API向特定的分散式物理资源发出相应的指令。以这种方式,PRM 518不需要被配置为与物理机架104、204中的不同分散式物理资源的多个不同的API通信。相反,PRM 518被配置为经由HMS可组合性API 650与HMS 102、214通信,并且HMS 102、214通过示例硬件可组合性API 602来处理与不同的分散式物理资源的多个不同的特定API的通信。通过使用用于PRM 518的HMS可组合性API 650通过HMS 102、214与分散式物理硬件资源108、226接口并对其进行管理,物理机架104、204可以被配置或填充来自许多不同制造商的分散式硬件,而不需要显著地重新配置PRM 518。也就是说,即使这样的制造商需要使用特定于它们的分散式设备的不同的API,HMS 102、214被配置为使用这样的不同的API处理通信而不改变PRM 518如何使用HMS可组合性API 650经由HMS 102、214与分散式物理资源108、226通信。因此,示例HMS可组合性API 610与示例硬件可组合性API 604的分离允许HMS102、214独立于由HMS 102、214提供的HMS可组合性API 650,与来自ODM、OEM和其他供应商的硬件无缝集成,以供PRM 518使用以管理这种非分散式硬件。
在所示示例中,PRM 518设置有示例PRM可组合性接口674,供LRM 520(图5)使用以访问p RACK DR对象668的元素。在图7中,示例pRACK DR对象672的元素在示例p RACK DR对象层次结构700中示出。基于示例pRACK DR对象层次结构700,示例pRACK DR对象672可以被PRM 518(图5和图6)用来管理分散式物理硬件资源108、226。在所示示例中,pRACK DR对象672是PRM 518中的顶级对象。示例pRACK DR对象层次结构700包括一个或更多个SRU对象702(例如,托盘或抽屉的对象)。每个SRU对象702包括一个或更多个SRUM对象704(例如,托盘/抽屉中的模块)。在所示示例中,SRUM对象704由包括一个或更多个CPU对象706、一个或更多个存储器对象708、一个或更多个贮存器对象710、一个或更多个适配器对象712、一个或更多个交换机对象714和/或一个或更多个功率管理模块对象716的多个物理对象组成。示例物理对象706、708、710、712、714、716处于示例pRACK DR对象层次结构700的最低层。例如,物理对象706、708、710、712、714、716是由示例pRACK DR对象层次结构700定义的对象树的叶节点。物理对象的示例属性是在HMS 102、214通电之后,其被枚举为硬件枚举的一部分。在所示示例中,物理对象706、708、710、712、714、716能够与组件通信以组成组合服务器(cServer)720和组合交换机(cSwitch)722。
下面的表格示出了示例pRACK DR对象672的示例细节,图7的物理对象706、708、710、712、714、716。
·物理对象
当在实际的物理系统中实现上述对象定义时,一些互连对象是只读的(例如,两个枚举(物理)端点(叶对象)已经物理连接而没有可组合性)。示例pRACK DR对象672的对象模型能够处理这种情况以及完全可组合构件模型(例如,任何CPU可以连接到任何存储器、任何存储和/或任何其他分散式物理硬件组件)。
·组合对象
在本文公开的示例中,组合资源(例如图7的组合服务器cServer 720和组合交换机cSwitch 722)由HMS 102、214使用从上述个体物理对象创建的组合对象进行管理。例如,组合服务器118(图1),组合服务器720和组合交换机722使用组合对象来构建。例如,HMS102、214通过发现具有细粒度的物理对象(例如,发现CPU组件、存储组件、网络组件、存储器组件等的组件级发现)来执行这样的组合资源的发现和组合。示例PRM 518使用发现的组件来构建组合资源。在本文公开的示例中,在组成组合资源之后,HMS 102、214将不区分固定物理资源(例如,固定物理服务器)和组合资源(例如,组合服务器)。这样,HMS 102、214以相同的方式管理固定物理资源和组合资源。下表示出了组合对象的示例细节。
cMem对象 | 组合存储器对象 |
cMem ID | 识别组合存储器对象的UID |
pMem容器 | 物理存储器对象容器 |
… |
cAdapter对象 | 组合NIC对象 |
cAdapter ID | 识别组合NIC对象的UID |
pAdapter容器 | 物理适配器对象容器 |
… |
cStorage对象 | 组合贮存器对象 |
cStorage ID | 识别贮存器对象的UID |
pStorage容器 | 物理贮存器对象容器 |
cSwitch对象 | 组合交换机对象 |
cSwitchID | 识别交换机对象的UID |
pSwitch容器 | 物理交换机对象容器 |
… |
下面的表格描述了可用于实现HMS 102、214的示例RSA插件614(图6)以执行DRA管理的示例RSA插件体系架构。
·软件API
硬件特性
尽管使用图1和图2的管理交换机112、213来实现HMS 102、214的示例方式在图6中示出,但图6中所示的一个或更多个元件、过程和/或设备可以被组合、分割、重新安排、省略、消除和/或以任何其他方式实现。此外,示例HMS 102、214,其部分和/或更一般地,示例管理交换机112、213可以通过硬件、软件、固件和/或硬件、软件和/或固件的任意组合来实现。因此,例如,示例HMS 102、214,其部分和/或更一般地,示例管理交换机112、213可以由一个或更多个模拟或数字电路、逻辑电路、一个或更多个可编程处理器、一个或更多个应用程序专用集成电路(ASIC)、一个或更多个可编程逻辑器件(PLD)和/或一个或更多个现场可编程逻辑器件(FPLD)实现。当阅读本专利的任何装置或系统权利要求以覆盖纯粹的软件和/或固件实现方式时,示例HMS 102、214中的至少一个,其部分和/或更一般地,示例管理交换机112、213在此明确地定义为包括有形的计算机可读存储设备或存储盘,诸如存储器,存储软件和/或固件的数字多功能盘(DVD)、光盘(CD)、蓝光盘等。进一步,图1和图2的示例管理交换机112、213可以包括除了或代替图6中所示的那些之外的一个或更多个元件、过程和/或设备,并且/或可以包括任何或全部所示元件、过程和设备中的至少一个。
图8是表示示例机器可读指令的流程图,所述机器可读指令可以被执行以实现图1-6的示例HMS 102、214以及图5和图6的示例PRM 518。在所示示例中,机器可读指令包括用于由一个或更多个处理器(诸如在下面结合图9讨论的示例处理器平台900中示出的处理器912)执行的一个或更多个程序。一个或更多个程序可以在存储在有形计算机可读存储介质(诸如CD-ROM、软盘、硬盘驱动器、数字多功能盘(DVD)、蓝光盘或者与处理器912相关联的存储器)上的软件中具体化,但是整个一个或更多个程序和/或其部分可以替代地由除了处理器912之外的设备执行和/或在固件或专用硬件中具体化。另外,尽管参照图8所示的流程图来描述一个或更多个示例程序,可以替代地使用许多其他实现示例HMS 102、214和/或PRM518的方法。例如,可以改变框的执行顺序和/或可以改变、消除或组合所描述的一些框。
图8的示例流程图包括示例HMS过程802和示例PRM过程804。示例HMS过程802由示例HMS 102、214执行。示例PRM过程804由示例PRM 518执行。因此,执行示例HMS过程802的机器可读指令可以与执行示例PRM过程804的机器可读指令分开。例如,如果HMS 102、214和PRM 518在不同的设备中实现,则用于HMS 102、214和PRM 518的分开的机器可读指令可以在各自的设备中执行。可选地,机器可读指令可以在相同的设备中执行,由例如实例中相同的处理器,其中HMS 102、214和PRM 518在相同的设备中执行。
图8的示例指令结合图1-5的分散式物理硬件资源108、226以及结合组合资源(例如,图1的组合服务器节点118、图7的组合服务器720以及图7的组合服务器722)进行描述。然而,图8的示例指令可结合由HMS 102、214和PRM 518执行的过程来使用,以发现、配置和管理非分散式固定物理硬件资源。
图8的示例指令开始于HMS过程802,其中HMS 102、214发现物理硬件资源(框806)。例如,HMS 102、214使用硬件可组合性API 604(图6)来发现分散式物理硬件资源108、226(图1-5)的组件,以生成分散式物理硬件资源108、226的HMS清单。示例HMS 102、214将HMS清单发送到示例PRM 518(框808)。例如,HMS 102、214可以使用HMS可组合性API 650(图6)经由VRM 225、227(图5)的HMS接口502(图5和图6)将HMS清单发送(例如,推送)到PRM 518。
在示例PRM过程804中,PRM 518从HMS 102、214接收HMS清单(框810)。例如,PRM518可以使用pRACK DR对象672来接收和处理HMS清单。例如,pRACK DR对象672可以将上面结合图7描述的对象与在HMS清单中标识的分散式物理硬件资源108、226中的一些相关联。示例PRM 518组成和/或重组一个或更多个组合资源(框812)。例如,PRM 518使用上面结合图7描述的对象基于在HMS清单中标识的分散式物理硬件资源108、226来构建一个或更多个组合资源,诸如组合服务器720、组合交换机722和/或任何其他类型的组合资源。附加地或可选地,示例PRM 518分配和/或解除分配分散式物理硬件资源108、226以重组组合资源(例如,配置组合资源的重组实例)。在所示示例中,PRM 518将关于组合资源的信息存储在组合服务器列表/SRUM列表674(图6)中。示例PRM 518将一个或更多个组合资源发送到HMS 102、214(框814)。例如,PRM 518可以将上面结合图7描述的关于一个或更多个组合资源(例如,新组合资源或现有组合资源的重组实例)的标识符和属性使用HMS接口502发送到HMS 102、214。
在示例HMS过程802中,HMS 102、214从PRM 518获得一个或更多个组合资源(框816)。例如,HMS 102、214可以使用HMS可组合性API 650来接收上面结合图7描述的关于一个或更多个组合资源(例如,新组合资源或现有组合资源的重组实例)的标识符和属性。示例HMS 102、214管理组合资源和固定物理资源(框818)。例如,HMS 102、214使用OEM插件612、RSA插件614、硬件管理API 602、HMS API 610、服务器对象632、交换机对象634和存储对象636来以同样的方式管理组合资源和固定物理资源。示例HMS 102、214确定是否需要调整一个或更多个组合资源(框820)。例如,基于工作负载需求,一个或更多个组合资源可能未被充分利用或被过度利用。如果示例HMS 102、214确定需要调整一个或更多个组合资源(框820:是),则控制返回到框812。否则(框820:否)图8的示例指令停止操作。
图9是表示可以被执行以实现图5和图6的示例PRM 518以及图8的框812以组成和/或重组组合资源的示例机器可读指令的流程图。在一些示例中,图9的指令被用于在工作负载的操作期间实时(重新)组合组合资源。例如,当工作负载开始超过组合资源的当前存储容量时,可以重组组合资源。示例指令从框900开始。在框900,示例PRM 518确定是否重新组合现有资源。如果示例PRM 518确定不重组现有的组合资源(框900:否),则控制进行到框902。在框902处,示例PRM 518接收要组成的一个或更多个组合资源的规范。在一些示例中,PRM 518通过操作和管理层406(图4)从客户(例如,数据中心操作者)接收规范。例如,客户指定需要分散式物理硬件资源108、226的什么组件和/或多少个组件。在一些示例中,客户仅指定一个或更多个资源将执行的功能、操作和/或过程。在这样的示例中,PRM 518识别这些功能、操作和/或过程所需的分散式物理硬件资源108、226的组件。之后,示例PRM 518基于规范从接受自HMS 102、214的HMS清单中分配分散式物理硬件资源108、226的组件(框904)。示例PRM 518基于来自框904的分散式物理硬件资源108、226的分配组件组成一个或更多个组合资源(框906)。此后,图9的示例指令停止操作。
然而,如果示例PRM 518确定要重组组合资源(框900:是),则控制进行到框908。在框908处,示例PRM 518确定组合资源是否正在执行目前正在接近组合资源的物理硬件资源的最大容量(例如,负载)的工作负载。如果示例PRM 518确定组合资源正在执行接近最大资源负载的当前工作负载(框908:是),则控制前进到框910。在框910处,示例PRM 518确定需要减少负载的物理硬件资源的第一类型。例如,如果示例组合资源正在达到最大网络负载,则示例PRM 518确定所需的第一类型物理硬件资源是网络资源(例如,图1的池化网络资源108b之一)。附加地或可选地,示例PRM 518类似地确定当处理负载达到最大处理负载时所需的第一类型物理硬件资源是CPU资源(例如,图1的池化计算资源108a之一),当存储负载正在达到最大存储负载时所需的第一类型物理硬件资源是贮存器资源(例如,图1的合并贮存器资源108c之一)等。
此后,示例PRM 518分配第一类型的附加物理硬件资源(框912)。在一些示例中,PRM 518基于效率来确定从分散式物理硬件资源108、226分配哪些物理硬件资源。例如,机架上(或第一机架)存储优于机架外(或第二机架)存储,因为与组件之间的物理距离增加相关的潜在时间延迟。在一些示例中,组合资源包括位于单独机架中的物理硬件资源(例如,来自第一物理机架的贮存器资源和来自第二物理机架的CPU资源)。在一些示例中,物理硬件资源是从另一组合资源(例如,具有过多物理硬件资源的组合资源)分配的。在一些示例中,基于组合资源正在执行的应用程序,在组合资源之间频繁(重新)分配物理硬件资源。例如,第一组合资源可以与具有高需求的第一应用程序相关联,并且因此可以比与第二组合资源相关联的第二应用程序具有对物理硬件资源的更高优先级。在这样的示例中,物理硬件资源从第二组合资源重新分配到第一组合资源。在一些示例中,在第一组合资源完成执行第一应用程序之后,将重新分配的资源返回到第二组合资源。示例PRM 518基于来自框912的分散式物理硬件资源108、226的分配的附加组件重组一个或更多个组合资源(框906)。
然而,如果示例PRM 518确定组合资源正在执行没有接近最大资源负载的当前工作负载(框908:否),则控制进行到框914。在框914处,示例PRM 518确定组合资源是否具有过多的物理硬件(例如,未被使用的物理硬件)。例如,PRM 518将由组合资源执行的工作负载与最小阈值(例如,10%)进行比较,并且如果工作负载不超过阈值时间量(例如每小时、每日、每周等)的最小阈值,则PRM 518确定多余资源与组合资源相关联。如果示例PRM518确定组合资源具有过多的物理硬件(框914:是),则控制进行到框916。否则(框914:否),图9的示例指令停止操作。
在框916处,示例PRM 518确定资源过多的物理硬件的第二类型。例如,如果PRM518确定,对于阈值时间量,组合资源的网络负载不频繁地超过最大网络容量的10%,则PRM518确定过多的第二类型的物理硬件资源是网络资源(例如,图1的池化网络资源108b之一)。附加地或可选地,示例PRM 518类似地确定当处理负载低于最小阈值时,第二类型的物理硬件资源是CPU资源(例如,图1的池化计算资源108a之一),和/或当存储负载低于最小阈值时,是贮存器资源(例如,图1的池化贮存器资源108c之一)。
此后,示例PRM 518解除分配过多的第二类型的物理硬件资源(框918)。在一些示例中,物理硬件资源从一个组合资源(例如,具有过多物理硬件资源的组合资源)解除分配,以分配给另一组合资源(例如,需要附加物理资源的组合资源)。在一些示例中,如上所公开的,基于组合资源正在执行的应用程序,在组合资源之间频繁(重新)分配物理硬件资源。示例PRM 518基于来自框918的分散式物理硬件资源108、226的解除分配的过多组件来重组一个或更多个组合资源(框906)。此后,图9的示例指令停止操作。可以以基于工作负载的变化需要组成和/或重组组合资源的频度来重复图9的示例指令。
如上所述,图8和图9的示例过程可以使用存储在有形计算机可读存储介质上的编码指令(例如,计算机和/或机器可读指令)来实现,所述有形计算机可读存储介质诸如硬盘驱动器、闪存、只读存储器(ROM)、光盘(CD)、数字多功能盘(DVD)、高速缓存、随机存取存储器(RAM)和/或任何其他存储设备或其中存储任何持续时间(例如,延长时间段、永久的、短暂的、暂时的缓冲、和/或高速缓存信息)信息的存储磁盘。如本文所使用的,术语有形的计算机可读存储介质被明确地定义为包括任何类型的计算机可读存储设备和/或存储盘并且排除传播信号以及排除传输介质。如本文所使用的,“有形的计算机可读存储介质”和“有形的机器可读存储介质”可互换使用。附加地或可替代地,图8和图9的示例过程可以使用存储在非临时性计算机和/或机器可读介质(诸如硬盘驱动器、闪存、只读存储器、紧致盘、数字多功能盘、高速缓存、随机存取存储器和/或任何其他存储设备或其中存储任何持续时间(例如,延长时间段、永久的、短暂的、暂时的缓冲、和/或缓存信息)信息的存储磁盘)上的编码指令(例如,计算机和/或机器可读指令)来实现。如本文所使用的,术语非暂时性计算机可读介质被明确定义为包括任何类型的计算机可读存储设备和/或存储盘并且排除传播信号以及排除传输介质。如本文所使用的,当短语“至少”被用作权利要求的前序中的过渡时,是开放式的,其与术语“包括”是相同方式的开放式。另外,与术语“包括(include)”、“包括(includes)”和“包括(including)”类似于术语“包含(comprise)”、“包含(comprises)”和“包含(comprising)”,是开放式的。
图10是能够执行图8的指令以及图9的示例机器可读指令以实现图1-6的示例HMS102、214以及图5和图6的示例PRM 518的示例处理器平台900的框图。所示示例的处理器平台1000包括处理器1012。所示示例的处理器1012是硬件。例如,处理器1012可以由来自任何期望的家族或制造商的一个或更多个集成电路、逻辑电路、微处理器或控制器来实现。
所示示例的处理器1012包括本地存储器1013(例如,高速缓存),并且执行指令以实现示例HMS 102、214和示例PRM 518。所示示例的处理器1012经由总线1018与包括易失性存储器1014和非易失性存储器1016的的主存储器进行通信。易失性存储器1014可以由同步动态随机存取存储器(SDRAM)、动态随机存取存储器(DRAM)、RAMBUS动态随机存取存储器(RDRAM)和/或任何其他类型的随机存取存储器装置实现。非易失性存储器1016可以由闪存和/或任何其他期望类型的存储器装置来实现。访问主存储器1014、1016由存储器控制器控制。
所示示例的处理器平台1000还包括接口电路1020。接口电路1020可以由任何类型的接口标准(诸如以太网接口、通用串行总线(USB)和/或PCI Express接口)来实现。
在所示示例中,一个或更多个输入设备1022连接到接口电路1020。一个或更多个输入设备1022允许用户将数据和命令输入到处理器1012中。一个或更多个输入设备可以由例如音频传感器、麦克风、键盘、按钮、鼠标、触摸屏、轨迹板、轨迹球、等点(isopoint)和/或语音识别系统来实现。
一个或更多个输出设备1024也连接到所示示例的接口电路1020。输出设备1024可以由例如显示设备(例如,发光二极管(LED)、有机发光二极管(OLED)、液晶显示器、阴极射线管显示器(CRT)、触摸屏、触觉输出设备、打印机和/或扬声器)实现。因此,所示示例的接口电路1020通常包括图形驱动器卡、图形驱动器芯片或图形驱动器处理器。
所示示例的接口电路1020还包括通信设备(诸如发射机、接收机、收发机、调制解调器和/或网络接口卡),以辅助经由网络1026(例如,以太网连接、数字用户线路(DSL)、电话线路、同轴电缆、蜂窝电话系统等)与外部机器(例如,任何类型的计算设备)进行数据交换。
所示示例的处理器平台1000还包括用于存储软件和/或数据的一个或更多个大容量存储设备1028。这种大容量存储设备1028的示例包括闪存设备、软盘驱动器、硬盘驱动器、光盘(CD)驱动器、光学蓝光盘驱动器、RAID系统和光学数字多功能盘(DVD)驱动器。
表示图8的示例机器可读指令和/或图9的示例机器可读指令的编码指令1032可以被存储在大容量存储装置1028中、易失性存储器1014中、非易失性存储器1016中和/或可移除有形计算机可读存储介质(诸如CD或DVD)上。
从上文中可以理解的是,上文公开的方法、装置和制品基于分散式机架体系架构辅助配置虚拟服务器机架。例如,使用本文公开的示例技术,可以以比仅基于非分散式物理硬件资源的虚拟服务器机架更灵活和有效的方式基于分散式物理硬件资源使用HMS实现和管理虚拟服务器机架。例如,在发现过程中,HMS发现在不同的SRU和SRUM中的分散式物理硬件组件,如CPU、内存设备、NIC等。然后,HMS使用CPU对象、存储器对象、贮存器对象、交换机对象、适配器对象、电源对象等来存储所发现的分散式物理硬件组件的属性和SRU/SRUM位置。以这种方式,HMS可以将存储在对象中的属性提供给PRM以构建组合资源。由于组合资源可以随时重新配置、更新、升级、降级,而不需要重新发现新的硬件,因此可以由于分散式物理硬件资源由HMS灵活有效地管理组合资源。例如,当HMS检测到需要附加的服务器资源、CPU资源、内存资源等时,HMS可以与PRM合作来升级现有的组合资源和/或从之前发现的分散式物理硬件资源构建新的组合资源。因此,HMS和PRM减少了提供附加所需资源以供虚拟服务器机架使用以提供虚拟服务和/或云服务所需的处理周期和处理时间的数量。另外,本文公开的技术使得能够基于使用配置为经由物理机架的局域网彼此通信的单独组件(例如CPU、存储器、NIC等)构建的组合资源的方面,使用HMS和PRM构建任何期望的处理能力、存储能力和/或网络通信能力的组合资源(例如,组合服务器)。
本文公开了用于配置用于虚拟服务器机架部署中的分散式机架体系架构的硬件管理系统的方法、装置和制品。管理物理机架中的分散式物理硬件资源的示例方法包括利用硬件管理系统发现物理机架中的分散式物理硬件资源。该示例方法还包括将分散式物理硬件资源的清单从硬件管理系统发送到物理资源管理器。该示例方法还包括从物理资源管理器接收硬件管理系统处的组合资源。物理资源管理器基于来自分散式物理硬件资源清单的各个物理硬件资源生成组合资源。
在一些示例中,发现分散式物理硬件资源包括识别分散式处理器、分散式存储器资源、分散式贮存器资源或分散式网络资源中的至少一个。
在一些示例中,该方法进一步包括接收组合资源的重组实例,由物理资源管理器生成的重组实例用于向组合资源分配附加物理硬件资源或者从组合资源解除分配过多的物理硬件资源之一。
在一些示例中,响应于由组合资源执行的工作负载的变化发生对组合资源的重组实例的接收。
在一些示例中,当组合资源正在执行工作负载的同时实时发生对组合资源的重组实例的接收。
在一些示例中,组合资源是第一组合资源,并且第一组合资源的重组实例包括当第一组合资源与具有比与第二组合资源相关联的第二应用程序更高优先级的第一应用程序相关联时,从第二组合资源重新分配给第一组合资源的物理硬件资源。
在一些示例中,物理机架是第一物理机架,并且组合资源的重组实例包括位于第一物理机架和第二物理机架中的物理硬件资源。
管理物理机架中的分散式物理硬件资源的示例装置包括硬件管理系统,以发现物理机架中的分散式物理硬件资源并生成分散式物理硬件资源的列表。该示例装置还包括物理资源管理器,以基于来自分散式物理硬件资源的列表的资源来生成组合资源。在这样的示例中,硬件管理系统用于管理组合资源。
在一些示例中,硬件管理系统用于识别分散式处理器、分散式存储器资源、分散式贮存器资源或分散式网络资源中的至少一个。
在一些示例中,物理资源管理器用于将组合资源重组为分配附加物理硬件资源或解除分配过多物理硬件资源中的至少一个。
在一些示例中,物理资源管理器用于响应于由组合资源执行的工作负载的变化来重组组合资源。
在一些示例中,物理资源管理器用于在组合资源执行工作负载的同时实时重组组合资源。
在一些示例中,组合资源是第一组合资源,并且物理资源管理器用于在当第一组合资源与具有比与第二组合资源相关联的第二应用程序更高优先级的第一应用程序相关联时,将物理硬件资源从第二组合资源重新分配给第一组合资源。
在一些示例中,物理资源管理器用于重新分配单独的物理机架中的物理硬件资源。
示例有形计算机可读存储介质包括指令,所述指令在被执行时使得机器至少发现物理机架中的分散式物理硬件资源。示例指令还使机器将分散式物理硬件资源的清单发送到物理资源管理器。示例指令还使机器从物理资源管理器接收组合资源。在这样的示例中,组合资源由物理资源管理器基于来自分散式物理硬件资源清单的各个物理硬件资源生成。
在一些示例中,指令在被执行时使机器识别分散式处理器、分散式存储器资源、分散式贮存器资源或分散式网络资源中的至少一个。
在一些示例中,指令在被执行时使机器接收组合资源的重组实例,重组实例由物理资源管理器生成,以将附加物理硬件资源分配给组合资源或者从组合资源解除分配过多的物理硬件资源中的至少一个。
在一些示例中,指令在被执行时使得机器响应于由组合资源执行的工作负载的变化来接收组合资源的重组实例。
在一些示例中,组合资源是第一组合资源,并且第一组合资源的重组实例包括当第一组合资源与具有比与第二组合资源相关联的第二应用程序更高优先级的第一应用程序相关联时,将物理硬件资源从第二组合资源重新分配给第一组合资源。
在一些示例中,物理机架是第一物理机架,并且组合资源的重组实例包括位于第一物理机架和第二物理机架中的物理硬件资源。
以上和相应的附图已经公开了用于虚拟服务器机架部署中的分散式机架体系架构的硬件管理系统的示例。虽然本文已经公开了某些示例方法、装置和制品,但是本专利的覆盖范围不限于此。相反,本专利涵盖了完全落入本专利权利要求范围内的所有方法、装置和制品。
Claims (20)
1.一种用于管理物理机架中的分散式物理硬件资源的装置,所述装置包括:
硬件管理系统,用于:
发现所述物理机架中的分散式物理硬件资源;并且
生成所述分散式物理硬件资源的列表;以及
物理资源管理器,用于基于来自所述分散式物理硬件资源的所述列表的资源来生成组合资源,所述硬件管理系统用于管理所述组合资源。
2.如权利要求1所述的装置,其中,为了发现所述物理机架中的所述分散式物理硬件资源,所述硬件管理系统用于识别分散式处理器、分散式存储器资源、分散式贮存器资源或分散式联网资源中的至少一个。
3.如权利要求1所述的装置,其中所述物理资源管理器用于将所述组合资源重组为分配附加物理硬件资源或解除分配过量物理硬件资源中的至少一个。
4.如权利要求3所述的装置,其中所述物理资源管理器用于响应于由所述组合资源执行的工作负载的变化来重组所述组合资源。
5.如权利要求3所述的装置,其中所述物理资源管理器用于在所述组合资源执行工作负载的同时实时重组所述组合资源。
6.如权利要求3所述的装置,其中所述组合资源是第一组合资源,并且所述物理资源管理器在所述第一组合资源与第一应用程序相关联时,所述第一应用程序具有比与第二组合资源相关联的第二应用程序更高的优先级,将物理硬件资源从所述第二组合资源重新分配给所述第一组合资源。
7.如权利要求3所述的装置,其中所述物理资源管理器用于重新分配单独的物理机架中的物理硬件资源。
8.一种管理物理机架中的分散式物理硬件资源的方法,所述方法包括:
利用硬件管理系统发现所述物理机架中的分散式物理硬件资源;
从所述硬件管理系统向物理资源管理器发送所述分散式物理硬件资源的清单;以及
在所述硬件管理系统处从所述物理资源管理器接收组合资源,所述组合资源由所述物理资源管理器基于来自所述分散式物理硬件资源的所述清单的所述物理硬件资源的各个物理硬件资源而生成。
9.如权利要求8所述的方法,其中发现所述分散式物理硬件资源包括识别分散式处理器、分散式存储器资源、分散式贮存器资源或分散式联网资源中的至少一个。
10.如权利要求8所述的方法,还包括接收所述组合资源的重组实例,所述重组实例由所述物理资源管理器生成为将附加物理硬件资源分配给所述组合资源或从所述组合资源解除分配过量物理硬件资源中的至少一个。
11.如权利要求10所述的方法,其中所述组合资源的所述重组实例的所述接收响应于由所述组合资源执行的工作负载的变化而发生。
12.如权利要求10所述的方法,其中所述组合资源的所述重组实例的所述接收在所述组合资源正在执行工作负载的同时实时发生。
13.如权利要求10所述的方法,其中所述组合资源是第一组合资源,所述第一组合资源的所述重组实例包括:当所述第一组合资源与第一应用程序相关联时,所述第一应用程序具有比与第二组合资源相关联的第二应用程序更高的优先级,将物理硬件资源从所述第二组合资源重新分配给所述第一组合资源。
14.如权利要求10所述的方法,其中所述物理机架是第一物理机架,所述组合资源的所述重组实例包括位于所述第一物理机架和第二物理机架中的物理硬件资源。
15.一种包含指令的有形计算机可读存储介质,所述指令在被执行时使得机器至少:
发现物理机架中的分散式物理硬件资源;
将所述分散式物理硬件资源的清单发送给物理资源管理器;以及
从所述物理资源管理器接收组合资源,所述组合资源由所述物理资源管理器基于来自所述分散式物理硬件资源的所述清单的所述物理硬件资源的各个物理硬件资源而生成。
16.如权利要求15所述的存储介质,其中所述指令在被执行时使所述机器识别分散式处理器、分散式存储器资源、分散式贮存器资源或分散式联网资源中的至少一个。
17.如权利要求15所述的存储介质,其中所述指令在被执行时使所述机器接收所述组合资源的重组实例,所述重组实例由所述物理资源管理器生成为将附加物理硬件资源分配给所述组合资源或从所述组合资源解除分配过量物理硬件资源中的至少一个。
18.如权利要求17所述的存储介质,其中所述指令在被执行时使所述机器响应于由所述组合资源执行的工作负载的变化而接收所述组合资源的所述重组实例。
19.如权利要求17所述的存储介质,其中所述组合资源是第一组合资源,所述第一组合资源的所述重组实例包括:当所述第一组合资源与第一应用程序相关联时,所述第一应用程序具有比与第二组合资源相关联的第二应用程序更高的优先级,将物理硬件资源从所述第二组合资源重新分配给所述第一组合资源。
20.如权利要求17所述的存储介质,其中所述物理机架是第一物理机架,所述组合资源的所述重组实例包括位于所述第一物理机架和第二物理机架中的物理硬件资源。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562206104P | 2015-08-17 | 2015-08-17 | |
US62/206,104 | 2015-08-17 | ||
US15/198,914 US10348574B2 (en) | 2015-08-17 | 2016-06-30 | Hardware management systems for disaggregated rack architectures in virtual server rack deployments |
US15/198,914 | 2016-06-30 | ||
PCT/US2016/047194 WO2017031123A1 (en) | 2015-08-17 | 2016-08-16 | Hardware management systems for disaggregated rack architectures in virtual server rack deployments |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107924336A true CN107924336A (zh) | 2018-04-17 |
Family
ID=56740582
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680047662.1A Pending CN107924336A (zh) | 2015-08-17 | 2016-08-16 | 用于虚拟服务器机架部署中的分散式机架体系架构的硬件管理系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10348574B2 (zh) |
EP (1) | EP3338185A1 (zh) |
CN (1) | CN107924336A (zh) |
WO (1) | WO2017031123A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109802894A (zh) * | 2019-01-03 | 2019-05-24 | 中国联合网络通信集团有限公司 | 流量控制方法及装置 |
CN112687261A (zh) * | 2020-12-15 | 2021-04-20 | 苏州思必驰信息科技有限公司 | 语音识别训练和应用方法及装置 |
CN113064745A (zh) * | 2021-02-20 | 2021-07-02 | 山东英信计算机技术有限公司 | 一种错误信息上报的方法、装置及介质 |
WO2022082447A1 (en) * | 2020-10-20 | 2022-04-28 | Lenovo (Beijing) Limited | Method and apparatus for task management in next generation networks |
Families Citing this family (89)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9594649B2 (en) | 2014-10-13 | 2017-03-14 | At&T Intellectual Property I, L.P. | Network virtualization policy management system |
WO2017065732A1 (en) * | 2015-10-12 | 2017-04-20 | Hewlett Packard Enterprise Development Lp | Switch network architecture |
US10171561B2 (en) * | 2015-11-10 | 2019-01-01 | International Business Machines Corporation | Construct data management between loosely coupled racks |
US10116750B2 (en) * | 2016-04-01 | 2018-10-30 | Intel Corporation | Mechanism for highly available rack management in rack scale environment |
US10019252B1 (en) * | 2016-04-07 | 2018-07-10 | Nutanix, Inc. | Virtualizing installers |
US10034407B2 (en) * | 2016-07-22 | 2018-07-24 | Intel Corporation | Storage sled for a data center |
EP3497571B1 (en) | 2016-08-12 | 2021-12-29 | Liqid Inc. | Disaggregated fabric-switched computing platform |
US11880326B2 (en) | 2016-08-12 | 2024-01-23 | Liqid Inc. | Emulated telemetry interfaces for computing units |
US11294839B2 (en) | 2016-08-12 | 2022-04-05 | Liqid Inc. | Emulated telemetry interfaces for fabric-coupled computing units |
US10230585B1 (en) | 2016-09-30 | 2019-03-12 | Juniper Networks, Inc. | Multi vendor device support in network management systems |
US10326657B1 (en) | 2016-09-30 | 2019-06-18 | Juniper Networks, Inc. | Multi vendor device support in network management systems |
US10389580B2 (en) * | 2016-10-28 | 2019-08-20 | Western Digital Technologies, Inc. | Distributed computing system configuration |
US11153164B2 (en) * | 2017-01-04 | 2021-10-19 | International Business Machines Corporation | Live, in-line hardware component upgrades in disaggregated systems |
US10534598B2 (en) | 2017-01-04 | 2020-01-14 | International Business Machines Corporation | Rolling upgrades in disaggregated systems |
US10425287B2 (en) | 2017-02-23 | 2019-09-24 | Dell Products L.P. | Systems and methods for network topology discovery |
US10785118B2 (en) * | 2017-02-23 | 2020-09-22 | Dell Products L.P. | Systems and methods for network topology validation |
US10402124B2 (en) * | 2017-03-30 | 2019-09-03 | Intel Corporation | Dynamically composable computing system, a data center, and method for dynamically composing a computing system |
US10180924B2 (en) | 2017-05-08 | 2019-01-15 | Liqid Inc. | Peer-to-peer communication for graphics processing units |
US10382258B2 (en) | 2017-05-11 | 2019-08-13 | Western Digital Technologies, Inc. | Viral system discovery and installation for distributed networks |
US10958729B2 (en) * | 2017-05-18 | 2021-03-23 | Intel Corporation | Non-volatile memory express over fabric (NVMeOF) using volume management device |
US20190068466A1 (en) * | 2017-08-30 | 2019-02-28 | Intel Corporation | Technologies for auto-discovery of fault domains |
US10496507B2 (en) * | 2017-09-21 | 2019-12-03 | American Megatrends International, Llc | Dynamic personality configurations for pooled system management engine |
US20190166032A1 (en) * | 2017-11-30 | 2019-05-30 | American Megatrends, Inc. | Utilization based dynamic provisioning of rack computing resources |
US11075888B2 (en) | 2017-12-04 | 2021-07-27 | Nicira, Inc. | Scaling gateway to gateway traffic using flow hash |
US11095617B2 (en) | 2017-12-04 | 2021-08-17 | Nicira, Inc. | Scaling gateway to gateway traffic using flow hash |
US10489142B1 (en) | 2018-02-09 | 2019-11-26 | American Megatrends International, Llc | Secure firmware integrity monitoring using rest over IPMI interface |
US10649792B1 (en) | 2018-02-09 | 2020-05-12 | American Megatrends International, Llc | Cloning of firmware configuration settings using rest over IPMI interface |
US10409584B1 (en) | 2018-02-09 | 2019-09-10 | American Megatrends International, Llc | Peripheral device firmware update using rest over IPMI interface firmware update module |
US10416988B1 (en) | 2018-02-09 | 2019-09-17 | American Megatrends International, Llc | Peripheral device firmware update using rest over IPMI interface firmware shell utility |
US10572242B1 (en) * | 2018-02-09 | 2020-02-25 | American Megatrends International, Llc | Firmware update using rest over IPMI interface |
US10776286B1 (en) | 2018-02-09 | 2020-09-15 | American Megatrends International, Llc | Rest over IPMI interface for firmware to BMC communication |
US10628176B1 (en) | 2018-02-09 | 2020-04-21 | American Megatrends International, Llc | Firmware configuration using REST over IPMI interface |
US11356315B2 (en) | 2018-03-28 | 2022-06-07 | Intel Corporation | Methods and apparatus to dynamically control devices based on distributed data |
US11347561B1 (en) * | 2018-04-30 | 2022-05-31 | Vmware, Inc. | Core to resource mapping and resource to core mapping |
US11330042B2 (en) * | 2018-05-17 | 2022-05-10 | International Business Machines Corporation | Optimizing dynamic resource allocations for storage-dependent workloads in disaggregated data centers |
US11562083B2 (en) | 2018-07-30 | 2023-01-24 | Hewlett Packard Enterprise Development Lp | Data access management for a composition |
US10649921B2 (en) | 2018-07-30 | 2020-05-12 | Hewlett Packard Enterprise Development Lp | Composable serial console and KVM with remote accessibility |
US10831698B2 (en) * | 2018-09-25 | 2020-11-10 | International Business Machines Corporation | Maximizing high link bandwidth utilization through efficient component communication in disaggregated datacenters |
US10637733B2 (en) | 2018-09-25 | 2020-04-28 | International Business Machines Corporation | Dynamic grouping and repurposing of general purpose links in disaggregated datacenters |
US11012423B2 (en) * | 2018-09-25 | 2021-05-18 | International Business Machines Corporation | Maximizing resource utilization through efficient component communication in disaggregated datacenters |
US10915493B2 (en) | 2018-09-25 | 2021-02-09 | International Business Machines Corporation | Component building blocks and optimized compositions thereof in disaggregated datacenters |
US10671557B2 (en) | 2018-09-25 | 2020-06-02 | International Business Machines Corporation | Dynamic component communication using general purpose links between respectively pooled together of like typed devices in disaggregated datacenters |
US11163713B2 (en) * | 2018-09-25 | 2021-11-02 | International Business Machines Corporation | Efficient component communication through protocol switching in disaggregated datacenters |
US10802988B2 (en) * | 2018-09-25 | 2020-10-13 | International Business Machines Corporation | Dynamic memory-based communication in disaggregated datacenters |
US11182322B2 (en) * | 2018-09-25 | 2021-11-23 | International Business Machines Corporation | Efficient component communication through resource rewiring in disaggregated datacenters |
US11650849B2 (en) * | 2018-09-25 | 2023-05-16 | International Business Machines Corporation | Efficient component communication through accelerator switching in disaggregated datacenters |
US10754660B2 (en) | 2018-10-10 | 2020-08-25 | International Business Machines Corporation | Rack level server boot |
US11954326B2 (en) | 2019-02-01 | 2024-04-09 | Liqid Inc. | Memory device instantiation onto communication fabrics |
US11392525B2 (en) | 2019-02-01 | 2022-07-19 | Liqid Inc. | Specialized device instantiation onto PCIe fabrics |
US11265219B2 (en) | 2019-04-25 | 2022-03-01 | Liqid Inc. | Composed computing systems with converged and disaggregated component pool |
WO2020219795A1 (en) | 2019-04-25 | 2020-10-29 | Liqid Inc. | Machine templates for predetermined compute units |
US11095504B2 (en) * | 2019-04-26 | 2021-08-17 | Juniper Networks, Inc. | Initializing network device and server configurations in a data center |
US11258661B2 (en) * | 2019-04-26 | 2022-02-22 | Juniper Networks, Inc. | Initializing server configurations in a data center |
US11711268B2 (en) | 2019-04-30 | 2023-07-25 | Intel Corporation | Methods and apparatus to execute a workload in an edge environment |
CN112040016A (zh) * | 2019-06-04 | 2020-12-04 | 鸿富锦精密电子(天津)有限公司 | 服务器管理方法及服务器管理装置 |
US11374879B2 (en) * | 2019-06-17 | 2022-06-28 | Cyxtera Data Centers, Inc. | Network configuration of top-of-rack switches across multiple racks in a data center |
US11277343B2 (en) | 2019-07-17 | 2022-03-15 | Vmware, Inc. | Using VTI teaming to achieve load balance and redundancy |
US11316713B2 (en) * | 2019-11-25 | 2022-04-26 | International Business Machines Corporation | Virtual drawers in a server |
US11509638B2 (en) | 2019-12-16 | 2022-11-22 | Vmware, Inc. | Receive-side processing for encapsulated encrypted packets |
US20210226866A1 (en) * | 2020-01-21 | 2021-07-22 | Cisco Technology, Inc. | Threat detection of application traffic flows |
US20210365301A1 (en) * | 2020-05-21 | 2021-11-25 | Dell Products, Lp | System and method for power and thermal management of disaggregated server subsystems |
US11947971B2 (en) | 2020-06-11 | 2024-04-02 | Hewlett Packard Enterprise Development Lp | Remote resource configuration mechanism |
US11720271B2 (en) * | 2020-09-11 | 2023-08-08 | Vmware, Inc. | Direct access storage for persistent services in a virtualized computing system |
US20220182286A1 (en) * | 2020-12-03 | 2022-06-09 | Nutanix, Inc. | Facilitating performance of node management actions in a computing infrastructure having diverse node interfaces |
US11604595B2 (en) | 2020-12-09 | 2023-03-14 | Dell Products L.P. | Data mirroring and data migration between storage volumes using system control processors |
US11704159B2 (en) | 2020-12-09 | 2023-07-18 | Dell Products L.P. | System and method for unified infrastructure architecture |
US11675665B2 (en) | 2020-12-09 | 2023-06-13 | Dell Products L.P. | System and method for backup generation using composed systems |
US11928515B2 (en) | 2020-12-09 | 2024-03-12 | Dell Products L.P. | System and method for managing resource allocations in composed systems |
US11853782B2 (en) | 2020-12-09 | 2023-12-26 | Dell Products L.P. | Method and system for composing systems using resource sets |
US11693703B2 (en) | 2020-12-09 | 2023-07-04 | Dell Products L.P. | Monitoring resource utilization via intercepting bare metal communications between resources |
US11435814B2 (en) | 2020-12-09 | 2022-09-06 | Dell Produts L.P. | System and method for identifying resources of a composed system |
US11675625B2 (en) | 2020-12-09 | 2023-06-13 | Dell Products L.P. | Thin provisioning of resources using SCPS and a bidding system |
US11698821B2 (en) | 2020-12-09 | 2023-07-11 | Dell Products L.P. | Composable information handling systems in an open network using access control managers |
US11809912B2 (en) | 2020-12-09 | 2023-11-07 | Dell Products L.P. | System and method for allocating resources to perform workloads |
US11809911B2 (en) | 2020-12-09 | 2023-11-07 | Dell Products L.P. | Resuming workload execution in composed information handling system |
US11934875B2 (en) | 2020-12-09 | 2024-03-19 | Dell Products L.P. | Method and system for maintaining composed systems |
US11442776B2 (en) | 2020-12-11 | 2022-09-13 | Liqid Inc. | Execution job compute unit composition in computing clusters |
US11768612B2 (en) | 2021-01-28 | 2023-09-26 | Dell Products L.P. | System and method for distributed deduplication in a composed system |
US11687280B2 (en) | 2021-01-28 | 2023-06-27 | Dell Products L.P. | Method and system for efficient servicing of storage access requests |
US11797341B2 (en) | 2021-01-28 | 2023-10-24 | Dell Products L.P. | System and method for performing remediation action during operation analysis |
US11675916B2 (en) | 2021-01-28 | 2023-06-13 | Dell Products L.P. | Method and system for limiting data accessibility in composed systems |
US20220318433A1 (en) * | 2021-03-31 | 2022-10-06 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Provisioning a computing subsystem with disaggregated computing hardware resources selected in compliance with a physical location requirement of a workload |
US11496364B1 (en) | 2021-06-10 | 2022-11-08 | Hewlett Packard Enterprise Development Lp | Logical rack controller |
US11947697B2 (en) | 2021-07-22 | 2024-04-02 | Dell Products L.P. | Method and system to place resources in a known state to be used in a composed information handling system |
US11928506B2 (en) | 2021-07-28 | 2024-03-12 | Dell Products L.P. | Managing composition service entities with complex networks |
US11863514B2 (en) | 2022-01-14 | 2024-01-02 | Vmware, Inc. | Performance improvement of IPsec traffic using SA-groups and mixed-mode SAs |
US11582297B1 (en) | 2022-01-20 | 2023-02-14 | Nvidia Corporation | Mechanism to identify link down reasons |
US11729063B1 (en) * | 2022-01-20 | 2023-08-15 | Nvidia Corporation | Visually guided topology wiring |
US11956213B2 (en) | 2022-05-18 | 2024-04-09 | VMware LLC | Using firewall policies to map data messages to secure tunnels |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120110154A1 (en) * | 2010-11-02 | 2012-05-03 | International Business Machines Corporation | Integration of heterogeneous computing systems into a hybrid computing system |
US20120110086A1 (en) * | 2010-11-02 | 2012-05-03 | International Business Machines Corporation | Ensemble having one or more computing systems and a controller thereof |
CN103188091A (zh) * | 2011-12-28 | 2013-07-03 | 英业达股份有限公司 | 云端服务系统的管理方法及管理系统 |
CN104216782A (zh) * | 2014-08-19 | 2014-12-17 | 东南大学 | 高性能计算和云计算混合环境中的动态资源管理方法 |
US20150012623A1 (en) * | 2012-01-30 | 2015-01-08 | Microsoft Corporation | Automated standalone bootstrapping of hardware inventory |
CN104395888A (zh) * | 2012-06-22 | 2015-03-04 | 微软公司 | 建立硬件清单的初始配置 |
CN104750559A (zh) * | 2013-12-27 | 2015-07-01 | 英特尔公司 | 跨多节点的存储器资源的池化 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8793351B2 (en) * | 2011-05-24 | 2014-07-29 | Facebook, Inc. | Automated configuration of new racks and other computing assets in a data center |
US20140007097A1 (en) * | 2012-06-29 | 2014-01-02 | Brocade Communications Systems, Inc. | Dynamic resource allocation for virtual machines |
US10102035B2 (en) * | 2014-02-27 | 2018-10-16 | Intel Corporation | Techniques for computing resource discovery and management in a data center |
US10382279B2 (en) * | 2014-06-30 | 2019-08-13 | Emc Corporation | Dynamically composed compute nodes comprising disaggregated components |
US10740081B2 (en) * | 2015-06-30 | 2020-08-11 | Vmware, Inc. | Methods and apparatus for software lifecycle management of a virtual computing environment |
-
2016
- 2016-06-30 US US15/198,914 patent/US10348574B2/en active Active
- 2016-08-16 WO PCT/US2016/047194 patent/WO2017031123A1/en active Application Filing
- 2016-08-16 EP EP16754151.5A patent/EP3338185A1/en not_active Withdrawn
- 2016-08-16 CN CN201680047662.1A patent/CN107924336A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120110154A1 (en) * | 2010-11-02 | 2012-05-03 | International Business Machines Corporation | Integration of heterogeneous computing systems into a hybrid computing system |
US20120110086A1 (en) * | 2010-11-02 | 2012-05-03 | International Business Machines Corporation | Ensemble having one or more computing systems and a controller thereof |
CN103188091A (zh) * | 2011-12-28 | 2013-07-03 | 英业达股份有限公司 | 云端服务系统的管理方法及管理系统 |
US20150012623A1 (en) * | 2012-01-30 | 2015-01-08 | Microsoft Corporation | Automated standalone bootstrapping of hardware inventory |
CN104395888A (zh) * | 2012-06-22 | 2015-03-04 | 微软公司 | 建立硬件清单的初始配置 |
CN104750559A (zh) * | 2013-12-27 | 2015-07-01 | 英特尔公司 | 跨多节点的存储器资源的池化 |
CN104216782A (zh) * | 2014-08-19 | 2014-12-17 | 东南大学 | 高性能计算和云计算混合环境中的动态资源管理方法 |
Non-Patent Citations (3)
Title |
---|
PETTER SV¨ARD: "《Hecatonchire: Towards Multi-host Virtual Machines by Server Disaggregation》", 《HTTPS://LINK.SPRINGER.COM/CONTENT/PDF/10.1007/978-3-319-14313-2_44.PDF》 * |
SANGJIN HAN: "《Network Support for Resource Disaggregation in Next-Generation Datacenters》", <HTTPS://DL.ACM.ORG/DOI/PDF/10.1145/2535771.2535778> * |
YOSHIKAWA TAKASHI: "《Scalable Resource Disaggregated Platform That Achieves Diverse and Various Computing Services》", 《HTTPS://WWW.NEC.COM/EN/GLOBAL/TECHREP/JOURNAL/G14/N02/PDF/140215.PDF》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109802894A (zh) * | 2019-01-03 | 2019-05-24 | 中国联合网络通信集团有限公司 | 流量控制方法及装置 |
CN109802894B (zh) * | 2019-01-03 | 2022-05-03 | 中国联合网络通信集团有限公司 | 流量控制方法及装置 |
WO2022082447A1 (en) * | 2020-10-20 | 2022-04-28 | Lenovo (Beijing) Limited | Method and apparatus for task management in next generation networks |
CN112687261A (zh) * | 2020-12-15 | 2021-04-20 | 苏州思必驰信息科技有限公司 | 语音识别训练和应用方法及装置 |
CN113064745A (zh) * | 2021-02-20 | 2021-07-02 | 山东英信计算机技术有限公司 | 一种错误信息上报的方法、装置及介质 |
Also Published As
Publication number | Publication date |
---|---|
EP3338185A1 (en) | 2018-06-27 |
US20170054603A1 (en) | 2017-02-23 |
US10348574B2 (en) | 2019-07-09 |
WO2017031123A1 (en) | 2017-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107924336A (zh) | 用于虚拟服务器机架部署中的分散式机架体系架构的硬件管理系统 | |
US11675585B2 (en) | Methods and apparatus to deploy workload domains in virtual server racks | |
US20220019474A1 (en) | Methods and apparatus to manage workload domains in virtual server racks | |
US11768695B2 (en) | Methods and apparatus to deploy a hybrid workload domain | |
US11444765B2 (en) | Methods and apparatus to manage credentials in hyper-converged infrastructures | |
US10313479B2 (en) | Methods and apparatus to manage workload domains in virtual server racks | |
US20230168946A1 (en) | Methods and apparatus to improve workload domain management in virtualized server systems using a free pool of virtualized servers | |
US10684893B2 (en) | Methods and apparatus to manage compute resources in a hyperconverged infrastructure computing environment | |
US10097620B2 (en) | Methods and apparatus to provision a workload in a virtual server rack deployment | |
US10855537B2 (en) | Methods and apparatus for template driven infrastructure in virtualized server systems | |
JP6329547B2 (ja) | クラウドコンピューティング環境で使用するサービス管理エンジンを提供するためのシステムおよび方法 | |
US20220138008A1 (en) | Methods and apparatus to manage resources in a hybrid workload domain | |
Missbach et al. | Stateless Computing |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180417 |