服务器的部署方法及其系统与流程

文档序号:11254126阅读:2027来源:国知局
服务器的部署方法及其系统与流程

本公开涉及一种服务器的部署方法及其系统。



背景技术:

openstack是一个开源的云计算管理平台项目。目前,在相关技术中,openstack的部署方法主要是用户手动选择配置选项,对指定服务器进行部署。在实现本公开实施例的过程中,发明人发现相关技术至少存在如下缺陷:手动部署openstack,对用户的硬件知识储备要求较高,需要用户对服务器的硬件性能了如指掌,否则,难以做出较好的选择。



技术实现要素:

本公开的一个方面提供了一种服务器的部署方法,应用于云计算管理平台,包括:通过部署服务器收集目标服务器的硬件信息,其中,上述目标服务器用于部署到上述云计算管理平台中以提供对应的服务;获取存储在上述部署服务器中的服务器部署规则,其中,上述服务器部署规则用于规定在上述云计算管理平台中部署各服务器时所遵循的法则;以及根据收集到的上述硬件信息和获取到的上述服务器部署规则,确定上述目标服务器在上述云计算管理平台中所提供的服务。

可选地,在确定上述目标服务器在上述云计算管理平台中所提供的服务之后,上述方法还包括:检测是否有请求添加至上述云计算管理平台中的新增服务器;若检测有请求添加至上述云计算管理平台中的新增服务器,则获取用于指示上述新增服务器在上述云计算管理平台中将提供的服务的用户指令;以及根据上述用户指令的指示,确定上述新增服务器在上述云计算管理平台中所提供的服务。

可选地,在获取用于指示上述新增服务器在上述云计算管理平台中将提供的服务的用户指令之前,上述方法还包括:检测是否接收到上述用户指令;若没有接收到,则获取上述新增服务器的硬件信息;以及根据获取的上述新增服务器的硬件信息和上述服务器部署规则,确定上述新增服务器在上述云计算管理平台中所提供的服务。

可选地,在确定上述新增服务器在上述云计算管理平台中所提供的服务的同时,上述方法还包括:根据获取的上述目标服务器的硬件信息和上述服务器部署规则,重新确定上述目标服务器在上述云计算管理平台中所提供的服务。

可选地,在确定上述目标服务器在上述云计算管理平台中所提供的服务之后,上述方法还包括:检测是否接收到用户指令以指示将上述目标服务器从上述云计算管理平台中删除;以及若检测接收到用户指令以指示将上述目标服务器从上述云计算管理平台中删除,则根据接收到的用户指令的指示,将上述目标服务器从上述云计算管理平台中删除。

可选地,上述云计算管理平台中除部署有上述目标服务器之外还部署有其他服务器,在将上述目标服务器从上述云计算管理平台中删除之后,上述方法还包括:重新确定上述其他服务器在上述云计算管理平台中所提供的服务。

可选地,在确定上述目标服务器在上述云计算管理平台中所提供的服务之后,上述方法还包括:将上述目标服务器所安装的操作系统的启动镜像推送给上述目标服务器。

本公开的另一个方面提供了一种服务器的部署系统,应用于云计算管理平台,包括:收集模块,用于通过部署服务器收集目标服务器的硬件信息,其中,上述目标服务器用于部署到上述云计算管理平台中以提供对应的服务;第一获取模块,用于获取存储在上述部署服务器中的服务器部署规则,其中,上述服务器部署规则用于规定在上述云计算管理平台中部署各服务器的所遵循的法则;以及第一确定模块,用于根据收集到的上述硬件信息和获取到的上述服务器部署规则,确定上述目标服务器在上述云计算管理平台中所提供的服务。

可选地,上述系统还包括:第一检测模块,用于在确定上述目标服务器在上述云计算管理平台中所提供的服务之后,检测是否有请求添加至上述云计算管理平台中的新增服务器;第二获取模块,用于在有请求添加至上述云计算管理平台中的上述新增服务器的情况下,获取用于指示上述新增服务器在上述云计算管理平台中将提供的服务的用户指令;以及第二确定模块,用于根据上述用户指令的指示,确定上述新增服务器在上述云计算管理平台中所充当的节点角色。

