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

技术领域

本发明涉及网络技术领域,尤其涉及一种应急演练自动化实现方法、装置、设备和计算机可读存储介质。

背景技术

随着电信行业的发展,基础业务越来越多,对应的网络规模越来越庞大,网络设备上连接业务主机也越来越多。目前的主机基本都采用集群或者虚拟化的方式进行承载。为了提前发现集群架构或者虚拟化架构是否可以如设计之初承诺的主备用方式,即一旦其中一台主机宕机,剩余的设备可以立刻承载业务的初衷,及早发现系统隐患,降低业务退服风险是当前维护工作中急需拟待解决的问题。

但是,实际情况是维护人员不够,日常时间被很多其它事务占满,没有足够的时间精力去对这项工作进行验证并发现隐患,导致这项工作拖拉导致日常风险不断加大。而且,目前还无法形成一个完整的自动化实现的应急演练闭环流程。

发明内容

本发明实施例提供了一种应急演练自动化实现方法、装置、设备和计算机可读存储介质,能够使业务自动化测试成为实际,提高测试效率,降低测试成本。

第一方面,本发明实施例提供一种应急演练自动化实现方法,该方法包括:获取应急演练目标任务;连接应急演练目标任务对应的网络设备,其中,网络设备包括至少两个网络端口,至少两个网络端口中每一个网络端口具有一个业务应用地址;根据网络设备的预设网络端口测试顺序确定当前网络设备的待关闭的网络端口;关闭待关闭的网络端口,以及对关闭后的网络端口对应的业务进行业务拨测。

在第一方面的一些可实现方式中,获取应急演练目标任务,包括:获取至少一个应急演练任务,每个应急演练任务包括执行应急演练任务的时间;确定与当前时间一致的时间对应的应急演练任务为应急演练目标任务。

在第一方面的一些可实现方式中,应急演练目标任务包括网络设备的地址;连接应急演练目标任务对应的网络设备,包括:利用安全外壳协议(Secure Shell,SSH)与网络设备的地址,连接网络设备。

在第一方面的一些可实现方式中,关闭待关闭的网络端口,包括:根据预先设置的操作指令关闭待关闭的网络端口。

在第一方面的一些可实现方式中,对关闭后的网络端口对应的业务进行业务拨测,包括:根据关闭后的网络端口对应的业务的预设拨测关键字,对关闭后的网络端口对应的业务进行业务拨测。

在第一方面的一些可实现方式中,在根据网络设备的预设网络端口测试顺序确定当前网络设备的待关闭的网络端口之前,该方法还包括:根据网络设备的网络端口,设置网络设备的预设网络端口测试顺序。

在第一方面的一些可实现方式中,在对关闭后的网络端口对应的业务进行业务拨测之后,该方法还包括:启动关闭后的网络端口,以及对启动后的网络端口对应的业务进行业务拨测。

在第一方面的一些可实现方式中,在启动关闭后的网络端口之前,该方法还包括:生成第一日志文件;在对启动后的网络端口对应的业务进行业务拨测之后,该方法还包括:生成第二日志文件。

第二方面,本发明实施例提供一种应急演练自动化实现装置,该装置包括:获取模块,用于获取应急演练目标任务;连接模块,用于连接应急演练目标任务对应的网络设备,其中,网络设备包括至少两个网络端口,至少两个网络端口中每一个网络端口具有一个业务应用地址;确定模块,用于根据网络设备的预设网络端口测试顺序确定当前网络设备的待关闭的网络端口;关闭模块,用于关闭待关闭的网络端口,以及对关闭后的网络端口对应的业务进行业务拨测。

在第二方面的一些可实现方式中,获取模块具体用于:获取至少一个应急演练任务,每个应急演练任务包括执行应急演练任务的时间;确定与当前时间一致的时间对应的应急演练任务为应急演练目标任务。

在第二方面的一些可实现方式中,应急演练目标任务包括网络设备的地址;连接模块具体用于:利用安全外壳协议SSH与网络设备的地址,连接网络设备。

