掌桥专利:专业的专利平台
掌桥专利
首页

一种服务器管理方法和系统

文献发布时间:2023-06-19 11:26:00


一种服务器管理方法和系统

技术领域

本发明涉及信息技术领域,特别是涉及一种服务器管理方法和一种服务器管理系统。

背景技术

服务器是计算机的一种,服务器在网络中为包括PC机、智能手机、ATM等终端在内的客户机提供计算服务或者应用服务。目前,大部分的服务器都托管在互联网数据中心,对服务器的管理通常是以远程的形式完成,即,数据中心的运营方为服务器做好基础的远程管理配置后,服务器管理员以远程的形式,通过管理客户端上安装的服务器的KVM(键盘/显示器/鼠标KeyboardVideo Mouse)程序来管理/操作服务器。

通常来说,服务器的KVM程序是基于java开发的GUI(图形用户界面GraphicalUser Interface)客户端程序,因此,使用服务器的KVM程序对服务器进行管理,需要根据当前服务器的KVM程序所基于的JRE(JAVA运行时环境Java Runtime Environment)版本,在管理员侧的PC客户端安装Java运行时环境,才能运行服务器的KVM程序。

但是,由于各个服务器的GUI客户端开发时所基于的JRE版本可能并不相同,比如JRE6、JRE8、JRE11等等,而实际情况中,常常出现一台PC客户端需管理的多台服务器恰好需要不同JRE版本的KVM程序,比如:在一台PC客户端需要同时管理新服务器和旧服务器时,新服务器和旧服务器的KVM程序需要的JRE版本不同,而客户端的JRE版本切换操作繁琐,多版本JRE同时运行容易产生混乱,导致程序运行不正常。

发明内容

为了解决上述问题,本发明实施例提出了一种服务器管理方法和系统,旨在实现同时对多种服务器的便捷化管理。

本发明实施例提供了一种服务器管理方法,应用于计算机网络,所述计算机网络包括:服务器管理平台、多台服务器、远程管理客户端,所述方法包括:

目标远程管理客户端根据服务器管理员在Web网页中的第一操作,向所述服务器管理平台发送对目标服务器的控制请求,所述目标远程管理客户端为所述远程管理客户端中的任一远程管理客户端;

所述服务器管理平台根据所述控制请求,启动与所述目标服务器的KVM程序所需要的JRE版本相匹配的虚拟桌面环境;

所述服务器管理平台在所述虚拟桌面环境中启动所述目标服务器的KVM程序,并通过所述KVM程序建立与所述目标服务器之间的连接;

所述目标远程管理客户端根据服务器管理员在Web网页中的第二操作,向所述服务器管理平台发送对所述目标服务器的控制命令;

所述服务器管理平台根据所述控制命令,通过所述KVM程序管理所述目标服务器。

可选的,

所述服务器管理平台预先配置多个虚拟桌面环境,其中,所述多个虚拟桌面环境各自安装不同版本的JRE;

所述服务器管理平台预先安装需要管理的所述多台服务器的KVM程序。

可选的,

所述多台服务器的KVM程序安装在所述服务器管理平台的主机的共享文件目录下;

所述共享文件目录供多个安装不同版本JRE的虚拟桌面环境访问,以使所述服务器管理平台通过与所述目标服务器的KVM程序所需要的JRE版本相匹配的虚拟桌面环境启动所述目标服务器对应的KVM程序。

可选的,所述服务器管理平台根据所述控制请求,启动与所述目标服务器的KVM程序所需要的JRE版本相匹配的虚拟桌面环境,包括:

所述服务器管理平台基于预先存储的对应关系,选择与所述目标服务器的KVM程序所需要的JRE版本相匹配的虚拟桌面环境;

通过虚拟化软件启动所述虚拟桌面环境。

可选的,所述服务器管理平台的主机数据库内预先存储所述多台服务器各自与KVM程序的对应关系,包括:服务器标识与KVM程序名的对应关系;所述KVM程序名携带对应的JRE版本信息,所述JRE版本信息映射对应的虚拟桌面环境;所述控制请求携带所述目标服务器的服务器标识;