可选地,上述系统还包括:第二检测模块,用于在获取用于指示上述新增服务器在上述云计算管理平台中将提供的服务的用户指令之前,检测是否接收到上述用户指令;第三获取模块,用于在没有接收到上述用户指令的情况下,获取上述新增服务器的硬件信息;以及第三确定模块,用于根据获取的上述新增服务器的硬件信息和上述服务器部署规则,确定上述新增服务器在上述云计算管理平台中所提供的服务。

本公开的另一方面提供了一种非易失性存储介质,存储有计算机可执行指令,上述指令在被执行时用于实现如上任一项所述的服务器的部署方法。

本公开的另一方面提供了一种计算机程序,上述计算机程序包括计算机可执行指令,上述指令在被执行时用于实现如上任一项所述的服务器的部署方法。

附图说明

为了更完整地理解本公开及其优势,现在将参考结合附图的以下描述,其中:

图1a示意性示出了一种传统的对服务器进行部署的应用场景;

图1b示意性示出了根据本公开实施例的可应用服务器的部署方法及系统的应用场景;

图2示意性示出了根据本公开实施例的服务器的部署方法的流程图;

图3a示意性示出了根据本公开另一实施例的服务器的部署方法的流程图;

图3b示意性示出了根据本公开另一实施例的服务器的部署方法的流程图;

图3c示意性示出了根据本公开另一实施例的服务器的部署方法的流程图;

图3d示意性示出了根据本公开另一实施例的服务器的部署方法的流程图;

图4示意性示出了根据本公开实施例的服务器的部署系统的框图;

图5a示意性示出了根据本公开另一实施例的服务器的部署系统的框图;

图5b示意性示出了根据本公开另一实施例的服务器的部署系统的框图;以及

图6示意性示出了根据本公开实施例的部署服务器的框图。

具体实施方式

以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。

在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。这里使用的词语“一”、“一个(种)”和“该”等也应包括“多个”、“多种”的意思,除非上下文另外明确指出。此外,在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。

在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。

附图中示出了一些方框图和/或流程图。应理解,方框图和/或流程图中的一些方框或其组合可以由计算机程序指令来实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而这些指令在由该处理器执行时可以创建用于实现这些方框图和/或流程图中所说明的功能/操作的装置。

因此,本公开的技术可以硬件和/或软件(包括固件、微代码等)的形式来实现。另外,本公开的技术可以采取存储有指令的计算机可读介质上的计算机程序产品的形式,该计算机程序产品可供指令执行系统使用或者结合指令执行系统使用。在本公开的上下文中,计算机可读介质可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,计算机可读介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。计算机可读介质的具体示例包括:磁存储装置,如磁带或硬盘(hdd);光存储装置,如光盘(cd-rom);存储器,如随机存取存储器(ram)或闪存;和/或有线/无线通信链路。

本公开的实施例提供了一种服务器的部署方法及其系统。服务器的部署方法应用于云计算管理平台,该方法包括通过部署服务器收集目标服务器的硬件信息,其中,目标服务器用于部署到云计算管理平台中以提供对应的服务,获取存储在部署服务器中的服务器部署规则,其中,服务器部署规则用于规定在云计算管理平台中部署各服务器时所遵循的法则,以及根据收集到的硬件信息和获取到的部署规则,确定目标服务器在云计算管理平台中所提供的服务。

图1a示意性示出了一种传统的对服务器进行部署的应用场景,如图1a所示,这是一种典型的部署openstack的应用场景。在该场景中,有6台服务器,部署要求如下:1台做控制节点,2台做计算节点,3台做存储节点。部署openstack之前,需要将所有的服务器连接到管理网络上。一般地,这样的网络都是使用类似智能平台管理接口(intelligentplatformmanagementinterface,简称为ipmi)的专门的服务器管理的协议的。在该应用场景中,由于没有设置部署服务器(专门用于部署其他服务器的服务器),因此,在部署openstack云服务时,需要用户手动配置各服务器的节点角色(即个服务器在网络中所提供的服务),此时,如用户对各服务器的硬件性能不了解,则很难做出最好的选择。而且在云环境下,还要根据不同的节点角色查看相应的硬件指标。比如,对于服务器a而言,其磁盘的读写速度快,且cpu的处理速度也快,这样的服务器就适合做存储节点,因为存储节点对磁盘的读写能力要求比较高,对cpu的处理速度要求不高。再比如,对于服务器b而言,其磁盘的读写速度慢,但内存比较大,且cpu的处理速度也快,网卡带宽高,这样的服务器就适合做网络节点用来提供网络服务。

