服务的自动化部署方法及装置的制造方法

文档序号:10724621阅读:158来源:国知局
服务的自动化部署方法及装置的制造方法
【专利摘要】本发明涉及服务器技术领域,公开了一种服务的自动化部署方法及装置。本发明中,通过对服务器集群中的各服务器进行监控;并根据监控所产生的监控结果,确定是否将服务部署至服务器集群中;以及当确定将服务部署至服务器集群中时,将服务对应的应用程序发送至服务器集群,以部署服务,从而实现对服务器的自动化部署。
【专利说明】
服务的自动化部署方法及装置
技术领域
[0001]本发明涉及服务器技术领域,特别涉及一种服务的自动化部署方法及装置,用于将服务部署至服务器集群。【背景技术】
[0002]随着计算机互联网技术的发展,特别是随着全球化进程的推进,所需软件和硬件投入成本也变得更高。由于大多数互联网业务都基于在分布式系统集群上运行,分布式系统集群由多台服务器组成,所以互联网业务规模的扩大,部署的服务器的数量也变大,因此将应用软件或者游戏软件部署到所有服务器上的工作量变的非常大。
【发明内容】

[0003]本发明的目的在于提供一种服务的自动化部署方法及装置,可以自动化地实现服务的部署。
[0004]为解决上述技术问题,本发明提供了一种服务的自动化部署方法,包括:对服务器集群中的各服务器进行监控;根据所述监控所产生的监控结果,确定是否将服务部署至所述服务器集群中;以及当确定将所述服务部署至所述服务器集群中时,将所述服务对应的应用程序发送至所述服务器集群,以部署所述服务。
[0005]本发明还提供了一种服务的自动化部署装置,包括:监控模块,用于对服务器集群中的各服务器进行监控;处理模块,用于根据所述监控模块所产生的监控结果,确定是否将服务部署至所述服务器集群中;以及发送模块,用于当所述处理模块确定要将所述服务部署至所述服务器集群中时,将所述服务对应的应用程序发送至所述服务器集群,以部署所述服务。
[0006]本发明相对于现有技术而言,一个特点在于先监控服务器集群的性能或状态之后,再决定是否部署服务。并在决定部署服务之后,自动化地将服务部署至服务器集群,以提高部署效率。
[0007]另外,所述根据所述监控所产生的监控结果,确定是否将服务部署至所述服务器集群中,包括:当根据所述监控结果,确定将所述服务部署至所述服务器集群中时,还确定待部署的服务器,所述待部署的服务器用于部署所述服务,且所述待部署的服务器为所述服务器集群中的至少部分的服务器;所述将所述服务对应的应用程序发送至所述服务器集群,包括:将所述服务对应的应用程序发送至所述待部署的服务器。此实施方式中,根据对服务器集群的监控结果,可将服务以仅部署至服务器集群中的某些服务器上(例如性能较优的服务器上),从而可以根据服务器集群的实际情况,进行优化的服务部署。
[0008]另外,在将所述服务对应的应用程序发送至所述服务器集群之后,所述方法还包括:检测所述服务是否成功部署至所述服务器集群中。所述检测所述服务是否成功部署至所述服务器集群中包括:向所述服务器集群发送请求所述服务的URL请求;根据是否接收到相应的URL响应,来判断所述服务是否部署成功。此实施方式,通过检测操作来确保服务部署成功,从而提高效率。
[0009]另外,所述对服务器集群中的各服务器进行监控包括:从业务层面和硬件层面对所述服务器集群中的各服务器进行监控。其中,从所述业务层面对所述服务器集群中的各服务器进行监控包括:监控所述服务器集群中各服务器的响应时间。其中,从所述硬件层面对所述服务器集群中的各服务器进行监控包括:监控所述服务器集群中各服务器的如下至少一项参数:CPU使用率、内存使用率和磁盘空间。此实施方式,对服务器集群中各服务器的监控不仅包括硬件层面的监控(如CPU使用率、内存使用率等),还进行业务层面的监控(如响应时间)。从而可以全方位地了解服务器集群的性能或状态,为后面的处理(如扩容、部署新服务等)提供数据支撑。【附图说明】
[0010]图1是根据本发明第一实施方式的服务的自动化部署方法的流程示意图;
[0011]图2是根据本发明第二实施方式的服务的自动化部署方法的流程示意图;[〇〇12]图3是根据本发明第三实施方式的服务的自动化部署装置的结构示意图;
[0013]图4是根据本发明第四实施方式的服务器的结构示意图。【具体实施方式】
[0014]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中, 为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。
[0015]本发明的第一实施方式涉及一种服务的自动化部署方法,用于将服务(如视频服务、游戏服务等等服务)自动化地部署至服务器集群中。其具体流程如图1所示。[〇〇16]如图1所示,该服务的自动化部署方法包括如下步骤:[〇〇17]步骤11:对服务器集群中的各服务器进行监控。[〇〇18]步骤12:根据监控所产生的监控结果,确定是否将服务部署至服务器集群中。以及
[0019]步骤13:当确定将服务部署至服务器集群中时,将服务对应的应用程序发送至服务器集群,以部署服务。
[0020]其中,在步骤11中,对服务器集群中的各服务器进行监控包括:从业务层面和硬件层面对服务器集群中的各服务器进行监控。一般而言,可以与服务器集群中各服务器建立心跳连接以对各服务器进行监控。由于此实施方式能够从业务层面和硬件层面两个层面对服务器集群进行监控,因此其监控结果更能够反应服务器集群的情况,如服务器集群的整体性能状态、服务器集群中哪些服务器的性能较优或者服务器集群中哪些服务器的性能较差等。
[0021]其中,从业务层面的监控主要包括:监控服务器集群中各服务器的响应时间。其中,由于在服务器集群中一般已部署的一些服务,因此可以监控各服务器对这些服务的响应时间,从而判断服务器的性能状态。一般而言,服务器的响应时间具有关键性,可直接影响监控结果;例如,当某台服务器的响应时间超过阈值(如Is)时,则可直接判定该服务器性能不符合要求。
[0022]其中,从硬件层面对服务器集群进行监控包括:监控服务器集群中的各服务器的如下至少一项参数:CPU使用率、内存使用率和磁盘空间。其中,在评价服务器性能时,可以综合硬件层面的各参数来评价。例如,对于硬件层面中的各参数分别设定不同的权重,然后首先根据各参数的具体情况进行评分,然后将各项参数的评分结果各自乘以对应的权重, 从而来综合评价服务器的性能。
[0023]其中,在步骤12中,当根据监控结果评价出服务器集群的整体性能较优时(例如对服务器集群的整体评分超过阈值),可以确定该服务器集群可以部署新服务,即允许将新的服务添加至该服务器集群中。当根据监控结果评价出服务器集群的整体性能较差时(例如服务器集群中所有服务器的响应时间均不满足要求),则可以确定不允许将新服务添加至服务器集群中。并且,此时可以提示网络维护者对该服务器集群进行扩容或升级,以提升该服务器集群的性能。
[0024]其中,需要说明的是,对于某些情况,例如服务器集群中的某些服务器的性能较优,而其他的服务器的性能一般或较差。此时,可以根据监控结果,将新服务部署至这些性能较优的服务器中,而不部署至这些性能一般或较差的服务器中,从而以优化部署,避免这些性能一般或较差的服务器的性能进一步恶化。需要说明的是,服务器的性能的优、一般或差的评价标准可以由技术人员根据实际需要而设定,例如,可以设定第一阈值和第二阈值, 其中第一阈值大于第二阈值,当根据前述方式确定的服务器的评分大于第一阈值时,则可认为该服务器的性能较优,当服务器的评分在第一阈值和第二阈值之间时,可以认为该服务器的性能一般,当该服务器的评分低于第二阈值时,则认为该服务器的性能较差。另外, 对于服务器集群的整体性能的评价可以参考依据各服务器的性能评价而做出。另外,如果服务器集群的性能一直不好,那么可以考虑扩容或者升级,扩容之后再进行服务或应用的部署。
[0025]其中,在步骤13中,当确定需要将服务部署至服务器集群时,则将该服务对应的应用程序发送至服务器集群中的各服务器中,以使得各服务器自动地安装该服务的应用程序,从而完成服务的部署。
[0026]需要说明的是,将服务部署至服务器集群时,可以只将服务部署服务器集群中的部分服务器,而不部署至服务器集群中的全部服务器。例如,仅将服务部署至前述提及的性能较优的服务器。
[0027]另外,在服务部署至服务器集群时,一般是将服务部署至主干网上的服务器上,比如电信或联通的主干网。当主干网上的节点部署服务完成之后,其他分节点就可以从主节点上使用该服务。
[0028]本实施方式相对于现有技术而言,一个特点在于先监控服务器集群的性能或状态之后,再决定是否部署服务。并在决定部署服务之后,自动化地将服务部署至服务器集群, 以提高部署效率。
[0029]另外,本实施方式对服务器集群的监控不仅包括硬件层面的监控(如CPU使用率、 内存使用率等),还进行业务层面的监控(如响应时间)。从而可以全方位地了解服务器集群的性能或状态,为后面的处理(如扩容、部署新服务等)提供数据支撑。
[0030]本发明的第二实施方式涉及一种服务的自动化部署方法,如图2所示。第二实施方式与第一实施方式大致相同,主要区别之处在于:在本发明第二实施方式中,当将服务对应的应用程序发送至服务器集群之后,还检测服务是否成功部署至服务器集群中(即图2中的步骤14)。其中,检测服务是否成功部署至器集群的方式可以包括:向服务器集群发送请求服务的URL(Uniform Resource Locator,统一资源定位器或称为网址)请求;以及根据是否接收到相应的URL响应,来判断服务是否部署成功。一般而言,当服务成功部署至服务器后, 可以成功访问该服务的URL,因此当不能够成功访问该服务的URL(即访问失败时),可以说明该服务部署失败,需要重新进行部署。本实施方式,由于采用自动化地部署服务,因此十分有必要自动化地验证服务是否部署成功。
[0031]另外,在将服务部署至服务器集群之后,可以继续执行步骤11的监控,以在服务在服务器上运营一段时间之后,可以对服务部署至服务器之后的效果进行了解。
[0032]上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包含相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。[〇〇33]并且,本领域普通技术人员可以理解实现上述实施方式方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
[0034]本发明第三实施方式涉及一种自动化部署装置,如图3所示,其用于将服务自动化地部署至服务器集群,并且该自动化部署装置带有监控功能。该自动化部署装置3包括: [〇〇35]监控模块31,用于对服务器集群中的各服务器进行监控。[〇〇36]处理模块32,用于根据监控模块31进行监控所产生的监控结果,确定是否将服务部署至服务器集群中。以及[〇〇37]发送模块33,用于当处理模块32确定将服务部署至服务器集群中时,将服务对应的应用程序发送至服务器集群,以部署服务。
[0038]其中,监控模块31对服务器集群中的各服务器进行监控包括:从业务层面和硬件层面对服务器集群中的各服务器进行监控。由于此实施方式能够从业务层面和硬件层面两个层面对服务器集群进行监控,因此其监控结果更能够反应服务器集群的情况,如服务器集群的整体性能状态、服务器集群中哪些服务器的性能较优或者服务器集群中哪些服务器的性能较差等。
[0039]其中,从业务层面的监控主要包括:监控服务器集群中各服务器的响应时间。其中,由于在服务器集群中一般已部署的一些服务,因此可以监控各服务器对这些服务的响应时间,从而判断服务器的性能状态。一般而言,服务器的响应时间具有关键性,可直接影响监控结果;例如,当某台服务器的响应时间超过阈值(如Is)时,则可直接判定该服务器性能不符合要求。
[0040]其中,从硬件层面对服务器集群进行监控包括:监控服务器集群中的各服务器的如下至少一项参数:CPU使用率、内存使用率和磁盘空间。其中,在评价服务器性能时,可以综合硬件层面的各参数来评价。例如,对于硬件层面中的各参数分别设定不同的权重,然后首先根据各参数的具体情况进行评分,然后将各项参数的评分结果各自乘以对应的权重,从而来综合评价服务器的性能。
[0041]其中,当处理模块32根据监控结果评价出服务器集群的整体性能较优时(例如对服务器集群的整体平分超过阈值),可以确定该服务器集群可以部署新服务,即允许将新的服务添加至该服务器集群中。当根据监控结果评价出服务器集群的整体性能较差时(例如服务器集群中所有服务器的响应时间均不满足要求),则可以确定不允许将新服务添加至服务器集群中。并且,此时可以提示网络维护者对该服务器集群进行扩容或升级,以提升该服务器集群的性能。
[0042]其中,需要说明的是,对于某些情况,例如服务器集群中的某些服务器的性能较优,而其他的服务器的性能一般或较差。此时,可以根据监控结果,将新服务部署至这些性能较优的服务器中,而不部署至这些性能一般或较差的服务器中,从而以优化部署,避免这些性能一般或较差的服务器的性能进一步恶化。需要说明的是,服务器的性能的优、一般或差的评价标准可以由技术人员根据实际需要而设定,例如,可以设定第一阈值和第二阈值, 其中第一阈值大于第二阈值,当根据前述方式确定的服务器的评分大于第一阈值时,则可认为该服务器的性能较优,当服务器的评分在第一阈值和第二阈值之间时,可以认为该服务器的性能一般,当该服务器的评分低于第二阈值时,则认为该服务器的性能较差。另外, 对于服务器集群的整体性能的评价可以参考依据各服务器的性能评价而做出。[〇〇43]其中,发送模块33在当处理模块32确定需要将服务部署至服务器集群时,则将该服务对应的应用程序发送至服务器集群中的各服务器中,以使得各服务器自动地安装该服务的应用程序,从而完成服务的部署。
[0044]需要说明的是,将服务部署至服务器集群时,可以只将服务部署服务器集群中的部分服务器,而不部署至服务器集群中的全部服务器。例如,仅将服务部署至前述提及的性能较优的服务器。
[0045]另外,在服务部署至服务器集群时,一般是将服务部署至主干网上的服务器上,比如电信或联通的主干网。当主干网上的节点部署服务完成之后,其他分节点就可以从主节点上使用该服务。[〇〇46]另外,处理模块32还可以用于当发送模块33将服务对应的应用程序发送至服务器集群之后,检测服务是否成功部署至服务器集群中。其中,检测服务是否成功部署至器集群的方式可以包括:向服务器集群发送请求服务的URL(Uniform Resource Locator,统一资源定位器或称为网址)请求;以及根据是否接收到相应的URL响应,来判断服务是否部署成功。一般而言,当服务成功部署至服务器后,可以成功访问该服务的URL,因此当不能够成功访问该服务的URL(即访问失败时),可以说明该服务部署失败,需要重新进行部署。本实施方式,由于采用自动化地部署服务,因此十分有必要自动化地验证服务是否部署成功。
[0047]本实施方式相对于现有技术而言,一个特点在于先监控服务器集群的性能或状态之后,再决定是否部署服务。并在决定部署服务之后,自动化地将服务部署至服务器集群, 以提高部署效率。
[0048]另外,本实施方式对服务器集群的监控不仅包括硬件层面的监控(如CPU使用率、 内存使用率等),还进行业务层面的监控(如响应时间)。从而可以全方位地了解服务器集群的性能或状态,为后面的处理(如扩容、部署新服务等)提供数据支撑。
[0049]不难发现,本实施方式为与第二实施方式相对应的系统实施例,本实施方式可与第二实施方式互相配合实施。第二实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第二实施方式中。
[0050]值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单J L 〇
[0051]例如,本发明第四实施方式涉及一种服务器,用于将服务自动化地部署至服务器集群中,并且该服务器带有监控功能,其结构如图4所示。如图4所示,该服务器4包括:处理器41、存储器42、显示器43和收发器44。其中,处理器61为系统的核心,其可以为CPU(中央处理器)、DSP(Digital Signal Processor,数字信号处理器)等,其主要负责服务器4中各部件之间的协调工作,以及上述方施方式中提及的监控功能和确定是否要部署服务至服务器集群,以及向服务器集群中哪些服务器部署服务等功能。其中,存储器42可以为R0M(Read Only Memory,只读存储器)、RAM(Random Access Memory,随机访问存储器)、缓存或闪存等存储设备,其可以用于存储计算机可读的程序指令,该程序指令用于使得处理器41实现图1 或2实施例所示的自动化部署服务的功能。其中,显示器43主要用于显示人机交互界面,以方便技术人员查看监控结果、进行服务的应用程序上传、触发服务的自动部署等操作。其中,收发器44主要用于与服务器集群中的各服务器通信,从而向各服务器集群中的服务器分发服务对应的应用程序或者交互其他信息(如监控信息)等。[〇〇52]本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例, 而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
【主权项】
1.一种服务的自动化部署方法,其特征在于,包括:对服务器集群中的各服务器进行监控;根据所述监控所产生的监控结果,确定是否将服务部署至所述服务器集群中;以及当确定将所述服务部署至所述服务器集群中时,将所述服务对应的应用程序发送至所 述服务器集群,以部署所述服务。2.根据权利要求1所述的服务的自动化部署方法,其特征在于,所述根据所述监控所产 生的监控结果,确定是否将服务部署至所述服务器集群中,包括:当根据所述监控结果,确定将所述服务部署至所述服务器集群中时,还确定待部署的 服务器,所述待部署的服务器用于部署所述服务,且所述待部署的服务器为所述服务器集 群中的至少部分的服务器;所述将所述服务对应的应用程序发送至所述服务器集群包括:将所述服务对应的应用 程序发送至所述待部署的服务器。3.根据权利要求1或2所述的服务的自动化部署方法,其特征在于,在将所述服务对应 的应用程序发送至所述服务器集群之后,所述方法还包括:检测所述服务是否成功部署至所述服务器集群中。4.根据权利要求3所述的服务的自动化部署方法,其特征在于,所述检测所述服务是否 成功部署至所述服务器集群中,包括:向所述服务器集群发送请求所述服务的URL请求;以及根据是否接收到相应的URL响应,来判断所述服务是否部署成功。5.根据权利要求1或2所述的服务的自动化部署方法,其特征在于,所述对服务器集群 中的各服务器进行监控,包括:从业务层面和硬件层面对所述服务器集群中的各服务器进行监控。6.根据权利要求5所述的服务的自动化部署方法,其特征在于,从所述业务层面对所述服务器集群中的各服务器进行监控,包括:监控所述服务器集 群中各服务器的响应时间;从所述硬件层面对所述服务器集群中的各服务器进行监控,包括:监控所述服务器集 群中各服务器的如下至少一项参数:CPU使用率、内存使用率和磁盘空间。7.—种服务的自动化部署装置,其特征在于,包括:监控模块,用于对服务器集群中的各服务器进行监控;处理模块,用于根据所述监控模块所产生的监控结果,确定是否将服务部署至所述服 务器集群中;以及发送模块,用于当所述处理模块确定要将所述服务部署至所述服务器集群中时,将所 述服务对应的应用程序发送至所述服务器集群,以部署所述服务。8.根据权利要求7所述的服务的自动化部署装置,其特征在于,所述处理模块,还用于 当根据所述监控结果,确定待部署的服务器,所述待部署的服务器用于部署所述服务,且所 述待部署的服务器为所述服务器集群中的至少部分的服务器;所述发送模块,用于将所述服务对应的应用程序发送至所述待部署的服务器。9.根据权利要求7或8所述的服务的自动化部署装置,其特征在于,所述处理模块,还用 于检测所述服务是否成功部署至所述服务器集群中。10.根据权利要求7或8所述的服务的自动化部署装置,其特征在于,所述监控模块,用 于从业务层面和硬件层面对所述服务器集群中的各服务器进行监控;其中,从所述业务层面对所述服务器集群中的各服务器进行监控,包括:监控所述服务 器集群中各服务器的响应时间;其中,从所述硬件层面对所述服务器集群中的各服务器进行监控,包括:监控所述服务 器集群中各服务器的如下至少一项参数:CPU使用率、内存使用率和磁盘空间。
【文档编号】G06F9/445GK106095483SQ201610378246
【公开日】2016年11月9日
【申请日】2016年5月31日
【发明人】赖全辉
【申请人】乐视控股(北京)有限公司, 乐视网信息技术(北京)股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1