在第二方面的一些可实现方式中,关闭模块具体用于:根据预先设置的操作指令关闭待关闭的网络端口。

在第二方面的一些可实现方式中,关闭模块具体用于:根据关闭后的网络端口对应的业务的预设拨测关键字,对关闭后的网络端口对应的业务进行业务拨测。

在第二方面的一些可实现方式中,该装置还包括:设置模块,用于在根据网络设备的预设网络端口测试顺序确定当前网络设备的待关闭的网络端口之前,根据网络设备的网络端口,设置网络设备的预设网络端口测试顺序。

在第二方面的一些可实现方式中,该装置还包括:启动模块,用于在对关闭后的网络端口对应的业务进行业务拨测之后,启动关闭后的网络端口,以及对启动后的网络端口对应的业务进行业务拨测。

在第二方面的一些可实现方式中,该装置还包括:生成模块,用于在启动关闭后的网络端口之前,生成第一日志文件;

生成模块还用于:在对启动后的网络端口对应的业务进行业务拨测之后,生成第二日志文件。

第三方面,本发明实施例提供一种应急演练自动化实现设备,该设备包括:处理器以及存储有计算机程序指令的存储器;处理器执行计算机程序指令时实现第一方面或者第一方面任一些可实现方式中所述的应急演练自动化实现方法。

第四方面,本发明实施例提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现第一方面或者第一方面任一些可实现方式中所述的应急演练自动化实现方法。

本发明实施例提供的一种应急演练自动化实现方法、装置、设备和计算机可读存储介质,通过应急演练目标任务自动执行的方式,根据网络设备的预设网络端口测试顺序,实现网络设备的网络端口关闭,模拟业务设备宕机,宕机后进行业务拨测,进而实现应急演练自动化的目的,不仅能够使业务自动化测试成为实际,提高测试效率,降低测试成本,还能够提前发现多套集群和虚拟化平台的隐患,为日后的优化提供依据。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种应急演练自动化实现系统的结构示意图;

图2是本发明实施例提供的一种应急演练自动化实现方法的流程示意图;

图3是本发明实施例提供的一种应急演练自动化实现装置的结构示意图;

图4是本发明实施例提供的一种应急演练自动化实现设备的结构示意图。

具体实施方式

下面将详细描述本发明的各个方面的特征和示例性实施例,为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本发明,并不被配置为限定本发明。对于本领域技术人员来说,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明更好的理解。

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

本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。

目前,维护中经历过较多重要系统在主节点宕机后,没有按照预期备用节点承载业务,导致重大投诉的情况发生。而且,在演练当中由于人员有限,演练设备操作内容多,导致无法实现人工演练多套设备,于是,往往是忙碌一天所得成效有限。

针对于此,本发明实施例提供了一种应急演练自动化实现方法、装置、设备和计算机可读存储介质,通过应急演练目标任务自动执行的方式,根据网络设备的预设网络端口测试顺序,实现网络设备的网络端口关闭,模拟业务设备宕机,宕机后进行业务拨测,进而实现应急演练自动化的目的,不仅能够使业务自动化测试成为实际,提高测试效率,降低测试成本,还能够提前发现多套集群和虚拟化平台的隐患,为日后的优化提供依据。

在本发明实施例中,应急演练自动化实现方法主要涉及协议接口、网络设备命令交互、网络设备、端口、业务应用地址的关联、设置应急演练任务、执行应急演练目标任务等。

可以理解,该方法可以应用于应急演练自动化实现系统,其中,应急演练自动化实现系统如图1所示,图1是本发明实施例提供的一种应急演练自动化实现系统的结构示意图。如图1所示,应急演练自动化实现系统可以包括功能模块1、功能模块2、功能模块3、功能模块4、功能模块5和功能模块6。

其中,功能模块1用于预先设置与网络设备的接口,具体地,可以预先建立应急演练平台调用网络设备的能力,应急演练平台可以通过调用安全外壳协议(Secure Shell,SSH)实现了与网络设备的连接。

