数据中心中的无头硬件的管理的制作方法

文档序号:11142223阅读:237来源:国知局
数据中心中的无头硬件的管理的制造方法与工艺

计算系统已经使人们通信、做生意和玩的方式彻底改革,并已实现现在所称的“信息时代”。在现代计算中,支持计算活动的许多基础结构对于用户而言并非本地的,而是“在云中”。云计算在很大程度上通过数据中心而被启用,大量计算资源被定位在数据中心中。这样的计算资源可包括,例如,处理、存储和网络资源。客户机器与数据中心进行通信以利用这些计算资源。

数据中心通常由大量无头硬件设备组成。“无头”硬件设备是不具有监视器、键盘或用于从用户接收输入并向用户提供输入的任何传统装置的设备或计算系统。相反,无头硬件设备简单地处理信息并与其它网络节点进行通信。作为示例,无头硬件设备可以是服务器机架、服务器控制台、服务器刀片等等。

管理大量无头硬件设备的任务可能的确是令人畏缩的。数据中心可能非常大,采用数千或甚至数百万的这样的无头硬件设备。每个无头硬件设备应当配备合适的软件和固件以完成其参与的任务。合适的驱动程序、软件、数据等应当被载入正确的无头硬件设备。

本文要求保护的主题不限于解决任何缺点或仅在诸如上述环境这样的环境中操作的各实施例。相反,提供该背景仅用于例示其中可实施所述一些实施例的一个示例性技术领域。

简要概述

本文所述的至少一些实施例涉及用于维持无头硬件设备的操作的数据中心控制器操作。无头硬件设备的一个示例可以是服务器,或服务器刀片。数据中心可具有多个无头硬件设备,并且可能也许应用该方法来维持多个无头硬件设备的操作。

数据中心控制器标识特定无头硬件设备具有非受管状态,意味着无头硬件设备在没有进一步的代码的情形下是不可引导的。作为一个示例,当无头硬件设备处在尝试引导的过程中时,无头硬件设备可发出通知,从中可理解无头硬件设备处在非受管状态。

作为响应,数据中心控制器决定一个或多个可操作补充中的哪一个要被安装在无头硬件设备上。作为示例,可操作补充可以是软件实体,诸如但不限于,模块、组件、对象、应用、驱动程序、引擎、方法、功能等。可操作补充也可以是固件实体,诸如固件映像。无论如何,一个或多个可操作补充至少足以将无头硬件设备从非受管状态转换到受管理状态,从而允许无头硬件设备完成引导过程。作为一个示例,一个或多个可操作补充可包括管理接口,数据中心控制器可通过该管理接口向无头硬件设备提供进一步的管理指令。

提供本概述以便以简化的形式介绍将在以下的详细描述中进一步描述的一些概念。本概述并非旨在标识出要求保护的主题的关键特征或必要特征,亦非旨在用作辅助确定要求保护的主题的范围。

附图简述

为了描述可获得本发明的上述和其它优点和特征的方式,将通过参考附图中示出的本发明的具体实施例来呈现以上简要描述的本发明的更具体描述。可以理解,这些附图只描绘了本发明的各典型实施例,并且因此不被认为是对其范围的限制,将通过使用附图并利用附加特征和细节来描述和解释本发明,在附图中:

图1示出了其中可采用本文描述的原理的示例计算系统;

图2抽象地示出数据中心环境,其中数据中心包含无头硬件设备211;以及

图3示出了数据中心控制器维持具有多个无头硬件设备的数据中心内的无头硬件设备的操作的方法的流程图。

详细描述

在此所描述的至少一些实施例涉及用于维持无头硬件设备的操作的数据中心控制器操作。无头硬件设备的一个示例可以是服务器,或服务器刀片。数据中心可具有多个无头硬件设备,并且可能也许应用该方法来维持多个无头硬件设备的操作。

数据中心控制器标识特定无头硬件设备具有非受管状态,意味着无头硬件设备在没有进一步的代码的情形下是不可引导的。作为示例,当无头硬件设备正处于尝试引导的过程中时,无头硬件设备可发出通知,从中可理解该无头硬件设备处在非受管状态。