图1b示意性示出了根据本公开实施例的可应用服务器的部署方法及系统的应用场景,如图1b所示,在该场景中,有6台服务器,部署要求如下:1台做控制节点,2台做计算节点,3台做存储节点。在该应用场景中,由于设置了一台或者多台部署服务器(图中以一台为例示出),因此,在部署openstack云服务时,无需用户手动配置各服务器的节点角色,部署服务器可以自动收集各服务器的硬件性能指标/参数,并基于收集到的相关信息,利用特定的算法,确定各服务器的节点角色。因此,即使用户对各服务器的硬件性能指标/参数不了解,也不妨碍openstack的部署。比如,对于服务器a而言,其磁盘的读写速度快,且cpu的处理速度也快,这样的服务器就适合做存储节点,因为存储节点对磁盘的读写能力要求比较高,对cpu的处理速度要求不高,此时部署服务器会根据其硬件性能自动将其部署成存储节点。再比如,对于服务器b而言,其磁盘的读写速度慢,但内存比较大,且cpu的处理速度也快,网卡带宽高,这样的服务器就适合做网络节点用来提供网络服务,此时部署服务器也会根据其硬件性能自动将其部署成网络节点。

图2示意性示出了根据本公开实施例的服务器的部署方法的流程图。

如图2所示,该方法包括操作s201~s203,其中:

操作s201,通过部署服务器收集目标服务器的硬件信息。其中,目标服务器用于部署到云计算管理平台中以提供对应的服务。

操作s202,获取存储在部署服务器中的服务器部署规则。其中,服务器部署规则用于规定在云计算管理平台中部署各服务器时所遵循的法则。

操作s203,根据收集到的硬件信息和获取到的服务器部署规则,确定目标服务器在云计算管理平台中所提供的服务。

在本公开实施例中,实施时,可以在管理网络(如,使用ipmi协议的服务器管理网)一侧,加入一台或者多台部署服务器(用于将各服务器部署到openstack中,以提供对应的服务,如,存储服务,计算服务,网络服务和控制服务等)。

这台或者这些部署服务器可以用于保存要部署openstack服务的相关服务器的硬件信息,硬件信息具体可以包括但不限于:cpu的型号及处理速度,磁盘的类型(如,是ssd,还是hdd,等等)及读写速度,网卡的型号及吞出率,等等。对于这些信息,部署服务器都可以通过ipmi一类的管理协议从对应的服务器动态获取。而且随着openstack服务中服务器数量的增加或减少,部署服务器上所维护的信息也会动态的更新。

由于这台或者这些部署服务器还用于保存部署openstack服务的部署规则,部署规则包括但不限于各节点角色的分配比例,比如计算节点、控制节点、存储节点的分配比例,等等。因此,可以直接从部署服务器上获取服务器部署规则。

在获取到各服务器的硬件信息和服务器部署规则之后,可以通过预先设定的匹配算法,计算出各服务器在openstack服务中所充当的节点角色,即,即在云计算管理平台中所提供的服务,实现在部署openstack服务时自动确定各个服务器的节点角色的目的。

通过本公开实施例,采用设置部署服务器的方式,由部署服务器自行收集并存储服务器部署规则和各服务器的硬件信息,从而根据收集到的硬件信息和获取到的部署规则,可以自动确定目标服务器在云计算管理平台中所提供的服务,克服了相关技术中手动部署openstack服务,对用户的硬件知识储备要求较高,需要用户对服务器的硬件性能了如指掌的缺陷,并且很容易做出较好的选择。

下面参考图3a~图3d,结合具体实施例对图2所示的方法做进一步说明。

根据本公开的实施例,在确定目标服务器在云计算管理平台中所提供的服务之后,该方法还可以包括检测是否有请求添加至云计算管理平台中的新增服务器,若检测有请求添加至云计算管理平台中的新增服务器,则获取用于指示新增服务器在云计算管理平台中将提供的服务的用户指令,以及根据用户指令的指示,确定新增服务器在云计算管理平台中所提供的服务。