所述服务器管理平台根据所述控制请求,启动与所述目标服务器的KVM程序所需要的JRE版本相匹配的虚拟桌面环境,包括:所述服务器管理平台基于所述服务器标识与所述KVM程序名的对应关系,根据所述控制请求携带的服务器标识,查询所述服务器标识对应的KVM程序名;所述服务器管理平台根据所述KVM程序名中携带的所述JRE版本信息,启动对应的虚拟桌面环境;

所述服务器管理平台在所述虚拟桌面环境中启动所述目标服务器的KVM程序,包括:所述服务器管理平台在所述虚拟桌面环境中启动所述KVM程序名对应的KVM程序。

可选的,所述服务器管理平台利用linux系统的Xwindow组件来配置所述虚拟桌面环境;

在所述服务器管理平台在所述虚拟桌面环境中启动所述目标服务器的KVM程序,并通过所述KVM程序连接所述目标服务器之后,还包括:

所述服务器管理平台使用Xwindow后台程序定期检测所述KVM程序的程序窗口的大小;

当检测到所述程序窗口的大小与虚拟桌面的大小不一致时,根据所述程序窗口的大小调节所述虚拟桌面的大小,使所述程序窗口始终铺满所述虚拟桌面。

可选的,所述服务器管理平台在所述虚拟桌面环境中启动所述目标服务器的KVM程序,并通过所述KVM程序建立与所述目标服务器之间的连接,包括:

所述服务器管理平台通过所述KVM程序连接所述目标服务器的BMC,建立与所述目标服务器之间的连接;

所述服务器管理平台根据所述控制命令,通过所述KVM程序管理所述目标服务器,包括:

所述服务器管理平台根据所述控制命令生成第二控制命令;

所述服务器管理平台通过所述KVM程序将所述第二控制命令发送至所述目标服务器的BMC;

所述目标服务器的BMC响应所述第二控制命令,执行对所述目标服务器的管理,实现所述目标远程管理客户端对目标服务器的管理。

本发明实施例还提供了一种服务器管理系统,应用于计算机网络,所述计算机网络包括:服务器管理平台、多台服务器、远程管理客户端,所述系统包括:

客户端请求模块,用于目标远程管理客户端根据服务器管理员在Web网页中的第一操作,向所述服务器管理平台发送对目标服务器的控制请求,所述目标远程管理客户端为所述远程管理客户端中的任一远程管理客户端;

桌面启动代理模块,用于所述服务器管理平台根据所述控制请求,启动与所述目标服务器的KVM程序所需要的JRE版本相匹配的虚拟桌面环境;

程序启动代理模块,用于所述服务器管理平台在所述虚拟桌面环境中启动所述目标服务器的KVM程序,并通过所述KVM程序建立与所述目标服务器之间的连接;

客户端控制模块,用于所述目标远程管理客户端根据服务器管理员在Web网页中的第二操作,向所述服务器管理平台发送对所述目标服务器的控制命令;

控制代理模块,用于所述服务器管理平台根据所述控制命令,通过所述KVM程序管理所述目标服务器。

可选的,所述系统还包括:

虚拟桌面环境配置模块,用于所述服务器管理平台预先配置多个虚拟桌面环境,其中,所述多个虚拟桌面环境各自安装不同版本的JRE;

KVM程序配置模块,用于所述服务器管理平台预先安装需要管理的所述多台服务器的KVM程序。

可选的,所述系统还包括:

KVM程序配置子模块,用于所述多台服务器的KVM程序安装在所述服务器管理平台的主机的共享文件目录下;

所述共享文件目录供多个安装不同版本JRE的虚拟桌面环境访问,以使所述服务器管理平台通过与所述目标服务器的KVM程序所需要的JRE版本相匹配的虚拟桌面环境启动所述目标服务器对应的KVM程序。

可选的,所述系统还包括:

虚拟桌面环境启动模块,用于所述服务器管理平台基于预先存储的对应关系,选择与所述目标服务器的KVM程序所需要的JRE版本相匹配的虚拟桌面环境;

通过虚拟化软件启动所述虚拟桌面环境。

可选的,所述系统还包括:

对应关系存储模块,所述服务器管理平台的主机数据库内预先存储所述多台服务器各自与KVM程序的对应关系,包括:服务器标识与KVM程序名的对应关系;所述KVM程序名携带对应的JRE版本信息,所述JRE版本信息映射对应的虚拟桌面环境;

所述控制请求携带所述目标服务器的服务器标识;