作为响应,数据中心控制器决定一个或多个可操作补充中的哪一个要被安装在无头硬件设备上。作为示例,可操作补充可以是软件实体,诸如但不限于,模块、组件、对象、应用、驱动程序、引擎、方法、功能等。可操作补充也可以是固件实体,诸如固件映像。无论如何,一个或多个可操作补充至少足以将无头硬件设备从非受管状态转换到受管理状态,从而允许无头硬件设备完成引导过程。作为一个示例,一个或多个可操作补充可包括管理接口,数据中心控制器可通过该管理接口向无头硬件设备提供进一步的管理指令。

将参考图1描述对计算系统的一些介绍性讨论。随后,将参考后续的附图来描述示例环境、方法和支持体系结构。

计算系统现在越来越多地采取多种多样的形式。例如,计算系统可以是手持式设备、电器、膝上型计算机、台式计算机、大型机、分布式计算系统或甚至常规上不被认为是计算系统的设备。在本说明书中和在权利要求书中,术语“计算系统”被广义地定义为包括任何设备或系统(或其组合),该设备或系统包含至少一个物理且有形的处理器以及其上能具有可由处理器执行的计算机可执行指令的物理且有形的存储器。存储器可以采取任何形式,并可以取决于计算系统的性质和形式。计算系统可以分布在网络环境中,并可包括多个组分计算系统。

如图1所例示,在其最基本的配置中,计算系统100通常包括至少一个处理单元102和存储器104。存储器104可以是物理系统存储器,该物理系统存储器可以是易失性的、非易失性的、或两者的某种组合。术语“存储器”也可在此用来指示诸如物理存储介质这样的非易失性大容量存储器。如果计算系统是分布式的,则处理、存储器和/或存储能力也可以是分布式的。如本文中所使用的,术语“可执行模块”或“可执行组件”可指可在计算系统上执行的软件对象、例程或方法。此处所描述的不同组件、模块、引擎以及服务可以实现为在计算系统上执行的对象或进程(例如,作为分开的线程)。

在随后的描述中,参考由一个或多个计算系统执行的动作描述了各实施例。如果这样的动作是以软件实现的,则执行动作的相关联计算系统的一个或多个处理器响应于已经执行了计算机可执行指令来引导计算系统的操作。例如,这样的计算机可执行指令可以在形成计算机程序产品的一个或多个计算机可读介质上实现。这样的操作的示例涉及对数据的操纵。计算机可执行指令(以及被操纵的数据)可以存储在计算系统100的存储器104中。计算系统100还可包含允许计算系统100例如通过网络110与其他消息处理器通信的通信信道108。

本文中描述的各实施例可包括或利用专用或通用计算机,该专用或通用计算机包括诸如例如一个或多个处理器和系统存储器等计算机硬件,如以下更详细讨论的。本文中描述的各实施例还包括用于承载或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这样的计算机可读介质可以是可由通用或专用计算机系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是物理存储介质。承载计算机可执行指令的计算机可读介质是传输介质。由此,作为示例而非限制,本发明的各实施例可包括至少两种显著不同的计算机可读介质:计算机存储介质和传输介质。

计算机存储介质包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备、或者可用于存储以计算机可执行指令或数据结构的形式的期望程序代码手段且可由通用或专用计算机访问的任何其他有形介质。

“网络”被定义为使得电子数据能够在计算机系统和/或模块和/或其它电子设备之间传输的一个或多个数据链路。当信息通过网络或另一个通信连接(硬连线、无线、或者硬连线或无线的组合)传输或提供给计算机时,该计算机将该连接适当地视为传输介质。传输介质可以包括可用于携带计算机可执行指令或数据结构形式的期望程序代码装置并可被通用或专用计算机访问的网络和/或数据链路。上述的组合应当也被包括在计算机可读介质的范围内。