图3a示意性示出了根据本公开另一实施例的服务器的部署方法的流程图。在该实施例中,除了包括上文参考图2描述的操作s201~s203之外,还包括操作s301~s303。为了描述的简洁起见,这里省略对操作s201~s203的描述。

如图3a所示,在确定目标服务器在云计算管理平台中所提供的服务之后,该方法还可以包括操作s301~s303,其中:

操作s301,检测是否有请求添加至云计算管理平台中的新增服务器。

操作s302,若检测有请求添加至云计算管理平台中的新增服务器,则获取用于指示新增服务器在云计算管理平台中将提供的服务的用户指令。

操作s303,根据用户指令的指示,确定新增服务器在云计算管理平台中所提供的服务。

在本公开实施例中,除了可以自动部署服务器之外,为了满足用户的个性化需求,用户还可以根据实际需要发送请求,以指示部署服务器将网络中新添加的服务器配置成指定的节点角色,例如,对于服务器a而言,用户可以直接指定将其设置为存储节点。

通过本公开实施例,即可以根据预设匹配算法自动部署各服务器,又可以根据用户指示部署各服务器,使得服务器部署方案更加灵活,更能满足用户的个性化需求。

根据本公开的实施例,在获取用于指示新增服务器在云计算管理平台中将提供的服务的用户指令之前,该方法还可以包括检测是否接收到用户指令,若没有接收到用户指令,则获取新增服务器的硬件信息,以及根据获取的新增服务器的硬件信息和服务器部署规则,确定新增服务器在云计算管理平台中所提供的服务。

图3b示意性示出了根据本公开另一实施例的服务器的部署方法的流程图。在该实施例中,除了包括上文参考图2和图3a描述的相应操作之外,还可以包括操作s304~s306。为了描述的简洁起见,这里省略对图2和图3a描述的相应操作的描述。

如图3b所示,在确定目标服务器在云计算管理平台中所提供的服务之后,该方法还可以包括操作s304~s306,其中:

操作s304,检测是否接收到用户指令。

操作s305,若没有接收到,则获取新增服务器的硬件信息。

操作s306,根据获取的新增服务器的硬件信息和服务器部署规则,确定新增服务器在云计算管理平台中所提供的服务。

在本公开实施例中,对于一个云计算管理平台而言,按照硬件信息和服务器部署规则部署好一部分服务器之后,如果又有新的服务器请求加入该云计算管理平台,此时,需要检测是否接收到用户指令,以确定用户是否指定了该台服务器的节点角色。具体地,如果接收到了用户指令,则按照用户的指示配置即可;否则,没有接收到,则根据自动匹配算法配置即可,即,获取新增服务器的硬件信息,并根据获取的新增服务器的硬件信息和服务器部署规则,确定新增服务器在云计算管理平台中所提供的服务。

通过本公开实施例,对于一个云计算管理平台而言,新添加至其中的服务器至少可以通过两种方式进行配置。一种是由用户指定其节点角色,另一种是根据自动匹配算法进行计算得到其节点角色,因而使得服务器的部署方式更多样性。

根据本公开的实施例,在确定新增服务器在云计算管理平台中所提供的服务的同时,该方法还可以包括:根据获取的目标服务器的硬件信息和服务器部署规则,重新确定目标服务器在云计算管理平台中所提供的服务。

由于服务器部署规则中一般会规定节点角色的配比,在这种情况下,对于一个已经部署完好的云计算管理平台而言,如果一个或者新增服务器,除了需要配置这个或者这些新增服务器之外,优选地,对于其他服务器而言,还可以基于这些服务器的硬件信息和服务器部署规则,重新对其进行配置。

通过本公开实施例,可以根据云计算管理平台中服务器的增加,动态的调整云计算管理平台中各服务器的节点角色,达到优化云计算管理平台的结构的目的。

根据本公开的实施例,在确定目标服务器在云计算管理平台中所提供的服务之后,该方法还可以包括检测是否接收到用户指令以指示将目标服务器从云计算管理平台中删除,以及若检测接收到用户指令以指示将目标服务器从云计算管理平台中删除,则根据接收到的用户指令的指示,将目标服务器从云计算管理平台中删除。