所述服务器管理平台根据所述控制请求,启动与所述目标服务器的KVM程序所需要的JRE版本相匹配的虚拟桌面环境,包括:

KVM程序名查询模块,用于所述服务器管理平台基于所述服务器标识与所述KVM程序名的对应关系,根据所述控制请求携带的服务器标识,查询所述服务器标识对应的KVM程序名;

虚拟桌面环境启动子模块,用于所述服务器管理平台根据所述KVM程序名中携带的所述JRE版本信息,启动对应的虚拟桌面环境;

所述服务器管理平台在所述虚拟桌面环境中启动所述目标服务器的KVM程序,包括:

KVM程序启动子模块,用于所述服务器管理平台在所述虚拟桌面环境中启动所述KVM程序名对应的KVM程序。

可选的,所述系统还包括:

所述服务器管理平台利用linux系统的Xwindow组件来配置所述虚拟桌面环境;

在所述服务器管理平台在所述虚拟桌面环境中启动所述目标服务器的KVM程序,并通过所述KVM程序连接所述目标服务器之后,还包括:

窗口检测模块,用于所述服务器管理平台使用Xwindow后台程序定期检测所述KVM程序的程序窗口的大小;

桌面调节模块,用于当检测到所述程序窗口的大小与虚拟桌面的大小不一致时,根据所述程序窗口的大小调节所述虚拟桌面的大小,使所述程序窗口始终铺满所述虚拟桌面。

可选的,所述系统还包括:

所述服务器管理平台在所述虚拟桌面环境中启动所述目标服务器的KVM程序,并通过所述KVM程序建立与所述目标服务器之间的连接,包括:

连接建立模块,用于所述服务器管理平台通过所述KVM程序连接所述目标服务器的BMC,建立与所述目标服务器之间的连接;

所述服务器管理平台根据所述控制命令,通过所述KVM程序管理所述目标服务器,包括:

第二控制命令生成模块,用于所述服务器管理平台根据所述控制命令生成第二控制命令;

连接建立子模块,用于所述服务器管理平台通过所述KVM程序将所述第二控制命令发送至所述目标服务器的BMC;

控制代理子模块,用于所述目标服务器的BMC响应所述第二控制命令,执行对所述目标服务器的管理,实现所述目标远程管理客户端对目标服务器的管理。

从上述技术方案可以看出,本发明实施例提供了一种服务器管理方法和系统,本发明实施例由服务器管理平台提供需要管理的服务器的KVM程序和安装有多种JRE版本的桌面虚拟环境,则远程管理客户端以web网页的形式获得服务器管理平台提供的程序管理页面,无须安装JRE和KVM程序,通过服务器管理平台则可对多种目标服务器进行管理,一方面避免了现有技术中客户端管理KVM程序基于各种JRE版本的多种目标服务器时的繁冗操作和程序混乱,另一方面也使服务器的远程管理客户端不再局限于PC,可以扩展到各类移动终端。

附图说明

图1是相关技术中的服务器远程管理的计算机网络的环境示意图;

图2是本发明实施例提供的一种服务器远程管理的计算机网络的环境示意图;

图3是本发明实施例提供的一种服务器管理方法的步骤流程图;

图4是本发明实施例提供的一种服务器管理系统的结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

参照图1,图1是相关技术中服务器远程管理的示意图。如图1所示,服务器的管理员一般都是以远程的形式,利用PC客户端对数据中心内的服务器进行管理。具体地,技术人员会预先在PC客户端安装服务器的KVM客户端程序,则服务器管理员在PC客户端的KVM客户端程序内进行操作,对服务器的BMC(基板管理控制器Baseboard Manager Controller)提供的虚拟KVM程序进行控制,即,利用模拟的键盘/显示器/鼠标,实现对服务器的管理,包括软件的安装、服务器的设置和配置、用户和数据库的管理、任务的维护等等。

如图1所示,在实际的应用场景中,同一台PC客户端常常需要同时管理多台服务器,假设服务器A的KVM程序基于JRE6开发,则要求用于管理的PC客户端除了需要安装该基于JRE6开发KVM客户端程序,还需要安装JRE6,才能运行KVM客户端程序;假设服务器B的KVM程序基于JRE8开发,则要求用于管理的PC客户端除了需要安装该基于JRE8开发的KVM客户端程序,还需要安装JRE8,才能运行KVM客户端程序。该PC客户端需要对服务器A和服务器B进行管理,则需要同时安装JRE6和JRE8,而PC环境下的JRE版本切换操作繁琐,多版本JRE同时运行容易又产生混乱,导致程序运行不正常。