此外,在到达各种计算机系统组件之后,计算机可执行指令或数据结构形式的程序代码资料可从传输介质自动传输到计算机存储介质(或反之亦然)。例如,通过网络或数据链路接收到的计算机可执行指令或数据结构可以在网络接口模块(例如,“NIC”)内的RAM中被缓冲,然后最终被传输至计算机系统RAM和/或计算机系统处的较不易失性的计算机存储介质。因而,应当理解,计算机存储介质可被包括在还利用(或甚至主要利用)传输介质的计算机系统组件中。

计算机可执行指令例如包括,当在处理器处执行时使通用计算机、专用计算机、或专用处理设备执行某一功能或某组功能的指令和数据。计算机可执行指令可以是例如二进制代码、诸如汇编语言之类的中间格式指令、或甚至源代码。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述特征或动作。相反,上述特征和动作是作为实现权利要求的示例形式而公开的。

本领域的技术人员将理解,本发明可以在具有许多类型的计算机系统配置的网络计算环境中实践,这些计算机系统配置包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持式设备、多处理器系统、基于微处理器的或可编程消费电子设备、网络PC、小型计算机、大型计算机、移动电话、PDA、寻呼机、路由器、交换机等等。本发明也可在其中通过网络链接(或者通过硬连线数据链路、无线数据链路,或者通过硬连线和无线数据链路的组合)的本地和远程计算机系统两者都执行任务的分布式系统环境中实施。在分布式系统环境中,程序模块可以位于本地和远程存储器存储设备二者中。

图2抽象地示出数据中心环境200,其中数据中心210包含无头硬件设备211。术语“无头”硬件设备是本领域术语并且是指其中没有用于与用户直接交互的机制的设备或计算系统。例如,没有监视器、扬声器、相机、键盘、定点设备、或直接连接到该无头硬件设备的任何其它用户输入或用户输出设备。无头硬件设备的示例是服务器计算系统,诸如服务器机架、服务器刀片等。

无头硬件设备211被示为包括八个无头硬件设备211A、211B、211C、211D、211E、211F、211G和211H。但是,省略号211I表示在数据中心中可以存在任何数目个无头硬件设备。在典型的数据中心中,可存在数百或数千无头硬件设备。然而,在大型数据中心中可存在甚至数百万无头硬件设备,无论是当前存在还是在将来将被设立。比典型数量低的无头硬件设备在图2中示出仅为了在描述本文更宽的原理中简要并因此清楚的目的。

在所示的实施例中,三个无头硬件设备211被示为正处在非受管状态,如通过由圆代表的那些无头硬件设备211A、211B和211C来表示。在本说明书和权利要求书中,“非受管”设备,或处在“非受管状态”的设备是在没有进一步代码的情形下就不能被引导(即,为“非可引导”)的硬件设备。余下的无头硬件设备211D、211E、211F、211G和211H是可引导的并且因此处于受管理状态,并且进一步分别包括管理接口212D、212E、212F、212G和212H。

数据中心210包括能够将各种命令通过其对应的管理接口传送到任何无头硬件设备的数据中心控制器215。如果无头硬件设备不具有对应的管理接口(诸如对于无头硬件设备211A、211B和211C),那么数据中心控制器215可只能与对应的无头硬件设备传送受限的量。

受管理无头硬件设备中的某些无头硬件设备211D、211E和211F要经历一个或多个升级,并且在图2中用三角形抽象地表示。无头硬件设备中的两个211G和211H作为已完全升级而被管理,并且在图2中用正方形来抽象地表示。

省略号211I还表征无头硬件设备211中的非受管无头硬件设备(图2中用圆抽象地表示)可以少到零,并且多到数据中心中的全部无头硬件设备211以及这中间的任何数目。此外,非受管无头硬件设备集合可随着非受管无头硬件设备变得受管理以及随着受管理无头硬件设备变得非受管而改变。

类似地,省略号211I还表征无头硬件设备211中的受管理的、但是要被升级的无头硬件设备(图2中用三角形抽象地表示)可以少到零,并且多到数据中心中全部无头硬件设备211以及这中间的任何数目。此外,受管理的、但是要被升级的无头硬件设备可随无头硬件设备被升级以及随着新升级变得可用而变化。