图3c示意性示出了根据本公开另一实施例的服务器的部署方法的流程图。在该实施例中,除了包括上文参考图2描述的操作s201~s203之外,还包括操作s307和s308。为了描述的简洁起见,这里省略对操作s307~s308的描述。

如图3c所示,在确定目标服务器在云计算管理平台中所提供的服务之后,该方法还可以包括操作s307和s308。其中:

在操作s307,检测是否接收到用户指令以指示将目标服务器从云计算管理平台中删除。

在操作s308,若检测接收到用户指令,则根据接收到的用户指令的指示,将目标服务器从云计算管理平台中删除。

也即,对于一个已经部署完好的云计算管理平台而言,既可以新增服务器,也可以删除已有的服务器。

在本公开实施例中,可以根据用户的指示,从云计算管理平台删除用户指定的服务器。通过本公开实施例,对于一个云计算管理平台而言,与新增服务器类似,还可以删除其中的一个或者多个服务器,以实现动态调整云计算管理平台结构的目的,并且使得服务器部署方案更加灵活,更能满足用户的个性化需求。

根据本公开的实施例,云计算管理平台中除部署有目标服务器之外还部署有其他服务器,在将目标服务器从云计算管理平台中删除之后,该方法还可以包括:重新确定其他服务器在云计算管理平台中所提供的服务。

也即,对于一个已经部署完好的云计算管理平台而言,既可以新增服务器,也可以删除已有的服务器。进一步,由于服务器部署规则中一般会规定节点角色的配比,在这种情况下,对于一个已经部署完好的云计算管理平台而言,在删除一个或者多个服务器之后,优选地,对于其他服务器而言,还可以基于这些服务器的硬件信息和服务器部署规则,重新对其进行配置。

通过本公开实施例,可以根据云计算管理平台中服务器的减少,动态的调整云计算管理平台中各服务器的节点角色,达到优化云计算管理平台的结构的目的。

根据本公开的实施例,在确定目标服务器在云计算管理平台中所提供的服务之后,该方法还可以包括:将目标服务器所安装的操作系统的启动镜像推送给目标服务器。

图3d示意性示出了根据本公开另一实施例的服务器的部署方法的流程图。在该实施例中,除了包括上文参考图2描述的操作s201~s203之外,还包括操作s309。为了描述的简洁起见,这里省略对操作s201~s203的描述。

如图3d所示,在确定目标服务器在云计算管理平台中所提供的服务之后,该方法还可以包括操作s309,其中:

在操作s309,将目标服务器所安装的操作系统的启动镜像推送给目标服务器。

需要说明的是,在管理网中添加部署服务器,部署服务器会动态的收集各个服务器的硬件信息,同时部署服务器中也存储有部署openstack的一些部署规则(即服务器部署规则)。

开始部署openstack时,节点自动选择算法(即预先设定的节点匹配算法)可以基于上面的两类信息(即硬件信息和服务器部署规则)进行服务器角色的自动设定。

服务器部署规则可以包括多种,在此不做限定。例如:

(1)选择磁盘读写速度最快的服务器作为openstack的存储节点。

(2)选择内存大、网卡吞吐率高、cpu处理速度快的服务器作为openstack的网络节点。

(3)选择cpu处理速度最快,内存最大,磁盘读写速度最快的服务器作为控制节点,如果是在ha环境下,作为主要的控制节点。

(4)根据服务器的数量自动的调整openstack中控制节点、存储节点、网络节点的数量,比如ha模式下,需要的控制节点的数量是3,5,7这样的奇数,存储节点因为通常要存储3个以上的数据备份,所以至少要3个以上的存储节点。

在本公开实施例中,在选定节点角色之后,部署服务器可以将目标服务器所安装的操作系统的启动镜像推送给目标服务器,目标服务器就可以从操作系统的启动镜像启动,从而进入openstack的管理网络(简称管理网),此时,也可以将部署服务器连接到这个管理网中,完成openstack中各节点角色的进一步部署。

通过本公开实施例,在openstack环境中自动选择节点角色,整个部署过程,不需要用户人为指定服务器的节点角色,对openstack运营人员的硬件知识储备要求降低,可以适合自动部署场景。

