首页 / 一种云平台的检测方法和检测平台

一种云平台的检测方法和检测平台有效专利 发明

技术领域

[0001] 本发明实施例涉及云平台领域,尤其涉及一种云平台的检测方法和检测平台。

相关背景技术

[0002] 随着互联网技术的不断发展,云平台由于其高效、便捷、可配置等优势,越来越受到企业的青睐。云平台提供了一个全新的互联网商业服务模型,即企业可以根据网络以按需、易扩展的方式租用所需的服务。为了保证云平台提供正常的服务器,需要对云平台进行检测。
[0003] 现有技术中,在云平台部署成功后,需要对云平台中每个物理服务器安装一个管理软件。管理软件用于检测该物理服务器上的虚拟机的运行状态信息,当云平台中物理服务器的数量较多时,测试人员需要登录多台物理服务器的管理软件分别查看每台物理服务器上虚拟机的运行状态。而且,对于部署在虚拟机上的应用,需要测试人员手动测试要检测的应用,测试人员根据显示的结果来确定检测的应用的状态信息,比如应用的功能是否能实现。但是,由于现有技术中云平台部署和变更的频繁,部署在云平台上的应用在不断增减,通过人工测试,效率较低,跟不上日益增长的测试需求。

具体实施方式

[0021] 为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0022] 图1示出了应用本发明实施例的一种检测云平台的系统架构示意图。如图1所示,该系统包括云平台1和检测平台2。检测平台1与云平台2通过有线或无线的方式连接,检测平台用于检测云平台的状态信息,比如检测每个物理服务器的状态信息、物理服务器上部署的虚拟机的状态信息以及虚拟机上部署的应用的状态信息。
[0023] 云平台1包括物理服务器10、物理服务器20和物理服务器30;每个物理服务器上部署有多个虚拟机,虚拟机上可以部署应用、部署应用虚拟机上存储有相应应用需要访问的资源信息。在物理服务器10上部署有虚拟机101、虚拟机102和虚拟机103;在物理服务器20上部署有虚拟机201、虚拟机202和虚拟机203;在物理服务器30上部署有虚拟机301、虚拟机302和虚拟机303。物理服务器10、20和30之间可通过无线或有线的方式进行连接。虚拟机之间也可以根据需要进行通信,图1中虚拟机203和虚拟机301之间进行连通。本发明实施例中,虚拟机可以作为不同的功能使用,比如可以作为应用的服务器、交换机或者路由器等。
交换机和路由器中配置有相应的路由策略和交换策略。图1中虚拟机101作为交换机;虚拟机201作为路由器。
[0024] 检测平台2包括后端40和前端50;后端40可以单独部署到任一物理服务器上,也可以部署在物理服务器10、20或30中的任一个服务器上。图1以后端40部署在物理服务器30上为例;前端50可为显示器,可以实时的显示后端40检测云平台的状态信息。
[0025] 基于图1所示的系统架构,图2示例性示出了本发明实施例提供的一种云平台的检测方法的方法流程示意图,如图2所示,该云平台的检测方法包括以下步骤:
[0026] 步骤2001,检测平台在接收到检测指令时,根据检测指令确定待测内容以及待测内容对应的执行逻辑;
[0027] 步骤2002,检测平台根据待测内容从云平台的配置信息中确定待测内容对应的配置信息;
[0028] 步骤2003,检测平台根据待测内容对应的配置信息和待测内容对应的执行逻辑检测待测内容,得到检测结果。
[0029] 由于本发明实施例中,检测平台的测试方式为浏览器/服务器(Browser/Server,简称B/S)模式,因此,可以通过部署在一个物理服务器上的检测平台来实现检测整个云平台,不需要对每个物服务器都部署检测平台,如此,可方便测试人员的检测,且可以全局了解整个云平台上虚拟机的状态信息。
[0030] 进一步,本发明实施例中,当检测平台在接收到检测指令时,根据检测指令确定待测内容以及待测内容对应的执行逻辑;检测平台根据待测内容从所述云平台的配置信息中确定出待测内容对应的配置信息;之后,检测平台根据待测内容对应的配置信息和待测内容对应的执行逻辑检测待测内容,由于本发明实施例中检测平台可以通过待测内容对应的执行逻辑来检测所述待测内容,因此,可以实现检测平台自动检测待测内容,不需要测试人员人工检测,可提高云平台检测的效率。
[0031] 需要说明的是,在步骤2001中,检测指令可以是测试人员输入的,也可以是根据需求预先设置在检测平台的,比如预先设置为每隔预设周期检测一次,或者定时检测。检测指令需要满足固定的格式,检测平台在接收到满足固定格式的指令后,可以根据固定格式的指令确定出待测内容以及待测内容对应的执行逻辑。
[0032] 本发明实施例中,所述检测平台根据所述待测内容对应的配置信息和所述待测内容对应的执行逻辑检测所述待测内容,得到检测结果,包括:所述检测平台将所述待测内容对应的执行逻辑生成相应的脚本信息;所述检测平台运行所述脚本信息,得到检测结果。可选地,可以生成Java脚本信息、shell脚本或python脚本信息等。
[0033] 本发明实施例中,用于云平台检测的检测平台采用的检测方式为B/S模式,分为全球广域网(World Wide Web,简称Web)接口端和服务器端。Web接口端采用tomcat为其Web容器,Web页面基于Extjs、模型-视图-控制器(Model View Controller,简称MVC)框架实现了数据的绑定。服务器端基于Java语言、shell脚本、python脚本实现云平台的检测。可选地,Web接口端和服务器端之间通过表述状态转移(Representational State Transfer,简称REST)应用程序编程接口(Application Programming Interface,简称API)进行交互,进而实现了前端和后端的分离。
[0034] 本发明实施例中,检测平台在接收到检测指令之前,还包括检测平台获取云平台的配置信息;所述云平台的配置信息包括物理服务器的数量,物理机之间的网络映射关系、物理服务器上部署的虚拟机的数量,虚拟机的名称、浮动网络协议(Internet Protocol,简称IP)地址、私有IP地址、存储空间大小、密钥对、功能(存储机、交换机、路由器、应用服务器等)以及电量等,虚拟机之间的映射关系,虚拟机与应用之间的映射关系等。
[0035] 在步骤2001中,待测内容包括待测虚拟机的状态信息,待测应用的状态信息。其中,虚拟机的状态信息包括虚拟机处于开机、关机状态;虚拟机的剩余内存;虚拟机的中央处理器(Central Processing Unit,简称CPU)占用率;虚拟机之间的网络拓扑信息,比如待测虚拟机和其他哪些虚拟机之间通过网络连接,和哪些虚拟机之间不可以连接;如果虚拟机为路由器或者交换机,可以检测路由器和交换机的访问策略、子网的隔离和分组是否和云平台的配置信息一致。应用的状态信息包括应用的每个功能能否正常运行。
[0036] 本发明实施例中,所述云平台包括部署在物理服务器上的多个虚拟机,所述配置信息包括虚拟机之间的映射关系;所述待测内容包括待测虚拟机的状态信息,其中,所述待测虚拟机为所述虚拟机中的任一个;所述检测平台根据所述待测内容对应的配置信息和所述待测内容对应的执行逻辑检测所述待测内容,得到检测结果,包括:所述检测平台根据所述待测虚拟机和所述虚拟机之间的映射关系,确定所述待测虚拟机对应的目标拓扑信息;所述检测平台根据所述待测虚拟机对应的目标拓扑信息和所述待测虚拟机的执行逻辑检测所述待测虚拟机,得到所述待测虚拟机的状态信息的检测结果。
[0037] 本发明实施例中,当检测平台接收到的检测指令为检测虚拟机1(虚拟机1为待测虚拟机)的状态信息时,检测平台根据配置信息中虚拟机之间的映射关系,确定所述待测虚拟机1对应的目标拓扑信息,根据所述目标拓扑信息,检测平台根据待测虚拟机的执行逻辑检测待测虚拟机。
[0038] 本发明实施例中,检测平台可以预先存储有检测待测虚拟机的执行逻辑,比如:
[0039] 步骤3010,检测平台确定待测虚拟机1是否处于开机状态;若待测虚拟机处于开机状态,执行步骤3020;若待测虚拟机处于关机状态,执行步骤3050;
[0040] 可选地,检测平台可通过登录待测虚拟机1确定虚拟机1是否处于开机状态;
[0041] 步骤3020,检测平台检测待测虚拟机的CPU占用率;若待测虚拟机的CPU的占用率高于占用率阈值时,执行步骤3050;
[0042] 步骤3030,检测平台检测待测虚拟机1的剩余内存;若待测虚拟机1的剩余内存小于内存阈值时,执行步骤3050;
[0043] 步骤3040,检测平台检测待测虚拟机的连网状态;
[0044] 可选地,检测平台检测待测虚拟机的连网状态可以是尝试连接目标拓扑信息中其他虚拟机,若能连接成功,则说明待测虚拟机与被连接的虚拟机之间的网络正常,否则说明网络异常;同时还可以确定出其他虚拟机是否处于正常运行状态;
[0045] 步骤3050,触发告警;
[0046] 可选地可以通过短信或者邮件的方式及时通知运维人员,便于及时维修云平台。
[0047] 本发明实施例中,检测平台在检测整个运平台上的虚拟机的状态信息之后,可以生成一个告警汇总表,在所述检测平台的前端进行展示,告警汇总表中包括虚拟机的IP地址、告警事件等信息,便于测试人员及时了解云平台上虚拟机的当前状态信息。
[0048] 本发明实施例中,得到所述待测虚拟机的状态信息的检测结果可以在检测平台的前端进行显示,可以用不同的颜色表示出哪些虚拟机是正常的,哪些虚拟机是不正常的,虚拟机之间的哪些网络是连通的哪些网络是不连通的,可以对云平台上部署的虚拟机进行全面的检测,而且对云平台上虚拟机有一个全局的了解。
[0049] 本发明实施例中,所述云平台包括部署在物理服务器上的多个虚拟机以及所述虚拟机上部署的多个应用,所述配置信息包括虚拟机与应用之间的映射关系;所述待测内容包括待测应用的状态信息,其中,所述待测应用为所述应用中的任一个;所述检测平台根据所述待测内容对应的配置信息和所述待测内容对应的执行逻辑检测所述待测内容,得到检测结果,包括:所述检测平台根据所述虚拟机与应用之间的映射关系确定所述待测应用对应的虚拟机;所述检测平台从所述待测应用对应的虚拟机获取所述待测应用对应资源信息,并根据所述待测应用对应的资源信息以及所述待测应用对应的执行逻辑检测所述待测应用,得所述待测应用的状态信息的检测结果。
[0050] 本发明实施例中,当检测平台接收到的检测指令为检测应用A的状态信息时,检测平台根据配置信息中虚拟机与应用之间的映射关系确定应用A的虚拟机,之后检测平台访问应用A对应的虚拟机,该虚拟机上存储有应用A的全部资源信息,检测平台在访问应用A对应的虚拟机时,虚拟机会反馈相应的资源信息,检测平台根据反馈的资源信息和应用A对应的执行逻辑检测应用A,得到所述应用A的状态信息的检测结果。
[0051] 为了便于方案的理解,本发明实施例中,以检测微博的状态信息为例说明。微博对应的执行逻辑为:
[0052] 步骤4010,登录微博,账号XXX,密码xxxxxx;
[0053] 步骤4020,发布内容,内容*****;
[0054] 步骤4030,注销登录。
[0055] 当检测平台接收到检测微博的指令后,根据配置信息中虚拟机与应用的映射关系,确定微博对应的虚拟机。获得访问微博的地址,根据微博的访问地址访问微博对应的虚拟机;之后微博对应的虚拟机反馈登录微博的资源信息,检测平台在接收到登录微博的资源信息后,检测平台确定执行微博的执行逻辑步骤4010,将账号和密码自动输入;向微博对应的虚拟机发送;微博对应的虚拟机在验证账号和密码正确时,向微博对应的虚拟机反馈登录成功后的资源信息,检测平台根据微博的执行逻辑步骤4020,将发布内容的内容“******”自动输入,向微博对应的虚拟机发送,微博对应的虚拟机进行内容发布,之后微博服务器在确定发布成功后,检测平台根据微博执行逻辑指令步骤4030注销登录,微博对应的虚拟机对登录的微博进行注销,将注销的结果发送至检测平台。若检测平台在检测过程中发现微博的某个功能不能正常使用时,可以在前端进行相应的显示,同时也可以告警,便于运维人员及时处理。
[0056] 本发明实施例中,可以实时或者定时检测整个云平台的状态信息,可以预先存储有检测整个云平台的执行逻辑,云平台可以将检测结果展示在前端进行显示。
[0057] 从上述内容可以看出:本发明实施例中,由于本发明实施例中,检测平台的测试方式为B/S模式,因此,可以通过部署在一个物理服务器上的检测平台来实现检测整个云平台,不需要对每个物服务器都部署检测平台,如此,可方便测试人员的检测,且可以全局了解整个云平台上虚拟机的状态信息。
[0058] 进一步,本发明实施例中,当检测平台在接收到检测指令时,根据检测指令确定待测内容以及待测内容对应的执行逻辑;检测平台根据待测内容从所述云平台的配置信息中确定出待测内容对应的配置信息;之后,检测平台根据待测内容对应的配置信息和待测内容对应的执行逻辑检测待测内容,由于本发明实施例中检测平台可以通过待测内容对应的执行逻辑来检测所述待测内容,因此,可以实现检测平台自动检测待测内容,不需要测试人员人工检测,可提高云平台检测的效率。
[0059] 基于相同的技术构思,本发明实施例还提供一种检测平台,该检测平台可执行上述方法实施例。图3为本发明实施例提供了一种检测平台的结构示意图,如图3所示,该检测平台3000包括确定单元3001和检测单元3002。其中:
[0060] 确定单元,用于在接收到检测指令时,根据所述检测指令确定待测内容以及所述待测内容对应的执行逻辑;根据所述待测内容从所述云平台的配置信息中确定所述待测内容对应的配置信息;检测单元,用于根据所述待测内容对应的配置信息和所述待测内容对应的执行逻辑检测所述待测内容,得到检测结果。
[0061] 可选地,云平台包括部署在物理服务器上的多个虚拟机,所述配置信息包括虚拟机之间的映射关系;所述待测内容包括待测虚拟机的状态信息,其中,所述待测虚拟机为所述虚拟机中的任一个;所述确定单元,用于:根据所述待测虚拟机和所述虚拟机之间的映射关系,确定所述待测虚拟机对应的目标拓扑信息;所述检测单元,用于:根据所述待测虚拟机对应的目标拓扑信息和所述待测虚拟机的执行逻辑检测所述待测虚拟机,得到所述待测虚拟机的状态信息的检测结果。
[0062] 可选地,所述云平台包括部署在物理服务器上的多个虚拟机以及所述虚拟机上部署的多个应用,所述配置信息包括虚拟机与应用之间的映射关系;所述待测内容包括待测应用的状态信息,其中,所述待测应用为所述应用中的任一个;所述确定单元,用于:根据所述虚拟机与应用之间的映射关系确定所述待测应用对应的虚拟机;所述检测单元,用于:从所述待测应用对应的虚拟机获取所述待测应用对应资源信息,并根据所述待测应用对应的资源信息以及所述待测应用对应的执行逻辑检测所述待测应用,得所述待测应用的状态信息的检测结果。
[0063] 可选地,所述检测单元,用于:将所述待测内容对应的执行逻辑生成相应的脚本信息;运行所述脚本信息,得到检测结果。
[0064] 本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行所述的方法。
[0065] 本发明实施例提供一种计算机设备,包括:存储器,用于存储程序指令;处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行所述的方法。
[0066] 从上述内容可以看出:本发明实施例中,由于本发明实施例中,检测平台的测试方式为B/S模式,因此,可以通过部署在一个物理服务器上的检测平台来实现检测整个云平台,不需要对每个物服务器都部署检测平台,如此,可方便测试人员的检测,且可以全局了解整个云平台上虚拟机的状态信息。
[0067] 进一步,本发明实施例中,当检测平台在接收到检测指令时,根据检测指令确定待测内容以及待测内容对应的执行逻辑;检测平台根据待测内容从所述云平台的配置信息中确定出待测内容对应的配置信息;之后,检测平台根据待测内容对应的配置信息和待测内容对应的执行逻辑检测待测内容,由于本发明实施例中检测平台可以通过待测内容对应的执行逻辑来检测所述待测内容,因此,可以实现检测平台自动检测待测内容,不需要测试人员人工检测,可提高云平台检测的效率。
[0068] 在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现、当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述指令可以存储在计算机存储介质中,或者从一个计算机存储介质向另一个计算机存储介质传输,例如,所述指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带、磁光盘(MO)等)、光介质(例如,CD、DVD、BD、HVD等)、或者半导体介质(例如ROM、EPROM、EEPROM、非易失性存储器(NAND FLASH)、固态硬盘(Solid State Disk,SSD))等。本领域内的技术人员应明白,本申请实施例可提供为方法、系统、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0069] 本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0070] 这些指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0071] 显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

当前第1页 第1页 第2页 第3页