功能模块2用于预先设置连接网络设备后执行的操作指令,具体地,可以预先设置网络设备在连接上网络设备后顺序执行的操作指令,如此一来,可以在连接上网络设备后自动根据预先设置的操作指令执行相应操作,实现自动化处理。其中,进行设置需要的信息有“网络设备管理地址、用户提示符、用户名、用户提示符、用户密码、网络登录模式、用户提示符、登录的网络端口、用户提示符、端口的启停命令”。这些信息设置完成后保存到数据库中,可选地,可以以数据库表的形式存储。

功能模块3用于预先设置网络设备、端口、业务应用地址的关联,具体地,可以预先建立网络设备、网络端口、网络端口下挂的业务应用地址之间的关联,其中,网络设备可以包括至少两个网络端口,至少两个网络端口中每一个网络端口具有一个业务应用地址。可知,一个业务应用地址对应一个业务,一个业务可以对应多个业务应用地址。也就是说网络设备可以通过网络端口上的业务应用地址连接用于同一业务的至少两个业务主机。同时,也可以预先设置网络设备的预设端口启动顺序,可选地,可以根据网络设备的网络端口,设置网络设备的预设网络端口测试顺序。此外,也可以预先设置网络端口对应的业务的预设拨测关键字。这些信息设置完成后保存到数据库中,可选地,可以以数据库表的形式存储。

功能模块4用于预先设置应急演练任务和执行应急演练目标任务,具体地,应急演练任务是可以自动执行的部分。本模块可以设置应急演练任务自动执行应急演练任务的时间。其中应急演练任务关联了功能模块1、2、3的逻辑。这里,应急演练任务可以不止一个,每个应急演练任务包括执行应急演练任务的时间,可以确定与当前时间一致的时间对应的应急演练任务为应急演练目标任务,然后执行该应急演练目标任务。

功能模块5用于业务拨测,具体地,业务拨测是在应急演练目标任务执行完成后,对业务是否正常进行的验证操作。

功能模块6用于输出日志信息数据,具体地,可以生成应急演练期间的日志文件并将其存储。其中,日志文件中的日志信息可以包括演练网络设备名称、网络管理地址、网络端口、主机IP、业务名称、业务功能名称、应急演练时间、任务名称、设备操作命令细节、业务负责人、演练责任人等信息。

下面结合附图对本发明实施例所提供的应急演练自动化实现方法进行介绍。

图2是本发明实施例提供的一种应急演练自动化实现方法的流程示意图。如图2所示,该应急演练自动化实现方法100可以包括S110至S140。

S110,获取应急演练目标任务。

具体地,可以获取至少一个应急演练任务,每个应急演练任务包括执行应急演练任务的时间,确定与当前时间一致的时间对应的应急演练任务为应急演练目标任务。即,确定与当前时间一致的执行应急演练任务的时间对应的应急演练任务为应急演练目标任务。

其中,应急演练任务可以预先设置,用于测试网络设备连接的至少两个业务主机能否在部分主机宕机期间,剩余的主机可以继续承载业务。其中,业务主机可以采用集群或者虚拟化的方式进行业务承载。

S120,连接应急演练目标任务对应的网络设备。

其中,应急演练目标任务可以包括网络设备的地址,网络设备的地址是指网络设备在网络中的网络地址,可以利用SSH与网络设备的地址,连接网络设备。其中,网络设备包括至少两个网络端口,至少两个网络端口中每一个网络端口具有一个业务应用地址,也就是说,一个网络端口可以对应一个用于承载业务的业务主机,即一个网络端口连接一个业务主机。

S130,根据网络设备的预设网络端口测试顺序确定当前网络设备的待关闭的网络端口。

其中,网络设备的预设网络端口测试顺序可以表示网络端口的测试顺序,可以预先设置。作为一个示例,可以在根据网络设备的预设网络端口测试顺序确定当前网络设备的待关闭的网络端口之前,根据网络设备的网络端口,设置网络设备的预设网络端口测试顺序。