最后,省略号211I表征无头硬件设备211中的受管理的且已完全升级的无头硬件设备(图2中用正方形抽象地表示)可以少到零,并且多到数据中心中的全部无头硬件设备211以及这中间的任何数目。此外,受管理的并且已完全升级的无头硬件设备可随无头硬件设备被升级以及随着新升级变得可用而变化。

图3示出了用于供数据中心控制器维持具有多个无头硬件设备的数据中心内的无头硬件设备的操作的方法300的流程图。由于方法300可在图2的数据中心环境200内执行,因此将频繁参考图2和3来描述方法300。方法300中的某些动作由无头硬件设备(例如,图2的无头硬件设备211A)执行,并在图2的左列中在标题“硬件设备”下示出。方法300中的某些动作由数据中心控制器(例如,图2的数据中心控制器215)执行,并在图2的右列中在标题“控制器”下示出。

方法300包括特定无头硬件设备通知该无头硬件设备具有特定状态(动作311)。方法300可至少在当无头硬件设备向数据中心控制器提供该无头硬件设备的状态的通知时的某些情形下执行。例如,参考图2,在以下的第一示例中,无头硬件设备211A向数据中心控制器215提供关于无头硬件设备211A的状态的通知,从而相对于该无头硬件设备发起方法300。

在此处描述的某些实施例中,可被传送的一个通用状态是非受管状态,其中设备在没有进一步代码的情形下是不能引导的。另一个通用状态是受管理状态,其中设备是可引导的而不需要进一步代码。在任何情况中,控制器从无头硬件设备接收通知,并确定该无头硬件设备是否处于受管理状态(决策框321)。例如,在第一示例中,数据中心控制器215可使用通知来确定无头硬件设备211处于非受管状态(决策框321中“否”)。回想图2中的圆抽象地标识最初处于非受管状态的那些无头硬件设备。

在此处描述的一个实施例中,每个无头硬件设备在非受管状态发起引导过程,并自动通知控制器其非受管状态。在该情况下,通知是引导时通知,并且无头硬件设备将需要进一步软件被提供以完成该引导过程。

基于所标识的状态,控制器接着决定(动作322和325)一个或多个什么可操作补充要被添加到该无头硬件设备上。在所标识的状态是非受管状态的情况中(决策框321中“否”),控制器接着决定(动作322)一个或多个什么管理补充要被添加到该无头硬件设备上。一个或多个管理补充被结构化使得,当安装在特定无头硬件设备上时,该一个或多个管理补充向特定无头硬件设备提供将特定无头硬件设备转换成受管理状态的管理接口。例如,参考图2在第一示例中,在被通知无头硬件设备211A处于非受管状态之际,数据中心控制器215决定一个或多个什么管理补充要被添加到无头硬件设备211A。

在本说明书中和在权利要求书中,“可操作补充”是在动作311的通知之前不存在于无头硬件设备上的软件或固件。在本说明书中和在权利要求书中,“管理补充”是允许无头硬件设备完成引导过程的一类可操作补充。在某些实施例中,管理补充还允许无头硬件设备也实现管理接口,数据中心控制器可接着通过该管理接口通信以向无头硬件设备提供进一步指令。

可选地,控制器还可使用一个或多个可操作补充的身份来决定该一个或多个可操作补充要被如何添加到无头硬件设备的方法。例如,该方法可涉及数据中心控制器从数据中心的内部提供固件映像或软件组件,或可涉及使用某一统一资源标识符(URI)从数据中心的外部获得一个或多个可操作补充。在图2中,例如,一个或多个管理补充221被示为在数据中心210的外部,但是在此描述的原理与一个或多个管理补充位于数据中心210内部和/或分布在数据中心210和数据中心210外部的网络节点之间的方案兼容。

数据中心控制器接着向无头硬件设备提供(动作323)指令。指令被结构化以使得特定无头硬件设备安装一个或多个管理补充。如果存在获取和/或安装一个或多个管理补充的方法,则数据中心控制器也可提供关于那个方法的指令。在任何情况中,指令足以使得特定无头硬件设备实施安装管理补充。

