一种BMCIP获取方法、装置和机柜式服务器与流程

文档序号:21407952发布日期:2020-07-07 14:42阅读:577来源:国知局
一种BMC IP获取方法、装置和机柜式服务器与流程

本发明涉及计算机应用技术领域,特别是涉及一种bmcip获取方法、装置、机柜式服务器及可读存储介质。



背景技术:

机柜式服务器可以整合刀片式服务器,即若干个刀片式服务器放在机柜中,采用服务器背板使之相连。其中每一块“刀片”实际上就是一块系统母板,类似于一个个独立的服务器。在这种模式下,每一个母板运行自己的系统,服务于指定的不同用户群,相互之间没有关联。使用系统软件将这些母板集合成一个服务器集群。在集群模式下,所有的母板可以连接起来,以提供高速的网络环境,可以共享资源,为相同的用户群服务。

除了软件集群以外,为了方便远程管理,机柜本身还设置了监控管理系统smc(systemmanagementcontroller),来集中管理刀片服务器的监控管理单元(bmc,baseboardmanagementcontroller),实现刀片的批量管理。获取bmcip属于bmc监管的重要环节。目前,获取bmcip的方式有:一、通过bmc串口,进入bmc系统查看;二、通过节点上的bios,进入setup查看;三、进入节点os,进行查看。通过bmc串口,进入bmc系统查看,需要bmc串口线,需要登录软件,需要设置波特率等串口设置。通过节点上的bios,进入setup查看,需要操作进入biossetup,需要等待机器进入biossetup。进入节点os,进行查看,需要操作进入os,系统下需要安装ipmitool,需要等待机器进入os并输入ipmitool命令查看。也就是说,现有的bmcip的获取方式,需要增加硬件设备(如bmc串口线),专门的软件,和需进入特定的系统,这就使得bmcip获取操作复杂、耗费人力。

综上所述,如何有效地解决bmcip获取等问题,是目前本领域技术人员急需解决的技术问题。



技术实现要素:

本发明的目的是提供一种bmcip获取方法、装置、机柜式服务器及可读存储介质,无需额外添加硬件设备或线路、无需依赖软件且无需人为操作,即可获得bmcip。

为解决上述技术问题,本发明提供如下技术方案:

一种bmcip获取方法,应用于机柜监控管理系统,包括:

对机柜式服务器中的各个bmc进行在位监测;

在检测到目标bmc启动时,通过i2c总线向所述目标bmc发送bmcip获取命令;

接收所述目标bmc反馈的目标ip,并在可视化界面显示所述目标ip。

优选地,在可视化界面显示所述目标ip,包括:

在所述目标bmc的槽位编号对应位置显示所述目标ip。

优选地,所述对机柜式服务器中的各个bmc进行在位监测,包括:

利用gpio总线获取各个所述bmc的gpio信号;

当所述gpio信号处于高电位时,所述bmc处于在位状态;

当所述gpio信号处于低电位时,所述bmc未处于所述在位状态。

优选地,检测所述目标bmc是否启动的过程,包括:

在检测到目标节点的gpio信号由非所述在位状态变为所述在位状态,通过i2c总线遍历新增设备,并搜索所述新增设备对应的目标bmc。

优选地,接收所述目标bmc反馈的目标ip,包括:

从指定内存映射中读取所述bmc反馈的所述目标ip。

优选地,所述从指定内存映射中读取所述bmc反馈的所述目标ip,包括:

按照bmc远程管理工具中指定格式读取所述目标ip。

优选地,所述通过i2c总线向所述目标bmc发送bmcip获取命令,包括:

向所述目标bmc发送所述bmcip获取命令;所述bmc获取命令具体为i2c命令,以便所述目标bmc利用显示或配置网络设备的命令获取所述目标ip,并进行反馈。

一种bmcip获取装置,应用于机柜监控管理系统,包括:

在位监测模块,用于对机柜式服务器中的各个bmc进行在位监测;

ip获取命令发送模块,用于在检测到目标bmc启动时,通过i2c总线向所述目标bmc发送bmcip获取命令;

ip获取显示模块,用于接收所述目标bmc反馈的目标ip,并在可视化界面显示所述目标ip。