作为一个具体的示例,预设网络端口测试顺序为A-B-C-D,则可以表示为,首先,测试(关闭)A端口,其次,测试(关闭)B端口,再次,测试(关闭)C端口,最后,测试(关闭)D端口。也就是说,当前网络设备的待关闭的网络端口为A端口。可以理解,测试(关闭)端口就是将端口与连接的业务主机断开连接,模拟业务主机宕机。

S140,关闭待关闭的网络端口,以及对关闭后的网络端口对应的业务进行业务拨测。

具体地,可以根据预先设置的操作指令关闭待关闭的网络端口,并根据关闭后的网络端口对应的业务的预设拨测关键字,对关闭后的网络端口对应的业务进行业务拨测,并可以返回测试状态(正常、异常)。也就是说,可以确定将端口与连接的业务主机断开连接后,其他剩余的主机是否可以继续承载业务。

本发明实施例的应急演练自动化实现方法,通过应急演练目标任务自动执行的方式,根据网络设备的预设网络端口测试顺序,实现网络设备的网络端口关闭,模拟业务设备宕机,宕机后进行业务拨测,进而实现应急演练自动化的目的,不仅能够使业务自动化测试成为实际,提高测试效率,降低测试成本,还能够提前发现多套集群和虚拟化平台的隐患,为日后的优化提供依据。

在一些实施例中,该应急演练自动化实现方法100在对关闭后的网络端口对应的业务进行业务拨测之后,还可以包括S150,启动关闭后的网络端口,以及对启动后的网络端口对应的业务进行业务拨测。具体地,根据启动后的网络端口对应的业务的预设拨测关键字,对启动后的网络端口对应的业务进行业务拨测,并可以返回测试状态(正常、异常)。具体过程与步骤S140类似,在此不做赘述。可以理解,重复步骤S130-S150,可以对网络设备的每个网络端口进行测试,如此一来,可以实现网络设备的网络端口启停,模拟业务设备宕机和恢复,宕机和恢复分别进行业务拨测,进而实现应急演练自动化的目的,使业务自动化测试成为实际,提高测试效率,降低测试成本。

在一些实施例中,在启动关闭后的网络端口之前,可以生成第一日志文件,并存储该第一日志文件。在对启动后的网络端口对应的业务进行业务拨测之后,可以生成第二日志文件,并存储该第二日志文件。日志文件可以用于应急演练完成后生成相关报告,为后续分析优化提供依据。

下面以某台网络设备1个网络端口的启停对应1个业务主机启停为例,对本发明实施例提供的应急演练自动化实现方法进行具体说明,即说明如何模拟真实场景下某业务设备宕机、恢复场景的具体流程。

具体说明如下:

步骤1、获取至少一个应急演练任务,每个应急演练任务包括执行应急演练任务的时间。

步骤2、确定与当前时间一致的时间对应的应急演练任务为应急演练目标任务,并执行该应急演练目标任务。

步骤3、利用SSH与网络设备的地址,连接网络设备。

步骤4、检查网络设备的预设网络端口测试顺序。

步骤5、根据网络设备的预设网络端口测试顺序确定当前网络设备的待关闭的网络端口。

步骤6、根据预先设置的操作指令关闭待关闭的网络端口,并根据关闭后的网络端口对应的业务的预设拨测关键字,对关闭后的网络端口对应的业务进行业务拨测,并返回测试结果(正常、异常)。

步骤7、记录日志到特定的日志文档中。

步骤8、启动关闭后的网络端口,根据启动后的网络端口对应的业务的预设拨测关键字,对启动后的网络端口对应的业务进行业务拨测,并可以返回测试状态(正常、异常)。

步骤9、记录日志到特定的日志文档中。

至此一个网络端口的启停模拟设备真实环境下某台业务设备宕机、恢复流程结束,重复步骤2-9这样的操作可以达到对所有网络设备所有网络端口的遍历测试。

图3是本发明实施例提供的一种应急演练自动化实现装置的结构示意图,如图3所示,该应急演练自动化实现装置200可以包括:获取模块210、连接模块220、确定模块230、关闭模块240。