此外,由于目前的移动终端基于安卓、IOS等系统,均无法安装JRE和KVM客户端程序,服务器管理仍然只能在PC环境下完成,进一步限制了服务器管理的轻便性,不利于对服务器的便捷化管理。

基于对上述问题的分析,本发明实施例提供一种服务器管理方法和系统,能够避免服务器管理中客户端的JRE多版本运行混乱,导致程序运行错误的问题,以及,可以利用移动终端对服务器进行远程管理,使服务器管理的客户端不再局限于PC环境。

此外,本发明实施例所述的服务器的KVM程序,特指服务器的KVM客户端程序,与服务器的BMC提供的虚拟KVM程序并不能直接等同。

下面将参考附图并结合实施例来详细说明本发明。

参照图2,图2是本发明实施例提供的一种计算机网络的环境示意图。如图2所示,本发明实施例提供的方法应用于计算机网络,所述计算机网络包括:服务器管理平台、多台服务器、远程管理客户端。

在本实施例中,计算机网络中包含的服务器管理平台,也即,多台服务器共同的代理服务器。服务器管理平台可以是多台主机组成的服务器集群,还可以根据服务器管理平台管理的服务器数量,即,根据管理负载的压力部署相应的主机数量。

远程管理客户端可以是PC,也可以是移动终端,比如手机、平板电脑等。

在本实施例中,所述服务器管理平台分别与多台服务器、远程管理客户端处于同一计算机网络下,且能够分别与所述多台服务器、所述远程管理客户端建立可信的网络连接。

可选地,所述服务器管理平台位于多台服务器所在的数据中心内,能够便于与所述多台服务器建立可信的网络连接。

参照图3,图3是本发明实施例提供的一种服务器管理方法的步骤流程图。如图3所示,所述方法具体包括如下步骤:

S31,目标远程管理客户端根据服务器管理员在Web网页中的第一操作,向所述服务器管理平台发送对目标服务器的控制请求,所述目标远程管理客户端为所述远程管理客户端中的任一远程管理客户端。

其中,目标服务器是服务器管理员想要通过目标远程管理客户端进行管理的服务器,服务器管理员可以通过目标远程管理客户端在Web网页中对目标服务器进行点选。

所述第一操作可以是服务器管理员在Web网页中对发出控制请求的功能按钮的点击、滑动等操作。示例性地,服务器管理员可以点击目标服务器对应的“开始控制”功能按钮,则目标远程管理客户端的浏览器生成控制请求,并发送至目标服务器。

其中,所述Web网页是服务器管理平台向远程管理客户端提供的功能网页。具体地,服务器管理员可以利用目标远程管理客户端的本地浏览器或者是带有网页浏览功能的应用程序,链接并打开所述Web网页。

所述Web网页可以是HTML5网页、FLASH网页,相应地,所述控制请求可以是HTML5请求、FLASH请求。

在一种实施方式中,服务器管理平台可以对使用远程管理客户端的服务器管理员的身份、权限进行管理。具体地,可以包括:

目标远程管理客户端可以通过服务器管理平台对应的提供的服务器管理员登陆页面,输入管理员账号和密码,进行管理员身份认证,完成登陆;

服务器管理平台根据管理员身份对应的权限,提供相应的服务器管理服务。

其中,所述服务器管理服务包括:将使用目标远程管理客户端的服务器管理员有权管理的服务器,聚合提供给该目标远程管理客户端。示例性地,服务器管理员通过目标远程管理客户端在服务器管理平台中完成登陆之后,可以点击“我的服务器”,则“我的服务器”页面聚合显示该服务器管理员有权限管理的所有服务器。

进一步地,服务器管理平台可以根据服务器标识的首字母,对服务器管理员有权限管理的服务器进行排序。

进一步地,服务器管理平台还可以提供检索功能,使管理员能够从有权限管理的所有服务器中搜索想要管理的目标服务器。示例性地,在当前服务器管理员账号拥有数百台服务器的管理权限时,服务器管理员想要对其中一台服务器进行管理,可以在目标远程管理客户端上显示的“我的服务器”Web页面中搜索目标服务器的服务器标识,比如,服务器的名称或唯一标识ID,得到该想要管理的目标服务器信息,点击该目标服务器的控制请求功能按钮即可。