一种机柜式服务器,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上述bmcip获取方法的步骤。

一种机柜式服务器,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现上述bmcip获取方法的步骤。

一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述bmcip获取方法的步骤。

应用本发明实施例所提供的方法,对机柜式服务器中的各个bmc进行在位监测;在检测到目标bmc启动时,通过i2c总线向目标bmc发送bmcip获取命令;接收目标bmc反馈的目标ip,并在可视化界面显示目标ip。

机柜式服务器中的各个刀片服务器通过背板与smc相连接。因此,在获取刀片式服务器中的bmcip时,可对各个bmc进行在位监测。又因为,bmc在发生ip变动时,会重新启动,因而在监测到目标bmc启动时,则可通过i2c总线向目标bmc发送bmcip获取命令。然后,接收目标bmc反馈的目标ip,最终在可视化界面显示该目标ip即可,在smc可视化界面显示目标ip,可集中显示所有的bmcip,易用性强。可见,在本方法中,smc与bmc的通信可仅仅基于现有的背板连接关系,无需单独添加bmc串口线,也无需借助软件或人为操作进入系统,可降低复杂度。

相应地,本发明实施例还提供了与上述bmcip获取方法相对应的bmcip获取装置、机柜式服务器和可读存储介质,具有上述技术效果,在此不再赘述。

附图说明

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

图1为本发明实施例中一种bmcip获取方法的实施流程图;

图2为本发明实施例中一种smc获取bmcip实现示意图;

图3为本发明实施例中一种bmcip获取装置的结构示意图;

图4为本发明实施例中一种机柜式服务器的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例一:

请参考图1,图1为本发明实施例中一种bmcip获取方法的流程图,该方法可应用于机柜监控管理系统(下文简称smc),该方法包括以下步骤:

s101、对机柜式服务器中的各个bmc进行在位监测。

机柜式服务器中包括多个刀片式服务器,多个刀片式服务器通过背板与smc物理连接。背板即服务器刀片后的连接板,其前面连接刀片节点及电源,后面连接管理模块及风扇。

在本实施例中,smc与bmc之间主要通过i2c总线和gpio传递信号。其中,i2c总线为一种简单、双向二线制同步串行总线,gpio(general-purposeinput/output),通用型的输入输出。

对于该机柜式服务器中具体有多少个刀片式服务器,以及刀片式服务器的具体型号,本实施例均不做限定。

在位监测,即刀片在位的状态判断。具体的,在位监测过程,包括:

步骤一、利用gpio总线获取各个bmc的gpio信号;

步骤二、当gpio信号处于高电位时,bmc处于在位状态;

步骤三、当gpio信号处于低电位时,bmc未处于在位状态。

为便于描述,下面将上述三个步骤结合起来进行说明。

smc通过gpio直观的判断节点是否在位,具体的,硬件设置为,当gpio被拉到高电平(即高电位)时表示对应的bmc处于在位状态,低电平(即地低电位)时表示对应的bmc未处于在位状态,即不在位,当插入刀片式服务器(或称之为服务器集群的节点),触发gpio高电平,而拔出刀片式服务器,触发gpio低电平。其中,高低电位指数字逻辑电路中某一点对于低电位的电压而言,高电位就是高电压的意思,但是这个高电压不是绝对的,是相对于某个电压标准,以5v电源下工作的ttl电路为例,高于2v的电压信号就是高电平。

s102、在检测到目标bmc启动时,通过i2c总线向目标bmc发送bmcip获取命令。

由于bmc的ip发生变化或初始设置时,需要重启/开启才能使得ip有效。因此,在本实施例中可在监测到目标bmc启动时,向目标bmc发生bmcip获取命令。其中,目标bmc即重新启动或更替后首次启动的bmc。

其中,检测目标bmc是否启动的过程,包括:在检测到目标节点的gpio信号由非在位状态变为在位状态,通过i2c总线遍历新增设备,并搜索新增设备对应的目标bmc。其中,目标节点,即一个具体的刀片式服务器。当检测到目标节点的gpio信号从不在位变为在位状态,即gpio信号被拉高,可确定目标节点启动,或者说,可确定当前有新增设备,可通过i2c总线遍历新增设备,最终确定新增设备对应的目标bmc。