其中,获取模块210用于获取应急演练目标任务。连接模块220用于连接应急演练目标任务对应的网络设备,其中,网络设备包括至少两个网络端口,至少两个网络端口中每一个网络端口具有一个业务应用地址。确定模块230用于根据网络设备的预设网络端口测试顺序确定当前网络设备的待关闭的网络端口。关闭模块240用于关闭待关闭的网络端口,以及对关闭后的网络端口对应的业务进行业务拨测。

在一些实施例中,获取模块210具体用于获取至少一个应急演练任务,每个应急演练任务包括执行应急演练任务的时间,确定与当前时间一致的时间对应的应急演练任务为应急演练目标任务。

在一些实施例中,应急演练目标任务包括网络设备的地址。连接模块220具体用于利用安全外壳协议SSH与网络设备的地址,连接网络设备。

在一些实施例中,关闭模块240具体用于根据预先设置的操作指令关闭待关闭的网络端口。

在一些实施例中,关闭模块240具体用于根据关闭后的网络端口对应的业务的预设拨测关键字,对关闭后的网络端口对应的业务进行业务拨测。

在一些实施例中,该装置200还包括:设置模块250,用于在根据网络设备的预设网络端口测试顺序确定当前网络设备的待关闭的网络端口之前,根据网络设备的网络端口,设置网络设备的预设网络端口测试顺序。

在一些实施例中,该装置200还包括:启动模块260,用于在对关闭后的网络端口对应的业务进行业务拨测之后,启动关闭后的网络端口,以及对启动后的网络端口对应的业务进行业务拨测。

在一些实施例中,该装置200还包括:生成模块270,用于在启动关闭后的网络端口之前,生成第一日志文件;

生成模块270还用于在对启动后的网络端口对应的业务进行业务拨测之后,生成第二日志文件。

本发明实施例的应急演练自动化实现装置,通过应急演练目标任务自动执行的方式,根据网络设备的预设网络端口测试顺序,实现网络设备的网络端口关闭,模拟业务设备宕机,宕机后进行业务拨测,进而实现应急演练自动化的目的,不仅能够使业务自动化测试成为实际,提高测试效率,降低测试成本,还能够提前发现多套集群和虚拟化平台的隐患,为日后的优化提供依据。

可以理解的是,本发明实施例的应急演练自动化实现装置200,可以对应于本发明实施例图2中的应急演练自动化实现方法的执行主体,应急演练自动化实现装置200的各个模块/单元的操作和/或功能的具体细节可以参见上述本发明实施例图2的应急演练自动化实现方法中的相应部分的描述,为了简洁,在此不再赘述。

图4是本发明实施例提供的一种应急演练自动化实现设备的硬件结构示意图。

如图4所示,本实施例中的应急演练自动化实现设备300包括输入设备301、输入接口302、中央处理器303、存储器304、输出接口305、以及输出设备306。其中,输入接口302、中央处理器303、存储器304、以及输出接口305通过总线310相互连接,输入设备301和输出设备306分别通过输入接口302和输出接口305与总线310连接,进而与应急演练自动化实现设备300的其他组件连接。

具体地,输入设备301接收来自外部的输入信息,并通过输入接口302将输入信息传送到中央处理器303;中央处理器303基于存储器304中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器304中,然后通过输出接口305将输出信息传送到输出设备306;输出设备306将输出信息输出到应急演练自动化实现设备300的外部供用户使用。

在一个实施例中,图4所示的应急演练自动化实现设备300包括:存储器304,用于存储程序;处理器303,用于运行存储器中存储的程序,以执行图2所示实施例提供的应急演练自动化实现方法。

本发明实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现图2所示实施例提供的应急演练自动化实现方法。

需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,做出各种改变、修改和添加,或者改变步骤之间的顺序。

以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、只读存储器(Read-Only Memory,ROM)、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(Radio Frequency,RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。

还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。

以上所述,仅为本发明的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。

相关技术
  • 应急演练自动化实现方法、装置、设备及介质
  • 应急模拟演练方案生成方法、装置、介质和计算机设备
技术分类

06120113079324