S32,所述服务器管理平台根据所述控制请求,启动与所述目标服务器的KVM程序所需要的JRE版本相匹配的虚拟桌面环境。

在本实施例中,服务器管理平台配置的任一虚拟桌面环境均各自安装一个版本的JRE,且一一对应。

具体地,当服务器管理平台收到控制请求后,可以对控制请求携带的信息进行解析,并根据解析的信息,基于虚拟化技术,启动对应的虚拟桌面环境。示例性地,当控制请求自身携带的信息包括目标服务器对应的KVM程序所需要的JRE版本号时,则可以直接根据JRE版本号启动对应的虚拟桌面环境。

在一种可选的实施方式中,通过服务器管理平台对服务器进行管理,需要对代理服务器进行预先配置,具体包括:

所述服务器管理平台预先配置多个虚拟桌面环境,其中,所述多个虚拟桌面环境各自安装不同版本的JRE;

所述服务器管理平台预先安装需要管理的所述多台服务器的KVM程序。

可选地,所述JRE可以包括:JRE6、JRE7、JRE8、JRE11等。

S33,所述服务器管理平台在所述虚拟桌面环境中启动所述目标服务器的KVM程序,并通过所述KVM程序建立与所述目标服务器之间的连接。

具体地,为了进一步降低服务器管理平台的数据库压力,在一种可选的实施方式中,本发明还提供了一种配置KVM程序的方法,具体包括如下步骤:

所述多台服务器的KVM程序安装在所述服务器管理平台的主机的共享文件目录下;

所述共享文件目录供多个安装不同版本JRE的虚拟桌面环境访问,以使所述服务器管理平台通过与所述目标服务器的KVM程序所需要的JRE版本相匹配的虚拟桌面环境启动所述目标服务器对应的KVM程序。

相应地,当服务器管理平台启动虚拟桌面环境后,则可进一步在该虚拟桌面环境中访问安装目标服务器的KVM程序的共享文件目录,并启动目标服务器的KVM程序。

通过本实施例,将KVM程序安装在共享文件目录,共享文件目录供各个虚拟桌面环境访问,则KVM程序能被任一虚拟桌面环境访问。示例性地,若某一KVM程序在开发时基于高版本的JRE开发,如JRE11,且提供了向下兼容低版本的JRE的能力,如JRE6、JRE8等,则安装JRE6、JRE8、JRE11的任一虚拟桌面环境均能启动该KVM程序。

S34,所述目标远程管理客户端根据服务器管理员在Web网页中的第二操作,向所述服务器管理平台发送对所述目标服务器的控制命令。

具体地,所述第二操作是服务器管理员通过Web网页在KVM程序窗口页面中对发出控制命令的功能按钮的点击、滑动等操作;所述控制命令可以是HTML5命令、FLASH命令。

在本实施例中,服务器管理平台在接收目标服务器的控制请求之后,在启动虚拟桌面环境和KVM程序,即可同时接收目标服务器的控制命令。服务器管理平台通过KVM程序与目标服务器建立连接之后,将KVM程序窗口页面远程显示到目标远程管理客户端的Web页面中,并根据用户通过Web页面在KVM程序窗口页面中的第二操作生成的控制命令,管理目标服务器。

其中,服务器管理平台可以通过服务器管理平台本地的VNC客户端,将虚拟桌面环境提供的桌面窗口,以网页的形式远程提供给远程管理客户端。可选地,服务器管理平台可以通过VNC Server组件,将所述桌面环境基于RFB协议提供给noVNC组件,以供远程管理客户端通过Web形式访问所述虚拟桌面环境。所述noVNC组件可以使远程管理客户端直接使用本地浏览器通过web技术访问vnc服务器,进而访问所述虚拟桌面环境。

考虑到服务器管理平台在接收目标服务器的控制请求之后,启动虚拟桌面环境和KVM程序往往还需要消耗一定的时间,在此阶段中服务器管理员通过Web网页进行的第二操作向服务器管理平台发出控制命令,将暂时不会得到服务器管理平台的反馈。示例性地,可以呈现小圆圈转动等待的动画,或者呈现提醒用户等待响应的文字。

