交换机调试方法和装置、服务器、计算机可读存储介质与流程

文档序号:28117979发布日期:2021-12-22 14:53阅读:233来源:国知局
交换机调试方法和装置、服务器、计算机可读存储介质与流程

1.本技术涉及服务器测试技术领域,特别是涉及一种交换机调试方法和装置、服务器、计算机可读存储介质。


背景技术:

2.刀片服务器是一种在标准高度的机架式机箱内可插装多个卡式的服务器单元的服务器,是一种可以实现hahd(high availability high density,高可用高密度)的低成本服务器平台。刀片服务器的机箱内一般包括多个刀片服务器单元及交换机,多个刀片服务器单元可以通过交换机与机箱外部的大型交换机进行通信。因此,刀片服务器机箱内的交换机,就构成了整个刀片服务器与外部设备进行网络通信的核心。一旦该交换机出现故障,则就会造成整个刀片服务器的通信故障。
3.传统方法,远程调试设备在对交换机进行远程调试时,是借助交换机与远程调试设备之间的业务网络进行远程调试。但是,若刀片服务器中的交换机出现网络故障,则交换机与远程调试设备之间的业务网络也随之瘫痪,因此,远程调试设备无法借助该业务网络进行远程调试。
4.此时,运维人员必须到机房现场去查找到故障交换机,然后将调试工具与故障交换机的物理串口进行连接,收集故障交换机的日志,从而对故障交换机进行调试。对于大规模的数据中心来说,包括大量的刀片服务器,刀片服务器中包括多个交换机。因此,在数据中心中的交换机出现故障时,通过人工确定故障交换机,然后再将调试工具与故障交换机的物理串口进行连接,都需要花费大量的时间精力。


技术实现要素:

5.本技术实施例提供了一种交换机调试方法和装置、服务器、计算机可读存储介质,实现了更加方便快捷地对故障交换机进行调试,进而大大节约了时间、降低了成本。
6.一种交换机调试方法,应用于服务器,所述服务器内置交换机及管理芯片,所述方法包括:
7.通过所述管理芯片从所述交换机中获取所述交换机的故障信息,将所述交换机的故障信息发送至测试终端;
8.控制所述测试终端基于所述交换机的故障信息生成调试指令,将所述调试指令发送至所述管理芯片;所述调试指令用于对所述交换机进行调试;
9.通过所述管理芯片将所述调试指令发送至所述交换机,控制所述交换机基于所述调试指令进行调试。
10.传统方法,在服务器内置的交换机出现网络故障无法与外部的测试终端进行通信时,测试终端便不能直接从交换机中获取到故障信息,进而对该交换机进行调试。因此,采用人工将调试工具与故障交换机的物理串口进行连接以实现交换机调试,显然,这个过程需要花费大量的时间精力。本技术所提供的交换机调试方法,在服务器内置的交换机出现
网络故障无法与外部的测试终端进行通信时,可以通过服务器内置的管理芯片,从该交换机中获取到该交换机的故障信息,再由该管理芯片将故障信息发送至测试终端。从而,测试终端就可以获取到的故障信息生成调试指令,将所述调试指令发送至所述管理芯片。通过所述管理芯片将所述调试指令发送至所述交换机,控制所述交换机基于所述调试指令进行调试。借助于服务器内的管理芯片作为中间桥梁,实现了测试终端与服务器内置交换机之间的网络连接。从而,实现了更加方便快捷地对故障交换机进行远程调试,进而大大节约了时间、降低了成本。
11.在其中一个实施例中,所述方法还包括:
12.预先在所述管理芯片及所述交换机之间建立串口通信连接;
13.所述通过所述管理芯片从所述交换机中获取所述交换机的故障信息,将所述交换机的故障信息发送至测试终端,包括:
14.通过所述管理芯片基于所述串口通信连接,从所述交换机中获取所述交换机的故障信息,将所述交换机的故障信息发送至测试终端。
15.本技术实施例中,在远程测试终端与服务器内置交换机之间的网络通信连接出现故障的情况下,借助于服务器内的管理芯片作为中间桥梁,实现了远程测试终端与服务器内置交换机之间的网络连接。具体是借助于管理芯片及所述交换机之间预先所建立的串口通信连接。从而,实现了对服务器中出现网络故障的交换机进行远程测试。不需要采用人工将调试工具与故障交换机的物理串口进行连接以实现交换机调试,因此,实现了更加方便快捷地对故障交换机进行调试,进而大大节约了时间、降低了成本。
16.在其中一个实施例中,所述通过所述管理芯片基于所述串口通信连接,从所述交换机中获取所述交换机的故障信息,将所述交换机的故障信息发送至测试终端,包括:
17.在所述管理芯片上运行预设串口驱动,通过所述预设串口驱动基于所述串口通信连接,从所述交换机中获取串口数据;所述串口数据用于表征所述交换机的故障信息;
18.通过所述管理芯片基于ipmi协议对所述串口数据进行格式转换生成与所述串口数据对应的网口数据;
19.通过所述管理芯片将所述网口数据发送至测试终端。
20.本技术实施例中,所述管理芯片及所述交换机之间预先建立了串口通信连接,且管理芯片通过所述预设串口驱动基于所述串口通信连接,从所述交换机中获取故障信息对应的串口数据。通过管理芯片可以基于ipmi协议将故障信息对应的网口数据转换为网口数据。再通过管理芯片就可以实现将故障信息对应的网口数据,发送至测试终端。如此,在远程测试终端与服务器内置交换机之间的网络通信连接出现故障的情况下,借助于服务器内的管理芯片作为中间桥梁,实现了远程测试终端与服务器内置交换机之间的网络连接。
21.在其中一个实施例中,所述通过所述管理芯片将所述网口数据发送至测试终端,包括:
22.通过所述管理芯片将所述网口数据发送至第一外部交换机;
23.通过所述第一外部交换机将所述网口数据发送至所述测试终端。
24.本技术实施例中,当测试终端对大量服务器所构成的大型数据中心或超级计算机集群进行远程测试时,每台服务器内置的管理芯片将所获取的故障信息对应的网口数据首先发送至外部交换机,然后,再由外部交换机进行转发至测试终端。如此,通过外部交换机
就可以实现同时对多台服务器中内置交换机进行远程测试。因此,大大提高了对构成的大型数据中心或超级计算机集群中内置交换机进行远程测试的效率。
25.在其中一个实施例中,所述控制所述测试终端基于所述交换机的故障信息生成调试指令,将所述调试指令发送至所述管理芯片,包括:
26.控制所述测试终端对所述交换机的故障信息进行解析生成解析结果,根据所述解析结果生成调试指令;
27.控制所述测试终端运行ipmitool工具,通过所述ipmitool工具将所述调试指令发送至所述管理芯片。
28.本技术实施例中,测试终端接收到了管理芯片发送的网口数据对应的数据包,该网口数据对应的数据包中包括了交换机的故障信息。因此,服务器控制测试终端对该网口数据对应的数据包进行解析,生成解析结果。基于解析结果可以确定具体的故障类型,再基于具体的故障类型从数据表中匹配对应的调试指令。在测试终端生成了调试指令之后,基于调试指令可以触发所述测试终端运行ipmitool工具。测试终端就可以通过所述ipmitool工具将所述调试指令发送至所述管理芯片。从而,实现了将调试指令发送至所述管理芯片,以便管理芯片在通过串口通信连接将调试指令发送至交换机。最终,在服务器内置的交换机出现网络故障无法与外部的测试终端进行通信时,实现了不通过测试终端与交换机之间的网络通信,实现了测试终端对交换机的远程测试。
29.在其中一个实施例中,所述通过ipmitool工具将所述调试指令发送至所述管理芯片,包括:
30.通过ipmitool工具将所述调试指令发送至第二外部交换机;
31.通过所述第二外部交换机将所述调试指令发送至所述管理芯片。
32.本技术实施例中,针对由大量服务器构成的大型数据中心或超级计算机集群,则均需要采用大型交换机来传输数据。因此,通过测试终端上运行的ipmitool工具,可以将测试指令发送至第二外部交换机中,再由第二外部交换机将调试指令发送至所述管理芯片,以便管理芯片在通过串口通信连接将调试指令发送至交换机。如此,通过外部交换机就可以实现同时对多台服务器中内置交换机进行远程测试。因此,大大提高了对构成的大型数据中心或超级计算机集群中内置交换机进行远程测试的效率。
33.在其中一个实施例中,所述通过所述管理芯片将所述调试指令发送至所述交换机,控制所述交换机基于所述调试指令进行调试,包括:
34.通过所述管理芯片基于ipmi协议对所述调试指令进行格式转换,生成与所述调试指令对应的串口数据;
35.在所述管理芯片上运行预设串口驱动,通过所述预设串口驱动基于所述串口通信连接,将所述调试指令对应的串口数据发送至所述交换机;
36.控制所述交换机基于所述调试指令对应的串口数据进行调试。
37.本技术实施例中,管理芯片将调试指令发送至交换机的过程,与管理芯片从交换机获取故障信息,将故障信息发送至测试终端的过程类似。管理芯片首先通过ipmi服务模块将包含调试指令对应的网口数据,转换为串口数据。然后,管理芯片可以通过所述预设串口驱动基于所述串口通信连接,向所述交换机发送调试指令对应的串口数据,就可以实现将调试指令对应的串口数据,发送至交换机。如此,在远程测试终端与服务器内置交换机之
间的网络通信连接出现故障的情况下,借助于服务器内的管理芯片作为中间桥梁,实现了将调试指令发送交换机,最终实现了远程测试终端将测试指令发送至交换机,实现了对服务器内交换机的远程调试。
38.一种交换机调试装置,应用于服务器,所述服务器内置交换机及管理芯片,所述装置包括:
39.故障信息获取模块,用于通过所述管理芯片从所述交换机中获取所述交换机的故障信息,将所述交换机的故障信息发送至测试终端;
40.调试指令生成模块,用于控制所述测试终端基于所述交换机的故障信息生成调试指令,将所述调试指令发送至所述管理芯片;所述调试指令用于对所述交换机进行调试;
41.调试模块,用于通过所述管理芯片将所述调试指令发送至所述交换机,控制所述交换机基于所述调试指令进行调试。
42.一种服务器,包括存储器及处理器,所述存储器中储存有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如上所述的蓝牙通信方法的步骤。
43.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的蓝牙通信方法的步骤。
44.上述交换机调试方法和装置、服务器、计算机可读存储介质,该服务器内置交换机及管理芯片,该交换机调试方法包括:通过管理芯片从交换机中获取交换机的故障信息,将交换机的故障信息发送至测试终端。控制测试终端基于交换机的故障信息生成调试指令,将调试指令发送至管理芯片。通过管理芯片将调试指令发送至交换机,控制交换机基于调试指令进行调试。
45.传统方法,在服务器内置的交换机出现网络故障无法与外部的测试终端进行通信时,测试终端便不能直接从交换机中获取到故障信息,进而对该交换机进行调试。因此,采用人工将调试工具与故障交换机的物理串口进行连接以实现交换机调试,显然,这个过程需要花费大量的时间精力。本技术所提供的交换机调试方法,在服务器内置的交换机出现网络故障无法与外部的测试终端进行通信时,可以通过服务器内置的管理芯片,从该交换机中获取到该交换机的故障信息,再由该管理芯片将故障信息发送至测试终端。从而,测试终端就可以获取到的故障信息生成调试指令,将调试指令发送至管理芯片。通过管理芯片将调试指令发送至交换机,控制交换机基于调试指令进行调试。借助于服务器内的管理芯片作为中间桥梁,实现了测试终端与服务器内置交换机之间的网络连接。从而,实现了更加方便快捷地对故障交换机进行远程调试,进而大大节约了时间、降低了成本。
附图说明
46.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
47.图1为一个实施例中交换机调试方法的应用环境图;
48.图2为一个实施例中交换机调试方法的流程图;
49.图3为另一个实施例中交换机调试方法的流程图;
50.图4为图3中通过管理芯片基于串口通信连接,从交换机中获取交换机的故障信息,将交换机的故障信息发送至测试终端方法的流程图;
51.图5为一个实施例中管理芯片的结构示意图;
52.图6为另一个实施例中交换机调试方法的应用环境图;
53.图7为图2中通过管理芯片将调试指令发送至交换机,控制交换机基于调试指令进行调试方法的流程图;
54.图8为一个具体的实施例中交换机调试方法的流程图;
55.图9为一个实施例中交换机调试装置的结构框图;
56.图10为图9中故障信息获取模块的结构框图;
57.图11为一个实施例中服务器的内部结构示意图。
具体实施方式
58.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
59.本技术中所涉及到的服务器,按外形分类可以分为塔式服务器、机架服务器、刀片式服务器、高密度服务器等。以下以刀片服务器为例进行说明。
60.刀片服务器是一种在标准高度的机架式机箱内可插装多个卡式的服务器单元的服务器,是一种可以实现hahd(high availability high density,高可用高密度)的低成本服务器平台。刀片服务器的机箱内一般包括多个刀片服务器单元及交换机,多个刀片服务器单元可以通过交换机与机箱外部的大型交换机进行通信。因此,刀片服务器机箱内的交换机,就构成了整个刀片服务器与外部设备进行网络通信的核心。一旦该交换机出现故障,则就会造成整个刀片服务器的通信故障。
61.传统方法,远程调试设备在对交换机进行远程调试时,是借助交换机与远程调试设备之间的业务网络进行远程调试。但是,若刀片服务器中的交换机出现网络故障,则交换机与远程调试设备之间的业务网络也随之瘫痪,因此,远程调试设备无法借助该业务网络进行远程调试。
62.此时,运维人员必须到机房现场去查找到故障交换机,然后将调试工具与故障交换机的物理串口进行连接,收集故障交换机的日志,从而对故障交换机进行调试。对于大规模的数据中心来说,包括大量的刀片服务器,刀片服务器中包括多个交换机。因此,在数据中心中的交换机出现故障时,通过人工确定故障交换机,然后再将调试工具与故障交换机的物理串口进行连接,都需要花费大量的时间精力。
63.为了解决上述问题,因此,本技术实施例中提出了一种交换机调试方法,能够实现更加方便快捷地对故障交换机进行调试,进而大大节约了时间、降低了成本。
64.图1为一个实施例中交换机调试方法的应用场景图。如图1所示,该应用环境包括测试终端120、服务器140。该服务器140内置管理芯片142及交换机144。且服务器140中的管理芯片142通过网络与测试终端120连接。通过管理芯片142从交换机144中获取交换机的故障信息,将交换机的故障信息发送至测试终端120。控制测试终端120基于交换机的故障信息生成调试指令,将调试指令发送至管理芯片;调试指令用于对交换机进行调试。通过管理
芯片将调试指令发送至交换机,控制交换机基于调试指令进行调试。其中,这里的服务器可以是包括内置交换机的服务器,例如刀片服务器,当然,本技术中不对具体的服务器做出限定。
65.图2为一个实施例中交换机调试方法的流程图。本实施例中的交换机调试方法,以运行于图1中的服务器140上为例进行描述,服务器内置交换机及管理芯片。该方法包括以下步骤220至步骤260,其中,
66.步骤220,通过管理芯片从交换机中获取交换机的故障信息,将交换机的故障信息发送至测试终端。
67.在服务器内置的交换机未出现网络故障的情况下,该交换机与外部设备之间可以建立网络通信连接,该网络通信连接也可以称之为业务网络。因此,服务器通过内置的交换机与外部设备(如远程的测试设备)可以基于该网络通信连接(业务网络)进行信息交互。其中,服务器内置的交换机也可以称之为机箱交换机。
68.若服务器中的交换机出现网络故障,则该交换机与外部设备之间的业务网络也随之瘫痪,因此,远程的调试设备无法借助该业务网络与服务器内置的交换机进行信息交互,从而实现对服务器内置的交换机的远程调试。
69.因此,提出一种交换机调试方法,服务器可以通过其内置的管理芯片从交换机中获取交换机的故障信息。由于管理芯片及交换机都是服务器内置的器件,所以管理芯片可以直接从交换机中获取到交换机的故障信息。然后,管理芯片可以与外部设备建立网络通信连接,如此,管理芯片就可以将所获取的交换机的故障信息发送至测试终端。这里,交换机的故障信息可以以数据包的形式进行传输,交换机的故障信息包括交换机的地址信息(ip)、交换机的网络故障信息及其他故障信息,本技术对此不做限定。
70.其中,管理芯片可以是一种服务器的嵌入式控制器,例如嵌入式arm控制器。当然,本技术中并不对管理芯片的具体类型做出限制。嵌入式控制器是用于执行指定独立控制功能并具有处理数据能力的控制系统。嵌入式控制器是由嵌入式微电子技术芯片(包括微处理器芯片、定时器、序列发生器或控制器等一系列微电子器件)来控制的电子设备或装置,能够完成监视、控制等各种自动化处理任务。
71.步骤240,控制测试终端基于交换机的故障信息生成调试指令,将调试指令发送至管理芯片;调试指令用于对交换机进行调试。
72.在管理芯片将所获取的交换机的故障信息发送至测试终端之后,测试终端接收到该交换机的故障信息。服务器控制测试终端基于交换机的故障信息生成调试指令,该调试指令用于对交换机进行调试。其中,在测试终端上存储了服务器中交换机的不同故障信息与对应的调试指令之间的对应关系,例如,可以是以数据表的形式预先存储在测试终端或其他数据库中。
73.如此,服务器控制测试终端基于交换机的故障信息,从数据表中读取与交换机的故障信息对应的调试指令。然后,由测试终端将调试指令发送至服务器的管理芯片。这里,调试指令也可以以数据包的形式进行传输。其中,若交换机的故障信息为交换机的网络故障信息,那么调试指令就可以是对交换机网络进行调试的指令。交换机的故障信息为其他故障信息,那么调试指令就可以是对其他故障信息进行调试的指令。
74.步骤260,通过管理芯片将调试指令发送至交换机,控制交换机基于调试指令进行
调试。
75.由于管理芯片及交换机都是服务器内置的器件,所以管理芯片可以直接将调试指令发送至交换机。如此,出现网络故障的交换机就可以接收到测试终端发送的调试指令,控制交换机基于调试指令进行相应的调试任务。这里的调试任务具体包括对交换机进行开关机测试、性能测试、状态测试等,本技术对此不做限定。
76.本技术实施例中,在服务器内置的交换机出现网络故障无法与外部的测试终端进行通信时,可以通过服务器内置的管理芯片,从该交换机中获取到该交换机的故障信息,再由该管理芯片将故障信息发送至测试终端。从而,测试终端就可以获取到的故障信息生成调试指令,将调试指令发送至管理芯片。通过管理芯片将调试指令发送至交换机,控制交换机基于调试指令进行调试。
77.在远程测试终端与服务器内置交换机之间的网络通信连接出现故障的情况下,借助于服务器内的管理芯片作为中间桥梁,实现了远程测试终端与服务器内置交换机之间的网络连接。从而,实现了对服务器中出现网络故障的交换机进行远程测试。不需要采用人工将调试工具与故障交换机的物理串口进行连接以实现交换机调试,因此,实现了更加方便快捷地对故障交换机进行调试,进而大大节约了时间、降低了成本。
78.在一个实施例中,如图3所示,提供了一种交换机调试方法,还包括:
79.预先在管理芯片及交换机之间建立串口通信连接;
80.通过管理芯片从交换机中获取交换机的故障信息,将交换机的故障信息发送至测试终端,包括:
81.通过管理芯片基于串口通信连接,从交换机中获取交换机的故障信息,将交换机的故障信息发送至测试终端。
82.具体的,如图3所示,提供了一种交换机调试方法,包括:
83.步骤320,预先在管理芯片及交换机之间建立串口通信连接。
84.服务器内置了管理芯片及交换机,一般情况下,管理芯片与交换机之间设置了多组串口,这些串口分别用于在管理芯片与交换机之间传输各种数据。在进行传输数据之前,首先需要将管理芯片及交换机之间的串口建立串口通信连接。
85.这里的串口指的是串行接口,串行接口是一种可以将接收来自cpu的并行数据字符转换为连续的串行数据流发送出去,同时可将接收的串行数据流转换为并行的数据字符供给cpu的器件。通过串口实现的通信连接,可以称之为串口通信连接。
86.具体的,预先在管理芯片及交换机之间建立串口通信连接,可以指的是在服务器开机时,就预先在管理芯片及交换机之间建立串口通信连接,也可以是在进行交换机测试时,才预先在管理芯片及交换机之间建立串口通信连接。本技术对此不做具体限定。
87.步骤340,通过管理芯片基于串口通信连接,从交换机中获取交换机的故障信息,将交换机的故障信息发送至测试终端。
88.在进行交换机远程测试时,通过管理芯片基于管理芯片与交换机预先建立的串口通信连接,从交换机中获取交换机的故障信息。具体的,可以是管理芯片通过串口向交换机发送故障信息请求指令,交换机在接收到该故障信息请求指令之后,向管理芯片回复故障信息。
89.管理芯片在接收到故障信息之后,可以通过管理芯片与测试终端之间的网络通信
连接,将故障信息发送至测试终端。
90.步骤360,控制测试终端基于交换机的故障信息生成调试指令,将调试指令发送至管理芯片;其中,调试指令用于对交换机进行调试。
91.步骤380,通过管理芯片将调试指令发送至交换机,控制交换机基于调试指令进行调试。
92.在管理芯片将所获取的交换机的故障信息发送至测试终端之后,测试终端接收到该交换机的故障信息。服务器控制测试终端基于交换机的故障信息生成调试指令,该调试指令用于对交换机进行调试。其中,在测试终端上存储了服务器中交换机的不同故障信息与对应的调试指令之间的对应关系,例如,可以是以数据表的形式预先存储在测试终端或其他数据库中。
93.如此,服务器控制测试终端基于交换机的故障信息,从数据表中读取与交换机的故障信息对应的调试指令。然后,由测试终端将调试指令发送至服务器的管理芯片。由于管理芯片及交换机都是服务器内置的器件,所以管理芯片可以直接将调试指令发送至交换机。如此,出现网络故障的交换机就可以接收到测试终端发送的调试指令,控制交换机基于调试指令进行相应的调试任务。
94.本技术实施例中,在远程测试终端与服务器内置交换机之间的网络通信连接出现故障的情况下,借助于服务器内的管理芯片作为中间桥梁,实现了远程测试终端与服务器内置交换机之间的网络连接。具体是借助于管理芯片及交换机之间预先所建立的串口通信连接。从而,实现了对服务器中出现网络故障的交换机进行远程测试。不需要采用人工将调试工具与故障交换机的物理串口进行连接以实现交换机调试,因此,实现了更加方便快捷地对故障交换机进行调试,进而大大节约了时间、降低了成本。
95.在一个实施例中,如图4所示,步骤340,通过管理芯片基于串口通信连接,从交换机中获取交换机的故障信息,将交换机的故障信息发送至测试终端,包括:
96.步骤342,在管理芯片上运行串口驱动,通过串口驱动基于串口通信连接,从交换机中获取串口数据;串口数据用于表征交换机的故障信息。
97.结合图5所示,为一个实施例中管理芯片的结构示意图。管理芯片142中包括串口驱动142a、ipmi服务模块142b及网卡142c。串口驱动142a、ipmi服务模块142b及网卡142c之间通过接口连接,例如通过串口连接。
98.在管理芯片及交换机之间的串口建立串口通信连接之后,进一步在管理芯片上运行串口驱动,该串口驱动用于控制管理芯片通过串口向交换机发送故障信息请求指令,交换机在接收到该故障信息请求指令之后,向管理芯片回复故障信息,从而管理芯片就获取到了故障信息。其中,管理芯片通过串口向交换机发送的故障信息请求指令,还是交换机向管理芯片所回复的故障信息均以串口数据的形式进行传输。即交换机向管理芯片所回复的串口数据中包含了故障信息。
99.步骤344,通过管理芯片基于ipmi协议对串口数据进行格式转换生成与串口数据对应的网口数据。
100.在管理芯片获取到了故障信息之后,管理芯片需要将故障信息向外发送至测试终端。而测试终端与管理芯片之间是通过网络进行通信连接的,就需要将管理芯片所获取的串口数据形式的故障信息转换为网口数据,才能够由管理芯片将该故障信息对应的网口数
据发送至测试终端。
101.因此,在管理芯片上还可以运行ipmi服务模块,通过ipmi服务模块可以基于ipmi协议对串口数据进行格式转换生成网口数据。如此,就可以通过ipmi服务模块将故障信息对应的网口数据转换为网口数据。这里,串口数据或网口数据均可以是以数据包的形式进行传输。这里的网口数据可以是通过ipmi网络接口能够传输的数据。其中,ipmi服务模块还可以持续从交换机中读取串口数据并记录到日志文件中,当交换机发生故障时,运维人员可以第一时间从管理芯片中的ipmi服务模块上下载日志文件,快速分析定位交换机故障原因。
102.其中,ipmi是智能型平台管理接口(intelligent platform management interface)的缩写,是管理基于intel结构的企业系统中所使用的外围设备采用的一种工业标准。可以利用ipmi监视服务器的物理健康特征,如温度、电压、风扇工作状态、电源状态等。
103.步骤346,通过管理芯片将网口数据发送至测试终端。
104.在管理芯片上还包括网卡,该网卡可以实现管理芯片与外部测试终端之间的通信,具体为传输网口数据。因此,通过管理芯片上的网卡,就可以实现将故障信息对应的网口数据,发送至测试终端。
105.本技术实施例中,管理芯片及交换机之间预先建立了串口通信连接,且管理芯片通过预设串口驱动基于串口通信连接,从交换机中获取故障信息对应的串口数据,将故障信息对应的串口数据发送至ipmi服务模块。通过ipmi服务模块可以基于ipmi协议将故障信息对应的网口数据转换为网口数据。再通过管理芯片上的网卡,就可以实现将故障信息对应的网口数据,发送至测试终端。如此,在远程测试终端与服务器内置交换机之间的网络通信连接出现故障的情况下,借助于服务器内的管理芯片作为中间桥梁,实现了远程测试终端与服务器内置交换机之间的网络连接。
106.在一个实施例中,通过管理芯片将网口数据发送至测试终端,包括:
107.通过管理芯片将网口数据发送至第一外部交换机;
108.通过第一外部交换机将网口数据发送至测试终端。
109.如图6所示,提供了一种换机调试方法的另一应用场景图。如图6所示,该应用环境包括测试终端120、服务器140及第一外部交换机160。若该服务器140为刀片服务器,则该服务器140内置管理芯片142及交换机144,还包括多个刀片服务器单元146。多个刀片服务器单元146可以分别与管理芯片142、交换机144进行连接(图未示),在本技术中对此不做限定。且服务器140中的管理芯片142通过网络与第一外部交换机160连接,第一外部交换机160通过网络与测试终端120连接。其中,第一外部交换机为服务器外的大型交换机,当测试终端对大量服务器进行远程测试时,就需要借助于该大型交换机来传输数据。例如,针对由大量服务器构成的大型数据中心或超级计算机集群,则均需要采用大型交换机来传输数据。
110.通过管理芯片从交换机中获取交换机的故障信息,具体为管理芯片从交换机中获取交换机的故障信息对应的串口数据,并将故障信息对应的串口数据转换为故障信息对应的网口数据。在此之后,服务器通过管理芯片142与第一外部交换机160之间的网络连接,基于管理芯片将故障信息对应的网口数据发送至第一外部交换机。
111.再由第一外部交换机基于第一外部交换机与测试终端之间的网络通信连接,将故障信息对应的网口数据发送至测试终端。
112.本技术实施例中,当测试终端对大量服务器所构成的大型数据中心或超级计算机集群进行远程测试时,每台服务器内置的管理芯片将所获取的故障信息对应的网口数据首先发送至外部交换机,然后,再由外部交换机进行转发至测试终端。如此,通过外部交换机就可以实现同时对多台服务器中内置交换机进行远程测试。因此,大大提高了对构成的大型数据中心或超级计算机集群中内置交换机进行远程测试的效率。
113.在一个实施例中,步骤240,控制测试终端基于交换机的故障信息生成调试指令,将调试指令发送至管理芯片,包括:
114.控制测试终端对交换机的故障信息进行解析生成解析结果,根据解析结果生成调试指令;
115.控制测试终端运行ipmitool工具,通过ipmitool工具将调试指令发送至管理芯片。
116.具体的,测试终端接收到了管理芯片发送的网口数据对应的数据包,该网口数据对应的数据包中包括了交换机的故障信息。因此,服务器控制测试终端对该网口数据对应的数据包进行解析,生成解析结果。该解析结果包括交换机的地址信息(ip)、交换机的故障类型等。其中,在测试终端上存储了服务器中交换机的不同故障类型与对应的调试指令之间的对应关系,例如,可以是以数据表的形式预先存储在测试终端或其他数据库中。所以,基于解析结果可以确定具体的故障类型,再基于具体的故障类型从数据表中匹配对应的调试指令。该调试指令中携带了交换机的地址信息(ip)。
117.在测试终端生成了调试指令之后,基于调试指令可以触发测试终端运行ipmitool工具。其中,ipmitool工具是一种可用在linux系统下的命令行方式的ipmi平台管理工具,ipmitool工具支持ipmi规范,通过ipmitool工具可以实现获取传感器的信息、显示系统日志内容、网络远程开关机等功能。
118.在测试终端运行ipmitool工具之后,测试终端就可以通过ipmitool工具将调试指令发送至管理芯片。若服务器数目较少,则服务器内置管理芯片直接与测试终端进行连接,则测试终端通过ipmitool工具将调试指令直接发送至管理芯片。若服务器数目较多,则服务器内置管理芯片直接与测试终端进行连接,则测试终端通过ipmitool工具将调试指令先发送至外部交换机,再由外部交换机转发至管理芯片。具体的,基于调试信息中所携带的交换机的地址信息(ip),将调试指令发送至与交换机的地址信息(ip)对应的管理芯片。
119.ipmitool工具部署在测试终端上,可以理解为ipmitool客户端。在管理芯片上运行的ipmi服务模块,可以理解为ipmitool服务端。ipmitool客户端与ipmitool服务端共同实现对服务器中交换机的远程测试。
120.本技术实施例中,测试终端接收到了管理芯片发送的网口数据对应的数据包,该网口数据对应的数据包中包括了交换机的故障信息。因此,服务器控制测试终端对该网口数据对应的数据包进行解析,生成解析结果。基于解析结果可以确定具体的故障类型,再基于具体的故障类型从数据表中匹配对应的调试指令。在测试终端生成了调试指令之后,基于调试指令可以触发测试终端运行ipmitool工具。测试终端就可以通过ipmitool工具将调试指令发送至管理芯片。从而,实现了将调试指令发送至管理芯片,以便管理芯片在通过串
口通信连接将调试指令发送至交换机。最终,在服务器内置的交换机出现网络故障无法与外部的测试终端进行通信时,实现了不通过测试终端与交换机之间的网络通信,实现了测试终端对交换机的远程测试。
121.在一个实施例中,通过ipmitool工具将调试指令发送至管理芯片,包括:
122.通过ipmitool工具将调试指令发送至第二外部交换机;
123.通过第二外部交换机将调试指令发送至管理芯片。
124.结合图6所示,针对由大量服务器构成的大型数据中心或超级计算机集群,则均需要采用大型外部交换机来传输数据。因此,通过测试终端上运行的ipmitool工具,可以将测试指令发送至第二外部交换机中,再由第二外部交换机将调试指令发送至与调试指令对应的管理芯片,以便管理芯片在通过串口通信连接将调试指令发送至交换机。其中,该调试指令中携带了交换机的地址信息(ip)。具体,基于调试信息中所携带的交换机的地址信息(ip),将调试指令发送至与交换机的地址信息(ip)对应的管理芯片。这里的第二外部交换机与上述实施例中的第一外部交换机,可以相同也可以不同,本技术对此不做限定。
125.本技术实施例中,针对由大量服务器构成的大型数据中心或超级计算机集群,则均需要采用大型交换机来传输数据。因此,通过测试终端上运行的ipmitool工具,可以将测试指令发送至第二外部交换机中,再由第二外部交换机将调试指令发送至管理芯片,以便管理芯片在通过串口通信连接将调试指令发送至交换机。如此,通过外部交换机就可以实现同时对多台服务器中内置交换机进行远程测试。因此,大大提高了对构成的大型数据中心或超级计算机集群中内置交换机进行远程测试的效率。
126.在一个实施例中,如图7所示,步骤260,通过管理芯片将调试指令发送至交换机,控制交换机基于调试指令进行调试,包括:
127.步骤262,通过管理芯片基于ipmi协议对调试指令进行格式转换,生成与调试指令对应的串口数据。
128.在管理芯片获取到了调试指令之后,管理芯片需要将调试指令发送至交换机。因为管理芯片与交换机之间所建立的是串口通信连接,而调试指令为网口数据,所以,需要通过管理芯片基于ipmi协议对调试指令进行格式转换,生成与调试指令对应的串口数据,以便可以将调试指令对应的串口数据发送至交换机。
129.具体的,在管理芯片上可以运行ipmi服务模块,通过ipmi服务模块可以基于ipmi协议对网口数据进行格式转换生成串口数据。如此,就可以通过ipmi服务模块将调试指令对应的网口数据转换为网口数据。这里的网口数据可以是通过ipmi网络接口能够传输的数据。
130.步骤264,在管理芯片上运行串口驱动,通过串口驱动基于串口通信连接,将调试指令对应的串口数据发送至交换机。
131.在管理芯片上运行串口驱动,该串口驱动用于控制管理芯片通过串口向交换机发送调试指令,即通过串口驱动基于串口通信连接,将调试指令对应的串口数据发送至交换机。
132.步骤266,控制交换机基于调试指令对应的串口数据进行调试。
133.交换机接收管理芯片所发送的调试指令对应的串口数据之后,就可以直接基于该串口数据执行调试任务。这里的调试任务具体包括对交换机进行开关机测试、性能测试、状
态测试等,本技术对此不做限定。
134.本技术实施例中,管理芯片将调试指令发送至交换机的过程,与管理芯片从交换机获取故障信息,将故障信息发送至测试终端的过程类似。管理芯片首先通过ipmi服务模块将包含调试指令对应的网口数据,转换为串口数据。然后,管理芯片可以通过预设串口驱动基于串口通信连接,向交换机发送调试指令对应的串口数据,就可以实现将调试指令对应的串口数据,发送至交换机。如此,在远程测试终端与服务器内置交换机之间的网络通信连接出现故障的情况下,借助于服务器内的管理芯片作为中间桥梁,实现了将调试指令发送交换机,最终实现了远程测试终端将测试指令发送至交换机,实现了对服务器内交换机的远程调试。
135.在一个具体的实施例中,如图8所示,提供了一种交换机测试方法,包括:
136.步骤802,预先在管理芯片及交换机之间建立串口通信连接;
137.步骤804,在管理芯片上运行预设串口驱动,通过预设串口驱动基于串口通信连接,从交换机中获取串口数据,将串口数据发送至ipmi服务模块;串口数据用于表征交换机的故障信息;
138.步骤806,通过管理芯片基于ipmi协议对串口数据进行格式转换生成与串口数据对应的网口数据;
139.步骤808,通过管理芯片将网口数据发送至第一外部交换机;
140.步骤810,通过第一外部交换机将网口数据发送至测试终端;
141.步骤812,控制测试终端对交换机的故障信息进行解析生成解析结果,根据解析结果生成调试指令;
142.步骤814,控制测试终端运行ipmitool工具,通过ipmitool工具将调试指令发送至第二外部交换机;
143.步骤816,通过第二外部交换机将调试指令发送至管理芯片。
144.步骤818,通过管理芯片基于ipmi协议对调试指令进行格式转换,生成与调试指令对应的串口数据;
145.步骤820,在管理芯片上运行预设串口驱动,通过预设串口驱动基于串口通信连接,将调试指令对应的串口数据发送至交换机;
146.步骤822,控制交换机基于调试指令对应的串口数据进行调试。
147.本技术实施例中,在服务器内置的交换机出现网络故障无法与外部的测试终端进行通信时,可以通过服务器内置的管理芯片,从该交换机中获取到该交换机的故障信息,再由该管理芯片将故障信息发送至测试终端。从而,测试终端就可以获取到的故障信息生成调试指令,将调试指令发送至管理芯片。通过管理芯片将调试指令发送至交换机,控制交换机基于调试指令进行调试。借助于服务器内的管理芯片作为中间桥梁,实现了测试终端与服务器内置交换机之间的网络连接。从而,实现了更加方便快捷地对故障交换机进行远程调试,进而大大节约了时间、降低了成本。
148.在一个实施例中,如图9所示,提供了一种交换机调试装置900,应用于服务器,服务器内置交换机及管理芯片,该装置包括:
149.故障信息获取模块920,用于通过管理芯片从交换机中获取交换机的故障信息,将交换机的故障信息发送至测试终端;
150.调试指令生成模块940,用于控制测试终端基于交换机的故障信息生成调试指令,将调试指令发送至管理芯片;调试指令用于对交换机进行调试;
151.调试模块960,用于通过管理芯片将调试指令发送至交换机,控制交换机基于调试指令进行调试。
152.在一个实施例中,提供了一种交换机调试装置900,还包括:
153.串口通信连接模块910,用于预先在管理芯片及交换机之间建立串口通信连接;
154.故障信息获取模块920,还用于通过管理芯片基于串口通信连接,从交换机中获取交换机的故障信息,将交换机的故障信息发送至测试终端。
155.在一个实施例中,如图10所示,故障信息获取模块920,还包括:
156.串口数据获取单元922,用于在管理芯片上运行预设串口驱动,通过预设串口驱动基于串口通信连接,从交换机中获取串口数据;串口数据用于表征交换机的故障信息;
157.第一数据格式转换单元924,用于通过管理芯片基于ipmi协议对串口数据进行格式转换生成与串口数据对应的网口数据;
158.网口数据发送单元926,用于通过管理芯片将网口数据发送至测试终端。
159.在一个实施例中,网口数据发送单元926,还用于通过管理芯片将网口数据发送至第一外部交换机;通过第一外部交换机将网口数据发送至测试终端。
160.在一个实施例中,调试指令生成模块940,还用于控制测试终端对交换机的故障信息进行解析生成解析结果,根据解析结果生成调试指令;控制测试终端运行ipmitool工具,通过ipmitool工具将调试指令发送至管理芯片。
161.在一个实施例中,调试指令生成模块940,还用于通过ipmitool工具将调试指令发送至第二外部交换机;通过第二外部交换机将调试指令发送至管理芯片。
162.在一个实施例中,调试模块960,包括:
163.第二数据格式转换单元,用于通过管理芯片基于ipmi协议对调试指令进行格式转换,生成与调试指令对应的串口数据;
164.串口数据发送单元,用于在管理芯片上运行预设串口驱动,通过预设串口驱动基于串口通信连接,将调试指令对应的串口数据发送至交换机;
165.调试单元,用于控制交换机基于调试指令对应的串口数据进行调试。
166.应该理解的是,虽然上述图中的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
167.上述交换机调试装置中各个模块的划分仅用于举例说明,在其他实施例中,可将交换机调试装置按照需要划分为不同的模块,以完成上述交换机调试装置的全部或部分功能。
168.关于交换机调试装置的具体限定可以参见上文中对于交换机调试方法的限定,在此不再赘述。上述交换机调试装置中的各个模块可全部或部分通过软件、硬件及其组合来
实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
169.在一个实施例中,还提供了一种服务器,包括存储器及处理器,存储器中储存有计算机程序,计算机程序被处理器执行时,使得处理器执行以上各个实施例所提供的一种交换机调试方法的步骤。
170.图11为一个实施例中服务器的内部结构示意图。如图11所示,该服务器包括通过系统总线连接的处理器和存储器。其中,该处理器用于提供计算和控制能力,支撑整个服务器的运行。存储器可包括非易失性存储介质及内存储器。非易失性存储介质存储有操作系统和计算机程序。该计算机程序可被处理器所执行,以用于实现以上各个实施例所提供的一种交换机调试方法。内存储器为非易失性存储介质中的操作系统计算机程序提供高速缓存的运行环境。该服务器可以是手机、平板电脑、pda(personal digital assistant,个人数字助理)、pos(point of sales,销售终端)、车载电脑、穿戴式设备等任意终端设备。
171.本技术实施例中提供的交换机调试装置中的各个模块的实现可为计算机程序的形式。该计算机程序可在服务器上运行。该计算机程序构成的程序模块可存储在服务器的存储器上。该计算机程序被处理器执行时,实现本技术实施例中所描述方法的步骤。
172.本技术实施例还提供了一种计算机可读存储介质。一个或多个包含计算机可执行指令的非易失性计算机可读存储介质,当计算机可执行指令被一个或多个处理器执行时,使得处理器执行交换机调试方法的步骤。
173.一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行交换机调试方法。
174.本技术实施例所使用的对存储器、存储、数据库或其它介质的任何引用可包括非易失性和/或易失性存储器。合适的非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram),它用作外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddr sdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)。
175.以上交换机调试实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1