图4示意性示出了根据本公开实施例的服务器的部署系统的框图。

如图4所示,服务器的部署系统400应用于云计算管理平台,服务器的部署系统400包括收集模块410、第一获取模块420和第一确定模块430。该服务器的部署系统400可以执行上面参考图2~图3d描述的方法。其中:

收集模块410用于通过部署服务器收集目标服务器的硬件信息,其中,目标服务器用于部署到云计算管理平台中以提供对应的服务。

第一获取模块420用于获取存储在部署服务器中的服务器部署规则,其中,服务器部署规则用于规定在云计算管理平台中部署各服务器的所遵循的法则。

第一确定模块430用于根据收集到的硬件信息和获取到的部署规则,确定目标服务器在云计算管理平台中所提供的服务。

在本公开实施例中,实施时,可以在管理网络(如,使用ipmi协议的服务器管理网)一侧,加入一台或者多台部署服务器(用于将各服务器部署到openstack中,以提供对应的服务,如,存储服务,计算服务,网络服务和控制服务等)。

这台或者这些部署服务器可以用于保存要部署openstack服务的相关服务器的硬件信息,硬件信息具体可以包括但不限于:cpu的型号及处理速度,磁盘的类型(如,是ssd,还是hdd,等等)及读写速度,网卡的型号及吞出率,等等。对于这些信息,部署服务器都可以通过ipmi一类的管理协议从对应的服务器动态获取。而且随着openstack服务中服务器数量的增加或减少,部署服务器上所维护的信息也会动态的更新。

由于这台或者这些部署服务器还用于保存部署openstack服务的部署规则,部署规则包括但不限于各节点角色的分配比例,比如计算节点、控制节点、存储节点的分配比例,等等。因此,可以直接从部署服务器上获取服务器部署规则。

在获取到各服务器的硬件信息和服务器部署规则之后,可以通过预先设定的匹配算法,计算出各服务器在openstack服务中所充当的节点角色,即,即在云计算管理平台中所提供的服务,实现在部署openstack服务时自动确定各个服务器的节点角色的目的。

通过本公开实施例,采用设置部署服务器的方式,由部署服务器自行收集并存储服务器部署规则和各服务器的硬件信息,从而根据收集到的硬件信息和获取到的部署规则,可以自动确定目标服务器在云计算管理平台中所提供的服务,克服了相关技术中手动部署openstack服务,对用户的硬件知识储备要求较高,需要用户对服务器的硬件性能了如指掌的缺陷,并且很容易做出较好的选择。

图5a示意性示出了根据本公开另一实施例的服务器的部署系统的框图。在该实施例中,除了包括上文参考图4描述的模块之外,还可以包括第一检测模块440、第二获取模块450和第二确定模块460。为了描述的简洁起见,这里省略对参考图4描述的模块的描述。

如图5a所示,根据本公开的实施例,服务器的部署系统400还可以包括第一检测模块440、第二获取模块450和第二确定模块460。

第一检测模块440用于在确定目标服务器在云计算管理平台中所提供的服务之后,检测是否有请求添加至云计算管理平台中的新增服务器。

第二获取模块450用于在有请求添加至云计算管理平台中的新增服务器的情况下,获取用于指示新增服务器在云计算管理平台中将提供的服务的用户指令。

第二确定模块460用于根据用户指令的指示,确定新增服务器在云计算管理平台中所充当的节点角色。

在本公开实施例中,除了可以自动部署服务器之外,为了满足用户的个性化需求,用户还可以根据实际需要发送请求,以指示部署服务器将网络中新添加的服务器配置成指定的节点角色,例如,对于服务器a而言,用户可以直接指定将其设置为存储节点。

通过本公开实施例,即可以根据预设匹配算法自动部署各服务器,又可以根据用户指示部署各服务器,使得服务器部署方案更加灵活,更能满足用户的个性化需求。

图5b示意性示出了根据本公开另一实施例的服务器的部署系统的框图。在该实施例中,除了包括上文参考图4和图5a描述的模块之外,还包括第二检测模块470、第三获取模块480和第三确定模块490。为了描述的简洁起见,这里省略对参考图4和图5a描述的模块的描述。