S35,所述服务器管理平台根据所述控制命令,通过所述KVM程序管理所述目标服务器。

由于目标远程管理客户端发送的控制命令是Web命令,不能直接对目标服务器进行管理,因此,服务器管理平台可以根据目标远程管理客户端发送的控制命令,生成程序命令并发送至目标服务器,来管理目标服务器。

在本实施例中,在管理员使用目标远程管理客户端认证成功后,还可以同时对有权限管理的多台服务器进行管理,服务器管理平台可以同时启动至少一个虚拟桌面环境,对应提供多个Web页面以分别提供的该多台服务器对应的多个KVM程序窗口页面。

在一种可选的实施方式中,本发明实施例还提供了一种通过服务器管理平台管理目标服务器的方法,所述方法具体包括如下步骤:

所述服务器管理平台在所述虚拟桌面环境中启动所述目标服务器的KVM程序,并通过所述KVM程序建立与所述目标服务器之间的连接,包括:

所述服务器管理平台通过所述KVM程序连接所述目标服务器的BMC,建立与所述目标服务器之间的连接;

所述服务器管理平台根据所述控制命令,通过所述KVM程序管理所述目标服务器,包括:

所述服务器管理平台根据所述控制命令生成第二控制命令;

所述服务器管理平台通过所述KVM程序将所述第二控制命令发送至所述目标服务器的BMC;

所述目标服务器的BMC响应所述第二控制命令,执行对所述目标服务器的管理,实现所述目标远程管理客户端对目标服务器的管理。

其中,第二控制命令是KVM程序生成的程序控制命令,能够对目标服务器的BMC提供的虚拟KVM程序进行控制,进而控制目标服务器,完成目标远程管理客户端对目标服务器的管理。

通过上述实施例,本发明在现有的计算机网络中增加了服务器管理平台,由服务器管理平台作为对服务器进行管理的代理,安装多个虚拟桌面环境和KVM程序,则管理客户端仅需以网页的方式,通过服务器管理平台实现对目标服务器的管理,解决了相关技术中管理客户端管理多台服务器时容易出现JRE版本冲突、管理混乱的问题,也能够将管理客户端扩展为移动终端,实现服务器管理的便捷化。

为了使服务器管理平台能够根据控制请求选择与目标服务器对应的KVM程序和匹配的运行环境,在一种可选的实施方式中,本发明实施例还提供了一种启动虚拟桌面环境的方法,所述方法具体包括如下步骤:

所述服务器管理平台基于预先存储的对应关系,选择与所述目标服务器的KVM程序所需要的JRE版本相匹配的虚拟桌面环境;

通过虚拟化软件启动所述虚拟桌面环境。

进一步地,可以选用Qemu虚拟化软件,直接根据控制请求携带的信息,对匹配的虚拟桌面环境进行选择,所述Qemu虚拟化软件可以自行创建并启动虚拟机。

其中,所述预先存储的对应关系可以是服务器与虚拟桌面环境的对应关系,包括:服务器标识与虚拟桌面环境名的对应关系、服务器标识与KVM程序名的对应关系,则服务器管理平台直接根据服务器标识启动对应的虚拟桌面环境。

结合上述实施例,在一种可选的实施方式中,服务器管理平台预先存储的对应关系还可以包括:服务器与KVM程序的对应关系,服务器管理平台可以直接根据服务器与KVM程序的对应关系,在所述虚拟桌面环境中启动与服务器对应的KVM程序。

考虑到KVM程序可能存在对多版本JRE的兼容性,也即,一台服务器可能对应多个虚拟桌面环境。为减少服务器管理平台的主机数据库的存储和计算压力,在一种可选的实施方式中,本发明实施例还提供了一种启动虚拟桌面环境和KVM程序的方法,所述方法具体包括如下步骤:

所述服务器管理平台的主机数据库内预先存储所述多台服务器各自与KVM程序的对应关系,包括:服务器标识与KVM程序名的对应关系;所述KVM程序名携带对应的JRE版本信息,所述JRE版本信息映射对应的虚拟桌面环境;所述控制请求携带所述目标服务器的服务器标识;

