本技术涉及服务器,特别是涉及一种服务器硬盘连接拓扑自动识别方法、装置、计算机设备和存储介质。
背景技术:
1、随着服务器行业的日趋成熟,服务器产品也是层出不穷。然而,服务器的主流架构仍然是主板结合背板的结构设计,而主背板之间的通信,则是通过线缆连接来实现的。
2、但是目前服务器有多个线缆端口,服务器包括多个硬盘设置在主背板上,硬盘分别与线缆端口连接。为了获得硬盘与线缆端口的对应连接关系,目前普遍采用构建拓扑固件对照表的方式来人工记录主背板上的硬盘与线缆端口的连接,通常是记录硬盘在主背板上的id以及对应的线缆端口的编号,进而将拓扑固件对照表存储在服务器中,方便bmc和pdlc在读取目标硬盘的数据时能够得知其对应的线缆端口。通常采用在扑固件对照表中对硬盘连接的线缆端口设置拨码信息进行线缆通讯管理,可向拨码信息对应的线缆端口发送目标硬盘响应命令,通过是否回传信息来验证是否正常连接硬盘。但是采用人工记录的方式,梳理配置工作量巨大,且需对应每一种线缆端口的配置方式设置不同的拨码值,不同配置方式对应不同的拨码值,需烧录不同版本的程序,管控困难。根据不同配置,手动调整拨码值,无法通过自动化工具实现,耗费人力且存在拨错的可能性。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种服务器硬盘连接拓扑自动识别方法、装置、计算机设备和存储介质,能够在满足客户多样化的配置需求下,通过自动化的方式完成硬盘连接拓扑的自动识别,减少人工介入,提高效率,减少错误。
2、一方面,提供一种服务器硬盘连接拓扑自动识别方法,所述方法包括:
3、将多个硬盘与多组线缆端口电性连接,获取每一硬盘的名称信息以及每组线缆端口的配置信息;
4、根据硬盘的名称信息对所有硬盘进行编号,按照硬盘的编号顺序依次生成多个包含硬盘的名称信息的用于触发硬盘响应的点名指令;
5、根据线缆端口的配置信息对所有线缆端口进行编号,按照线缆端口的编号顺序依次向所有线缆端口发送点名指令;当目标硬盘接收到包含其名称信息的点名指令时,反馈响应信息并发送目标硬盘的安装位置信息;
6、响应于目标线缆端口接收到响应信息时,获取目标线缆端口的编号;
7、响应于获取到目标硬盘的安装位置信息时,将目标线缆端口的编号与目标硬盘的安装位置信息建立匹配关系。
8、在其中一个实施例中,所述获取每一硬盘的名称信息以及每组线缆端口的配置信息步骤,包括:
9、获取每一硬盘的编码信息,在编码信息中获取用于识别硬盘的数字序列,将该数字序列作为所述硬盘的名称信息;
10、获取能够与硬盘连接的所有线缆端口的配置组合方式,对每种配置组合方式设置一个拨码信息,每一拨码信息对应一种线缆端口的配置组合方式。
11、在其中一个实施例中,所述将目标线缆端口的编号与目标硬盘的安装位置信息建立匹配关系步骤,包括:
12、根据目标线缆端口的编号获取目标线缆端口对应的拨码信息;
13、将目标线缆端口的拨码信息与目标硬盘的安装位置信息建立匹配关系并存储。
14、在其中一个实施例中,所述方法还包括:
15、响应于目标线缆端口接收到响应信息时,目标线缆端口点亮端口定位灯;
16、响应于目标线缆端口的端口定位灯被点亮时,目标线缆端口的活动灯闪烁;
17、响应于发送目标硬盘的安装位置信息时,目标硬盘点亮硬盘定位灯;
18、响应于目标线缆端口的活动灯闪烁时,按照硬盘的安装位置顺序依次检测每一安装位置上的硬盘定位灯是否被点亮,若是则将该安装位置上的硬盘的安装位置信息与点亮端口定位灯的目标线缆端口的拨码信息建立匹配关系。
19、在其中一个实施例中,所述硬盘与复杂可编程逻辑器件(cpld)电性连接,所述线缆端口与基板管理控制器(bmc)电性连接;所述方法还包括:
20、响应于所述按照硬盘的编号顺序依次生成多个包含硬盘的名称信息的用于触发硬盘响应的点名指令时,控制所述基板管理控制器(bmc)进入盘序自检模式并发送通知信息至所述复杂可编程逻辑器件(cpld);
21、响应于完成按照线缆端口的编号顺序依次向所有线缆端口发送点名指令后,控制所述基板管理控制器(bmc)退出盘序自检模式并发送通知信息至所述复杂可编程逻辑器件(cpld)。
22、在其中一个实施例中,所述方法还包括:
23、响应于所述复杂可编程逻辑器件(cpld)接收到所述基板管理控制器(bmc)进入盘序自检模式的通知信息时,屏蔽端口定位灯及硬盘定位灯对外的显示接口。
24、在其中一个实施例中,所述按照硬盘的编号顺序依次生成多个包含硬盘的名称信息的用于触发硬盘响应的点名指令步骤,包括:
25、按照硬盘的编号顺序依次获取每一硬盘的名称信息;
26、针对每一硬盘的名称信息生成包含硬盘的名称信息的读写操作指令作为点名指令,在接收读写操作指令的硬盘的名称信息与该指令中的硬盘名称信息一致时能够进行读写操作。
27、另一方面,提供了一种服务器硬盘连接拓扑自动识别装置,所述装置包括:
28、服务器构建模块,用于将多个硬盘与多组线缆端口电性连接,获取每一硬盘的名称信息以及每组线缆端口的配置信息;
29、点名指令生成模块,用于根据硬盘的名称信息对所有硬盘进行编号,按照硬盘的编号顺序依次生成多个包含硬盘的名称信息的用于触发硬盘响应的点名指令;
30、发送点名指令模块,用于根据线缆端口的配置信息对所有线缆端口进行编号,按照线缆端口的编号顺序依次向所有线缆端口发送点名指令;当目标硬盘接收到包含其名称信息的点名指令时,反馈响应信息并发送目标硬盘的安装位置信息;
31、目标线缆端口确定模块,用于响应于目标线缆端口接收到响应信息时,获取目标线缆端口的编号;
32、连接拓扑匹配模块,用于响应于获取到目标硬盘的安装位置信息时,将目标线缆端口的编号与目标硬盘的安装位置信息建立匹配关系。
33、再一方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
34、将多个硬盘与多组线缆端口电性连接,获取每一硬盘的名称信息以及每组线缆端口的配置信息;
35、根据硬盘的名称信息对所有硬盘进行编号,按照硬盘的编号顺序依次生成多个包含硬盘的名称信息的用于触发硬盘响应的点名指令;
36、根据线缆端口的配置信息对所有线缆端口进行编号,按照线缆端口的编号顺序依次向所有线缆端口发送点名指令;当目标硬盘接收到包含其名称信息的点名指令时,反馈响应信息并发送目标硬盘的安装位置信息;
37、响应于目标线缆端口接收到响应信息时,获取目标线缆端口的编号;
38、响应于获取到目标硬盘的安装位置信息时,将目标线缆端口的编号与目标硬盘的安装位置信息建立匹配关系。
39、又一方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
40、将多个硬盘与多组线缆端口电性连接,获取每一硬盘的名称信息以及每组线缆端口的配置信息;
41、根据硬盘的名称信息对所有硬盘进行编号,按照硬盘的编号顺序依次生成多个包含硬盘的名称信息的用于触发硬盘响应的点名指令;
42、根据线缆端口的配置信息对所有线缆端口进行编号,按照线缆端口的编号顺序依次向所有线缆端口发送点名指令;当目标硬盘接收到包含其名称信息的点名指令时,反馈响应信息并发送目标硬盘的安装位置信息;
43、响应于目标线缆端口接收到响应信息时,获取目标线缆端口的编号;
44、响应于获取到目标硬盘的安装位置信息时,将目标线缆端口的编号与目标硬盘的安装位置信息建立匹配关系。
45、上述服务器硬盘连接拓扑自动识别方法、装置、计算机设备和存储介质,通过自动化检测方式,完成硬盘连接拓扑自动识别,完全不需要人为参与,既达到了释放人力的效果,又避免了人为参与可能带来的错误。