相应地,无头硬件设备接收(动作331)指令来安装一个或多个管理补充。无头硬件设备接着通过安装(动作332)一个或多个可操作补充来对指令进行响应,从而使得无头硬件设备从非受管状态转换为受管理状态。参考图2,在第一示例中,无头硬件设备可从非受管状态(图2中用圆抽象地表征)转换到受管理状态(图2中用三角形或正方形抽象地表征),并且具有管理接口,数据中心控制器可通过该管理接口进一步与无头硬件设备进行通信。

在一个实施例中,方法300如所描述地被执行,用于无头硬件设备的引导时期间的初始阶段。接着,无头硬件设备可在后续时间在受管理状态中发起方法300。例如,无头硬件设备211D在无头硬件设备211D最初引导时通过方法300的最初执行可能已经获得的其受管理状态,正如针对无头硬件设备211A的第一示例已描述的。接着,无头硬件设备211D可在受管理状态中再次发起方法300(动作311)。

作为响应,数据中心控制器确定无头硬件设备处在受管理状态(决策框321中“是”)。数据中心控制器进一步确定无头硬件设备是否需要升级(决策框324)。如果不需要升级(决策框324中“否”),则无头硬件设备处于受管理状态且为已完全升级状态。因此,方法300可结束而无需更新无头硬件设备且方法300可结束(动作350)。这正是针对无头硬件设备211G和211H的情况,如正方形所表征的处于受管理且已完全升级状态。

在另一方面,如果需要升级(决策框324中“是”)则数据中心控制器如在此描述的促进那些升级。这正是针对无头硬件设备211D、211E和211F的情况,如三角形所表征的处于受管理但要被升级状态。然而,无头硬件设备的管理接口可被用于促进该升级。例如,响应于来自无头硬件设备211D的通知(动作311),数据中心控制器可使用管理接口212D来完成升级过程。

具体地,响应于通知(动作311),数据中心控制器确定无头硬件设备处在受管理状态(决策框321中“是”),并且无头硬件设备要被升级(决策框324中“是”)。作为响应,数据中心控制器标识(动作325)要被安装在无头硬件设备上的一个或多个可操作补充。此外,数据中心控制器提供(动作326)指令使无头硬件设备安装一个或多个可操作补充。

作为示例,可操作补充可以是软件安装,诸如操作系统安装或应用安装。可操作补充可替换地可以是固件更新、驱动程序安装、操作系统更新,等等。

指令被结构化以使得特定无头硬件设备安装一个或多个可操作补充。如果存在获取和/或安装一个或多个可操作补充的方法,则数据中心控制器也可提供关于那个方法的指令。在任何情况中,指令足以使得特定无头硬件设备实施安装可操作补充。

在图2中,例如,一个或多个可操作补充222被示为在数据中心210之外。然而,在此描述的原理与一个或多个管理补充位于数据中心210内部和/或分布在数据中心210和数据中心210外部的网络节点之间的方案兼容。

因此,无头硬件设备接收(动作341)指令来安装一个或多个可操作补充。无头硬件设备接着通过安装(动作342)一个或多个可操作补充来对指令作出响应,从而使得无头硬件设备。参见图2,在第一示例中,无头硬件设备可接着从要被升级状态(图2中用三角形抽象地表示)转换成受管理状态(图2中用正方形抽象地表示)。

因此,在此描述的原理提供了有效机制以允许数据中心控制器更新数据中心内的无头硬件设备。这样的机制可被用来向无头硬件设备提供管理接口以便从非受管状态转换到受管理状态。该机制还可被用来通过管理接口更新受管理无头硬件设备。此外,该机制可以被自动化从而允许更新通过数据中心中的许多、大部分、或甚至全部无头硬件设备来大范围执行。

本发明可具体化为其它具体形式而不背离其精神或本质特征。所描述的实施例在所有方面都应被认为仅是说明性而非限制性的。从而,本发明的范围由所附权利要求书而非前述描述指示。落入权利要求书的等效方案的含义和范围内的所有改变应被权利要求书的范围所涵盖。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1