确定出目标bmc之后,可通过i2c总线向目标bmc发送bmcip获取命令。具体的,可向目标bmc发送bmcip获取命令;bmc获取命令具体为i2c命令,以便目标bmc利用显示或配置网络设备的命令获取目标ip,并进行反馈。

由于bmc本身是个linux系统,所以自身获取ip的原理,类似于linux系统下,ifconfig获取自身ip的操作,目标bmc在接收到i2c命令之后,可获取到自身ip后,发送给smc指定内存映射中。其中,显示或配置网络设备的命令可具体为ifconfig(networkinterfacesconfiguring),ifconfig是linux中用于显示或配置网络设备(网络接口卡)的命令。目标bmc获得其ip地址,即ip之后,可反馈给smc。

s103、接收目标bmc反馈的目标ip,并在可视化界面显示目标ip。

其中,接收目标ip的方式可具体为向bmc分配指定内存映射,以便目标bmc写入ip。smc通过读取指定内存映射,便可获得目标ip。

即,smc可从指定内存映射中读取bmc反馈的目标ip。具体的,可按照bmc远程管理工具中指定格式读取目标ip。其中bmc远程管理工具可具体为ipmitool:bmc,一种远程管理工具,ipmitool是一种可用在linux系统下的命令行方式的ipmi平台管理工具,通过ipmitool可以实现获取传感器的信息、显示系统日志内容、网络远程开关机等功能。

举例说明:

smc可按照以下命令读取获得bmcip:

ipmitool-h<smcip>-uadmin–padmin–ilanplusraw0x3c0x020x00-0x15

00010000790000000000000000000000

0000c0a8006cffffff0000000000c0a8

00000000000000000000000000000000

其中,“01”代表在位,“c0a8006c”代表bmcip:192.168.0.108(c0a8006c:16进制转换成10进制为192.168.0.108)。

在获得目标ip之后,在可视化界面显示目标ip时,进而具体为在目标bmc的槽位编号对应位置显示目标ip。

应用本发明实施例所提供的方法,对机柜式服务器中的各个bmc进行在位监测;在检测到目标bmc启动时,通过i2c总线向目标bmc发送bmcip获取命令;接收目标bmc反馈的目标ip,并在可视化界面显示目标ip。

机柜式服务器中的各个刀片服务器通过背板与smc相连接。因此,在获取刀片式服务器中的bmcip时,可对各个bmc进行在位监测。又因为,bmc在发生ip变动时,会重新启动,因而在监测到目标bmc启动时,则可通过i2c总线向目标bmc发送bmcip获取命令。然后,接收目标bmc反馈的目标ip,最终在可视化界面显示该目标ip即可,在smc可视化界面显示目标ip,可集中显示所有的bmcip,易用性强。可见,在本方法中,smc与bmc的通信可仅仅基于现有的背板连接关系,无需单独添加bmc串口线,也无需借助软件或人为操作进入系统,可降低复杂度。

为便于理解,下面结合具体的应用实例对bmcip获取方法进行详细说明。

请参考图2,图2为本发明实施例中一种smc获取bmcip实现示意图。其中,gpio用于获取各个bmc的在位状态,i2c总线用于在smc与bmc之间传递命令以及数据;刀片节点与机柜之间通过机柜背板直接相连,smc也与机柜背板物理相连,这样就实现了smc与bmc的物理连通。

smc通过gpio直观的判断节点是否在位,插入节点,触发gpio高电平;拔出节点,触发gpio低电平。当smc获取到节点在位通知后,通过i2c总线向目标c发出bmcip请求,目标c获取到自身ip后,发送给smc指定内存映射中(如图2所示的内存),smc读取目标ip并进行显示。机柜中每个槽位均有丝印编号,smc中按照丝印编号对应出自己的软件编号;即某个编号的在位信息被触发(ip变化,重上电之后;ip变化之后,必然重启)之后,smc就向哪个bmc发送i2c命令,获取到bmcip之后,显示在对应的槽位编号(smc的显示界面)内。

