一种clump自动热插拔的方法技术

技术编号:15118372 阅读:410 留言:0更新日期:2017-04-09 16:08
本发明专利技术特别涉及一种clump自动热插拔的方法。该clump自动热插拔的方法,通过加载内核模块的方式触发node的物理热加操作,通过shell脚本实现对BMC管理系统发送热插或者热拔命令的检测以及clump的热插拔功能,通过ipmi工具进行BMC、BIOS和OS之间的信息同步。该clump自动热插拔的方法,当系统运行过程中故障管理系统提示某个clump节点上的内存或者CPU存在潜在故障风险时,可以在故障发生前一键式完成某一clump节点的热拔,并给FPGA断电后,将clump节点拔下来,换上新的clump节点,再一键式完成新clump节点的热插操作,这样就能很好地预防运行着关键业务的主机发生宕机的风险。

【技术实现步骤摘要】

本专利技术涉及系统软件Linux内核
,特别涉及一种clump自动热插拔的方法
技术介绍
随着计算机技术和虚拟化技术的发展,为了更加高效地使用资源实现了资源的弹性配置。作为资源的管理者我们除了利用虚拟化技术实现资源的弹性配置外,我们还可以通过硬件资源的添加和删除来动态管理我们的资源。为了更好地实现硬件资源的动态管理,内核开始支持RAS新特性,这一特性的出现使得硬件资源的动态配置可以在系统运行的时候把影响进一步降低。基于此,本专利技术设计了一种clump自动热插拔的方法。该方法不仅可以在最短的时间内实现资源的弹性配置,还可以实现运行着关键业务主机的宕机风险大大降低。
技术实现思路
本专利技术为了弥补现有技术的缺陷,提供了一种简单高效的clump自动热插拔的方法。本专利技术是通过如下技术方案实现的:一种clump自动热插拔的方法,其特征在于:通过加载内核模块的方式触发node的物理热加操作,通过shell脚本实现对BMC管理系统发送热插或者热拔命令的检测以及clump的热插拔功能,通过ipmi工具进行BMC、BIOS和OS之间的信息同步。本专利技术clump自动热插拔的方法,包括以下步骤:(1)准备好内核、BIOS、shell脚本以及内核模块;(2)搭建ipmitool环境;(3)搭建shell脚本运行环境;(4)登录BMC管理系统触发热加或者热拔操作;(5)根据OS从BMC获得的参数执行相应的操作。所述步骤(1)中,首先到Linux内核官网下载一个对RAS支持较好的内核,打上patch并正确配置编译选项使其更好地支持内核的RAS特性,编译安装内核把内核镜像文件准备好;然后把支持RAS特性的BIOS程序烧录到BIOS中,启动服务器,并对BIOS进行设置,使其支持CPU和内存的热插拔;最后把实现不停检测BMC请求的shell脚本check-bmc.sh和实现clump自动化热加的shell脚本auto-online.sh以及实现clump自动化热拔的shell脚本auto-offline.sh准备好,放到/opt/hotplug-scripts/目录下;把实现触发node物理热加的模块编译好也放到/opt/hotplug-scripts/目录下。所述步骤(2)中,为了能运行ipmi命令,需要加载ipmi_msghandler、impi_si和ipmi_devintf模块,同时,为了在系统启动后就可以运行ipmi命令,把加载模块代码放到/etc/rc.d/rc.local文件中。所述步骤(3)中,为了实现检查BMC请求的shell脚本,以类似于守护进程的方式不停地检查,shell脚本以nohup和后台运行的方式执行,并把执行脚本放到/etc/rc.d/rc.local文件中,实现服务器启动后就能不停地检查BMC的请求。所述步骤(4)中,登录进BMC管理系统,选择系统维护功能模块下的clump上下线功能,当前clump1节点处于offline状态,其offline按钮不可用,点击clump1对应的online按钮,触发clump1的上线操作。所述步骤(5)中,自动检测BMC请求脚本根据ipmi0x2e0x06命令返回的结果01010100,得知BMC申请进行过clmup1的online操作,然后调用/opt/hotplug-scripts目录下的自动上线脚本auto-online.sh01,为了防止auto-online.sh脚本受关闭shell窗口的影响,在运行auto-online.sh的时候需要以nohup的形式运行;在auto-online.sh脚本中,首先根据参数找到该clump下包含的所有node,然后对所有node调用加载模块操作触发node的物理热加,然后对node下的所有CPU和memory进行逻辑热加操作;在执行node的物理热加前OS运行ipmi0x2e0x0501010101,把substatus标记位置为01,表明BIOSflow正在运行中,BIOSflow完成后,BIOS会把substatus标记位置为00表明BIOSflow执行完成,在BIOSflow执行完成后才可以执行下面的操作;BIOS和OS之间的同步主要是为了防止乱序执行,防止物理热加过程还没完成就执行逻辑热加流程;执行完所有上线操作后,运行ipmi0x2e0x0500010100通知BMCOS上线操作完成,BMC获得该消息后会更新clump1的状态为online,online按钮不可用,offline按钮可用。为了让热加上的clump1将来能够顺利热拔,在逻辑热加的时候需要按照内存块从大到小的顺序执行echoonline_movable>/sys/devices/system/memory/memoryXX/status操作,把物理热加到normalzone的内存转移到movablezone中。在开机启动项中也需要添加movable_node.config文件中需要config_mvable_node=y,上述操作才会生效。本专利技术的有益效果是:该clump自动热插拔的方法,当系统运行过程中故障管理系统提示某个clump节点上的内存或者CPU存在潜在故障风险时,可以在故障发生前一键式完成某一clump节点的热拔,并给FPGA断电后,将clump节点拔下来,换上新的clump节点,再一键式完成新clump节点的热插操作,这样就能很好地预防运行着关键业务的主机发生宕机的风险。附图说明附图1为本专利技术clump自动热插拔的方法示意图。具体实施方式为了使本专利技术所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本专利技术进行详细的说明。应当说明的是,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。该clump自动热插拔的方法,通过加载内核模块的方式触发node的物理热加操作,通过shell脚本实现对BMC管理系统发送热插或者热拔命令的检测以及clump的热插拔功能,通过ipmi工具进行BMC、BIOS和OS之间的信息同步。本专利技术clump自动热插拔的方法,包括以下步骤:(1)准备好内核、BIOS、shell脚本以及内核模块;(2)搭建ipmitool环境;(3)搭建shell脚本运行环境;(4)登录BMC管理系统触发热加或者热拔操作;(5)根据OS从BMC获得的参数执行相应的操作。所述步骤(1)中,首先到Linux内核官网下载一个对RAS支持较好的内核,打上patch并正确配置编译选项使其更好地支持内核的RAS特性,编译安装内核把内核镜像文件准备好;然后把支持RAS特性的BIOS程序烧录到BIOS中,启动服务器,并对BIOS进行设置,使其支持CPU和内存的热插拔;最后把实现不停检测BMC请求的shell脚本check-bmc.sh和实现clump自动化热加的shell脚本au本文档来自技高网...