如图5b所示,根据本公开的实施例,服务器的部署系统400还包括第二检测模块470、第三获取模块480和第三确定模块490。

第二检测模块470用于在获取用于指示新增服务器在云计算管理平台中将提供的服务的用户指令之前,检测是否接收到用户指令。

第三获取模块480用于在没有接收到用户指令的情况下,获取新增服务器的硬件信息。

第三确定模块490用于根据获取的新增服务器的硬件信息和服务器部署规则,确定新增服务器在云计算管理平台中所提供的服务。

在本公开实施例中,对于一个云计算管理平台而言,按照硬件信息和服务器部署规则部署好一部分服务器之后,如果又有新的服务器请求加入该云计算管理平台,此时,需要检测是否接收到用户指令,以确定用户是否指定了该台服务器的节点角色。具体地,如果接收到了用户指令,则按照用户的指示配置即可;否则,没有接收到,则根据自动匹配算法配置即可,即,获取新增服务器的硬件信息,并根据获取的新增服务器的硬件信息和服务器部署规则,确定新增服务器在云计算管理平台中所提供的服务。

通过本公开实施例,对于一个云计算管理平台而言,新添加至其中的服务器至少可以通过两种方式进行配置。一种是由用户指定其节点角色,另一种是根据自动匹配算法进行计算得到其节点角色,因而使得服务器的部署方式更多样性。

可以理解的是,上述模块可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块实现。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本发明的实施例,上述模块中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(fpga)、可编程逻辑阵列(pla)、片上系统、基板上的系统、封装上的系统、专用集成电路(asic),或可以以对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式的适当组合来实现。或者,上述模块中的至少一个可以至少被部分地实现为计算机程序模块,当该程序被计算机运行时,可以执行相应模块的功能。

本公开的另一方面提供了一种非易失性存储介质,存储有计算机可执行指令,上述指令在被执行时用于实现如上任一项所述的服务器的部署方法。

本公开的另一方面提供了一种计算机程序,上述计算机程序包括计算机可执行指令,上述指令在被执行时用于实现如上任一项所述的服务器的部署方法。

图6示意性示出了根据本公开实施例的部署服务器的框图。

如图6所示,部署服务器600包括处理器610、存储器620。该部署服务器600可以执行上面参考图2~图3d描述的方法。

具体地,处理器610例如可以包括通用微处理器、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(asic)),等等。处理器610还可以包括用于缓存用途的板载存储器。处理器610可以是用于执行参考图2~图3d描述的根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。

存储器620,例如可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,可读存储介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。可读存储介质的具体示例包括:磁存储装置,如磁带或硬盘(hdd);光存储装置,如光盘(cd-rom);存储器,如随机存取存储器(ram)或闪存;和/或有线/无线通信链路。

存储器620可以包括计算机程序621,该计算机程序621可以包括代码/计算机可执行指令,其在由处理器610执行时使得处理器610执行例如上面结合图2~图3d所描述的方法流程及其任何变形。

计算机程序621可被配置为具有例如包括计算机程序模块的计算机程序代码。例如,在示例实施例中,计算机程序621中的代码可以包括一个或多个程序模块,例如包括621a、模块621b、……。应当注意,模块的划分方式和个数并不是固定的,本领域技术人员可以根据实际情况使用合适的程序模块或程序模块组合,当这些程序模块组合被处理器610执行时,使得处理器610可以执行例如上面结合图2~图3d所描述的方法流程及其任何变形。

根据本发明的实施例,收集模块410、第一获取模块420、第一确定模块430、第一检测模块440、第二获取模块450、第二确定模块460、第二检测模块470、第三获取模块480和第三确定模块490中的至少一个可以实现为参考图6描述的计算机程序模块,其在被处理器610执行时,可以实现上面描述的相应操作。

本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。

尽管已经参照本公开的特定示例性实施例示出并描述了本公开,但是本领域技术人员应该理解,在不背离所附权利要求及其等同物限定的本公开的精神和范围的情况下,可以对本公开进行形式和细节上的多种改变。因此,本公开的范围不应该限于上述实施例,而是应该不仅由所附权利要求来进行确定,还由所附权利要求的等同物来进行限定。

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