举例说明:在机柜中,smc与节点物理相连,在smc侦测到对应节点的gpio被拉高后,通过i2c遍历新增设备,搜索到新增设备;等待bmc重启完成,bmc重启完成后,发送给smcready信号;smc发出若干信息显示请求,显示bmc中获取到的信息,其中包括ip显示请求;bmc自身获取ip,并按照一定格式发送信息到smc中运行内存中,smc按照既定的格式读取bmcip,并获取到ip之后,按照丝印对应显示在smc的管理界面中。

由此可见,bmcip获取方法,具有优点:完全不需人为操作;节省时间,即上电后,bmc的启动时间一般在1min左右,而进入biossetup及os的时间,相对来说会多很多;易用性强,即可远程显示,smc中可集中显示其所管理的刀片式服务器对应的所有的bmcip。

实施例二:

相应于上面的方法实施例,本发明实施例还提供了一种bmcip获取装置,该装置可应用于机柜监控管理系统,下文描述的bmcip获取装置与上文描述的bmcip获取方法可相互对应参照。

参见图3所示,该装置包括以下模块:

在位监测模块101,用于对机柜式服务器中的各个bmc进行在位监测;

ip获取命令发送模块102,用于在检测到目标bmc启动时,通过i2c总线向目标bmc发送bmcip获取命令;

ip获取显示模块103,用于接收目标bmc反馈的目标ip,并在可视化界面显示目标ip。

应用本发明实施例所提供的装置,对机柜式服务器中的各个bmc进行在位监测;在检测到目标bmc启动时,通过i2c总线向目标bmc发送bmcip获取命令;接收目标bmc反馈的目标ip,并在可视化界面显示目标ip。

机柜式服务器中的各个刀片服务器通过背板与smc相连接。因此,在获取刀片式服务器中的bmcip时,可对各个bmc进行在位监测。又因为,bmc在发生ip变动时,会重新启动,因而在监测到目标bmc启动时,则可通过i2c总线向目标bmc发送bmcip获取命令。然后,接收目标bmc反馈的目标ip,最终在可视化界面显示该目标ip即可,在smc可视化界面显示目标ip,可集中显示所有的bmcip,易用性强。可见,在本装置中,smc与bmc的通信可仅仅基于现有的背板连接关系,无需单独添加bmc串口线,也无需借助软件或人为操作进入系统,可降低复杂度。

在本发明的一种具体实施方式中,ip获取显示模块103,具体用于在目标bmc的槽位编号对应位置显示目标ip。

在本发明的一种具体实施方式中,在位监测模块101,具体用于利用gpio总线获取各个bmc的gpio信号;当gpio信号处于高电位时,bmc处于在位状态;当gpio信号处于低电位时,bmc未处于在位状态。

在本发明的一种具体实施方式中,ip获取命令发送模块102,具体用于在检测到目标节点的gpio信号由非在位状态变为在位状态,通过i2c总线遍历新增设备,并搜索新增设备对应的目标bmc。

在本发明的一种具体实施方式中,ip获取显示模块103,具体用于从指定内存映射中读取bmc反馈的目标ip。

在本发明的一种具体实施方式中,ip获取显示模块103,具体用于按照bmc远程管理工具中指定格式读取目标ip。

在本发明的一种具体实施方式中,ip获取命令发送模块102,具体用于向目标bmc发送bmcip获取命令;bmc获取命令具体为i2c命令,以便目标bmc利用显示或配置网络设备的命令获取目标ip,并进行反馈。

实施例三:

相应于上面的方法实施例,本发明实施例还提供了一种机柜式服务器,下文描述的一种机柜式服务器与上文描述的一种bmcip获取方法可相互对应参照。

参见图4所示,该机柜式服务器包括:

存储器d1,用于存储计算机程序;

处理器d2,用于执行计算机程序时实现上述方法实施例的bmcip获取方法的步骤。

上文所描述的bmcip获取方法中的步骤可以由机柜式服务器的结构实现。

实施例四:

相应于上面的方法实施例,本发明实施例还提供了一种可读存储介质,下文描述的一种可读存储介质与上文描述的一种bmcip获取方法可相互对应参照。

一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例的bmcip获取方法的步骤。

该可读存储介质具体可以为u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可存储程序代码的可读存储介质。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1