所述服务器管理平台根据所述控制请求,启动与所述目标服务器的KVM程序所需要的JRE版本相匹配的虚拟桌面环境,包括:所述服务器管理平台基于所述服务器标识与所述KVM程序名的对应关系,根据所述控制请求携带的服务器标识,查询所述服务器标识对应的KVM程序名;所述服务器管理平台根据所述KVM程序名中携带的所述JRE版本信息,启动对应的虚拟桌面环境;

所述服务器管理平台在所述虚拟桌面环境中启动所述目标服务器的KVM程序,包括:所述服务器管理平台在所述虚拟桌面环境中启动所述KVM程序名对应的KVM程序。

由于服务器标识可以是服务器的唯一标识ID或服务器名称,难以直接从标识文本中识别出KVM程序需要的JRE版本,且服务器标识不便于修改。但KVM程序名与虚拟桌面环境名均可通过预先配置,使KVM程序名与虚拟桌面环境名包含JRE版本信息。则服务器管理平台仅通过服务器标识与KVM程序名的对应关系,即可从KVM程序名中提供的JRE版本信息启动对应的虚拟桌面环境,再基于KVM程序名启动对应的KVM程序。示例性地,某一KVM程序若同时支持JRE6、JRE8,则该KVM程序的KVM程序名可以为XXX JRE6 JRE8;多个虚拟桌面环境的虚拟桌面环境名可以为YYY JRE6、YYY JRE8、YYY JRE11……。

通过本实施例,直接由服务器标识对应的KVM程序名选择虚拟桌面环境和启动KVM程序,尽可能地减少了服务器管理平台的数据库存储压力和计算压力,减少了管理员管理服务器的启动响应时间,有效提高了虚拟桌面环境和KVM程序启动的效率。

为了进一步提高服务器管理员对服务器进行管理时的操作体验,在一种可选的实施方式中,本发明实施例还提供了一种调节虚拟桌面大小的方法,所述方法具体包括:

所述服务器管理平台利用linux系统的Xwindow组件来配置所述虚拟桌面环境;

在所述服务器管理平台在所述虚拟桌面环境中启动所述目标服务器的KVM程序,并通过所述KVM程序连接所述目标服务器之后,还包括:

所述服务器管理平台使用Xwindow后台程序定期检测所述KVM程序的程序窗口的大小;

当检测到所述程序窗口的大小与虚拟桌面的大小不一致时,根据所述程序窗口的大小调节所述虚拟桌面的大小,使所述程序窗口始终铺满所述虚拟桌面。

其中,所述虚拟桌面是服务器管理平台中的虚拟桌面环境提供的虚拟显示器主屏幕区域。

由于各类KVM程序的窗口大小可能不一致,且每一个KVM程序在使用的过程中窗口大小也可能发生变化,本实施例通过将虚拟桌面的大小始终与程序窗口的大小调节为一致,使显示给目标远程管理客户端的Web网页内的KVM程序窗口始终呈现全屏状态,提升用户体验。

通过上述实施例,本发明实现了以下有益效果:

(1)、本发明实施例提供的方法,通过提供服务器管理平台统一对数据中心内的服务器进行管理,则管理员可以使用远程管理客户端以网页的形式通过服务器管理平台管理服务器,则管理客户端无须安装JRE和KVM程序,避免了多版本JRE切换和同时运行产生的各种问题;

(2)、本发明实施例提供的方法,对远程管理客户端没有性能要求,且远程管理客户端不再局限于KVM程序对PC环境的要求,只要是可以实现网页浏览的移动终端均可以进行服务器的管理。

参照图4,图4是本发明实施例提供的一种服务器管理系统的结构框图。如图4所示,结合上述实施例,本发明实施例提供了一种服务器管理系统,所述系统包括:

客户端请求模块61,用于目标远程管理客户端根据服务器管理员在Web网页中的第一操作,向所述服务器管理平台发送对目标服务器的控制请求,所述目标远程管理客户端为所述远程管理客户端中的任一远程管理客户端;

桌面启动代理模块62,用于所述服务器管理平台根据所述控制请求,启动与所述目标服务器的KVM程序所需要的JRE版本相匹配的虚拟桌面环境;

程序启动代理模块63,用于所述服务器管理平台在所述虚拟桌面环境中启动所述目标服务器的KVM程序,并通过所述KVM程序建立与所述目标服务器之间的连接;