【技术保护点】
一种clump自动热插拔的方法,其特征在于:通过加载内核模块的方式触发node的物理热加操作,通过shell脚本实现对BMC管理系统发送热插或者热拔命令的检测以及clump的热插拔功能,通过ipmi工具进行BMC、BIOS和OS之间的信息同步。

【技术特征摘要】
1.一种clump自动热插拔的方法,其特征在于:通过加载内核模块的方式触发node的物理热加操作,通过shell脚本实现对BMC管理系统发送热插或者热拔命令的检测以及clump的热插拔功能,通过ipmi工具进行BMC、BIOS和OS之间的信息同步。
2.根据权利要求1所述的clump自动热插拔的方法,其特征在于包括以下步骤:
(1)准备好内核、BIOS、shell脚本以及内核模块;
(2)搭建ipmitool环境;
(3)搭建shell脚本运行环境;
(4)登录BMC管理系统触发热加或者热拔操作;
(5)根据OS从BMC获得的参数执行相应的操作。
3.根据权利要求2所述的clump自动热插拔的方法,其特征在于:所述步骤(1)中,首先到Linux内核官网下载一个对RAS支持较好的内核,打上patch并正确配置编译选项使其更好地支持内核的RAS特性,编译安装内核把内核镜像文件准备好;然后把支持RAS特性的BIOS程序烧录到BIOS中,启动服务器,并对BIOS进行设置,使其支持CPU和内存的热插拔;最后把实现不停检测BMC请求的shell脚本check-bmc.sh和实现clump自动化热加的shell脚本auto-online.sh以及实现clump自动化热拔的shell脚本auto-offline.sh准备好,放到/opt/hotplug-scripts/目录下;把实现触发node物理热加的模块编译好也放到/opt/hotplug-scripts/目录下。
4.根据权利要求2所述的clump自动热插拔的方法,其特征在于:所述步骤(2)中,为了能运行ipmi命令,需要加载ipmi_msghandler、impi_si和ipmi_devintf模块,同时,为了在系统启动后就可以运行ipmi命令,把加载模块代码放到/etc/rc.d/rc.local文件中。
5.根据权利要求2所述的clump自动热插拔的方法,其特征在于:所述步骤(3)中,为了实现检查BMC请求的shell脚本,以类似于守护进程的方式不停地检查,shell脚本以nohup和后台运行的方式执行,并把执行脚本放到/etc/rc.d/rc.local文件中,实现服务器启动后就能不停地检查BMC的请求。
6.根据权利要求2所述的clump自动热插拔的方法,其特征在于...

【专利技术属性】
技术研发人员:宋秀苗王文悦
申请(专利权)人:浪潮集团有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1