客户端控制模块64,用于所述目标远程管理客户端根据服务器管理员在Web网页中的第二操作,向所述服务器管理平台发送对所述目标服务器的控制命令;

控制代理模块65,用于所述服务器管理平台根据所述控制命令,通过所述KVM程序管理所述目标服务器。

可选的,所述系统还包括:

虚拟桌面环境配置模块,用于所述服务器管理平台预先配置多个虚拟桌面环境,其中,所述多个虚拟桌面环境各自安装不同版本的JRE;

KVM程序配置模块,用于所述服务器管理平台预先安装需要管理的所述多台服务器的KVM程序。

可选的,所述系统还包括:

KVM程序配置子模块,用于所述多台服务器的KVM程序安装在所述服务器管理平台的主机的共享文件目录下;

所述共享文件目录供多个安装不同版本JRE的虚拟桌面环境访问,以使所述服务器管理平台通过与所述目标服务器的KVM程序所需要的JRE版本相匹配的虚拟桌面环境启动所述目标服务器对应的KVM程序。

可选的,所述系统还包括:

虚拟桌面环境启动模块,用于所述服务器管理平台基于预先存储的对应关系,选择与所述目标服务器的KVM程序所需要的JRE版本相匹配的虚拟桌面环境;

通过虚拟化软件启动所述虚拟桌面环境。

可选的,所述系统还包括:

对应关系存储模块,所述服务器管理平台的主机数据库内预先存储所述多台服务器各自与KVM程序的对应关系,包括:服务器标识与KVM程序名的对应关系;所述KVM程序名携带对应的JRE版本信息,所述JRE版本信息映射对应的虚拟桌面环境;

所述控制请求携带所述目标服务器的服务器标识;

所述服务器管理平台根据所述控制请求,启动与所述目标服务器的KVM程序所需要的JRE版本相匹配的虚拟桌面环境,包括:

KVM程序名查询模块,用于所述服务器管理平台基于所述服务器标识与所述KVM程序名的对应关系,根据所述控制请求携带的服务器标识,查询所述服务器标识对应的KVM程序名;

虚拟桌面环境启动子模块,用于所述服务器管理平台根据所述KVM程序名中携带的所述JRE版本信息,启动对应的虚拟桌面环境;

所述服务器管理平台在所述虚拟桌面环境中启动所述目标服务器的KVM程序,包括:

KVM程序启动子模块,用于所述服务器管理平台在所述虚拟桌面环境中启动所述KVM程序名对应的KVM程序。

可选的,所述系统还包括:

所述服务器管理平台利用linux系统的Xwindow组件来配置所述虚拟桌面环境;

在所述服务器管理平台在所述虚拟桌面环境中启动所述目标服务器的KVM程序,并通过所述KVM程序连接所述目标服务器之后,还包括:

窗口检测模块,用于所述服务器管理平台使用Xwindow后台程序定期检测所述KVM程序的程序窗口的大小;

桌面调节模块,用于当检测到所述程序窗口的大小与虚拟桌面的大小不一致时,根据所述程序窗口的大小调节所述虚拟桌面的大小,使所述程序窗口始终铺满所述虚拟桌面。

可选的,所述系统还包括:

所述服务器管理平台在所述虚拟桌面环境中启动所述目标服务器的KVM程序,并通过所述KVM程序建立与所述目标服务器之间的连接,包括:

连接建立模块,用于所述服务器管理平台通过所述KVM程序连接所述目标服务器的BMC,建立与所述目标服务器之间的连接;

所述服务器管理平台根据所述控制命令,通过所述KVM程序管理所述目标服务器,包括:

第二控制命令生成模块,用于所述服务器管理平台根据所述控制命令生成第二控制命令;

连接建立子模块,用于所述服务器管理平台通过所述KVM程序将所述第二控制命令发送至所述目标服务器的BMC;

控制代理子模块,用于所述目标服务器的BMC响应所述第二控制命令,执行对所述目标服务器的管理,实现所述目标远程管理客户端对目标服务器的管理。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。

最后,还需要说明的是,在本实施例中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

以上对本发明所提供的一种服务器管理方法和系统,进行了详细介绍,本实施例中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

相关技术
  • 一种云服务器系统的管理方法及云服务器系统
  • 应用服务器管理系统、应用服务器管理方法、管理装置、应用服务器
技术分类

06120112920311