CN105608034B - 一种clump自动热插拔的方法 - Google Patents
一种clump自动热插拔的方法 Download PDFInfo
- Publication number
- CN105608034B CN105608034B CN201510976835.5A CN201510976835A CN105608034B CN 105608034 B CN105608034 B CN 105608034B CN 201510976835 A CN201510976835 A CN 201510976835A CN 105608034 B CN105608034 B CN 105608034B
- Authority
- CN
- China
- Prior art keywords
- clump
- bmc
- bios
- ipmi
- scripts
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 238000010438 heat treatment Methods 0.000 title claims abstract description 20
- 238000013515 script Methods 0.000 claims abstract description 49
- 230000006870 function Effects 0.000 claims abstract description 7
- 238000001514 detection method Methods 0.000 claims abstract description 5
- 230000001960 triggered effect Effects 0.000 claims abstract 2
- 238000009434 installation Methods 0.000 claims description 3
- 238000012423 maintenance Methods 0.000 claims description 3
- 230000006399 behavior Effects 0.000 claims 1
- 239000003550 marker Substances 0.000 claims 1
- 238000005516 engineering process Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
- G06F13/4081—Live connection to bus, e.g. hot-plugging
Abstract
本发明特别涉及一种clump自动热插拔的方法。该clump自动热插拔的方法,通过加载内核模块的方式触发node的物理热加操作,通过shell脚本实现对BMC管理系统发送热插或者热拔命令的检测以及clump的热插拔功能,通过ipmi工具进行BMC、BIOS和OS之间的信息同步。该clump自动热插拔的方法,当系统运行过程中故障管理系统提示某个clump节点上的内存或者CPU存在潜在故障风险时,可以在故障发生前一键式完成某一clump节点的热拔,并给FPGA断电后,将clump节点拔下来,换上新的clump节点,再一键式完成新clump节点的热插操作,这样就能很好地预防运行着关键业务的主机发生宕机的风险。
Description
技术领域
本发明涉及系统软件Linux内核技术领域,特别涉及一种clump自动热插拔的方法。
背景技术
随着计算机技术和虚拟化技术的发展,为了更加高效地使用资源实现了资源的弹性配置。作为资源的管理者我们除了利用虚拟化技术实现资源的弹性配置外,我们还可以通过硬件资源的添加和删除来动态管理我们的资源。为了更好地实现硬件资源的动态管理,内核开始支持RAS新特性,这一特性的出现使得硬件资源的动态配置可以在系统运行的时候把影响进一步降低。
基于此,本发明设计了一种clump自动热插拔的方法。该方法不仅可以在最短的时间内实现资源的弹性配置,还可以实现运行着关键业务主机的宕机风险大大降低。
发明内容
本发明为了弥补现有技术的缺陷,提供了一种简单高效的clump自动热插拔的方法。
本发明是通过如下技术方案实现的:
一种clump自动热插拔的方法,其特征在于:通过加载内核模块的方式触发node的物理热加操作,通过shell脚本实现对BMC管理系统发送热插或者热拔命令的检测以及clump的热插拔功能,通过ipmi工具进行BMC、BIOS和OS之间的信息同步。
本发明clump自动热插拔的方法,包括以下步骤:
(1)准备好内核、BIOS、shell脚本以及内核模块;
(2)搭建ipmi tool环境;
(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、ipmi_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请求脚本根据ipmi 0x2e 0x06命令返回的结果0101 01 00,得知BMC申请进行过clmup1的online操作,然后调用/opt/hotplug-scripts目录下的自动上线脚本auto-online.sh 01,为了防止auto-online.sh脚本受关闭shell窗口的影响,在运行auto-online.sh的时候需要以nohup的形式运行;
在auto-online.sh脚本中,首先根据参数找到该clump下包含的所有node,然后对所有node调用加载模块操作触发node的物理热加,然后对node下的所有CPU和memory进行逻辑热加操作;
在执行node的物理热加前OS运行ipmi 0x2e 0x05 01 01 01 01,把substatus标记位置为01,表明BIOS flow正在运行中,BIOS flow完成后,BIOS会把substatus标记位置为00表明BIOS flow执行完成,在BIOS flow执行完成后才可以执行下面的操作;BIOS和OS之间的同步主要是为了防止乱序执行,防止物理热加过程还没完成就执行逻辑热加流程;
执行完所有上线操作后,运行ipmi 0x2e 0x05 00 01 01 00通知BMC OS上线操作完成,BMC获得该通知后会更新clump1的状态为online,online按钮不可用,offline按钮可用。
为了让热加上的clump1将来能够顺利热拔,在逻辑热加的时候需要按照内存块从大到小的顺序执行echo online_movable > /sys /devices /system /memory /memoryXX /status操作,把物理热加到normal zone的内存转移到movable zone中。在开机启动项中需要在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)搭建ipmi tool环境;
(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、ipmi_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请求脚本根据ipmi 0x2e 0x06命令返回的结果0101 01 00,得知BMC申请进行过clmup1的online操作,然后调用/opt/hotplug-scripts目录下的自动上线脚本auto-online.sh 01,为了防止auto-online.sh脚本受关闭shell窗口的影响,在运行auto-online.sh的时候需要以nohup的形式运行;
在auto-online.sh脚本中,首先根据参数找到该clump下包含的所有node,然后对所有node调用加载模块操作触发node的物理热加,然后对node下的所有CPU和memory进行逻辑热加操作;
在执行node的物理热加前OS运行ipmi 0x2e 0x05 01 01 01 01,把substatus标记位置为01,表明BIOS flow正在运行中,BIOS flow完成后,BIOS会把substatus标记位置为00表明BIOS flow执行完成,在BIOS flow执行完成后才可以执行下面的操作;BIOS和OS之间的同步主要是为了防止乱序执行,防止物理热加过程还没完成就执行逻辑热加流程;
执行完所有上线操作后,运行ipmi 0x2e 0x05 00 01 01 00通知BMC OS上线操作完成,BMC获得该通知后会更新clump1的状态为online,online按钮不可用,offline按钮可用。
为了让热加上的clump1将来能够顺利热拔,在逻辑热加的时候需要按照内存块从大到小的顺序执行echo online_movable > /sys /devices /system /memory /memoryXX /status操作,把物理热加到normal zone的内存转移到movable zone中。在开机启动项中需要在movable_node.config文件中添加config_mvable_node=y,上述操作才会生效。
Claims (6)
1.一种clump自动热插拔的方法,其特征在于:通过加载内核模块的方式触发node的物理热加操作,通过shell脚本实现对BMC管理系统发送热插或者热拔命令的检测以及clump的热插拔功能,通过ipmi工具进行BMC、BIOS和OS之间的信息同步;
具体包括以下步骤:
(1)准备好内核、BIOS、shell脚本以及内核模块;
所述步骤(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 tool环境;
(3)搭建shell脚本运行环境;
(4)登录BMC管理系统触发热加或者热拔操作;
(5)根据OS从BMC获得的参数执行相应的操作。
2.根据权利要求1所述的clump自动热插拔的方法,其特征在于:所述步骤(2)中,为了能运行ipmi命令,需要加载ipmi_msghandler、ipmi_si和ipmi_devintf模块,同时,为了在系统启动后就可以运行ipmi命令,把加载模块代码放到/etc/rc.d/rc.local文件中。
3.根据权利要求1所述的clump自动热插拔的方法,其特征在于:所述步骤(3)中,为了实现检查BMC请求的shell脚本,以类似于守护进程的方式不停地检查,shell脚本以nohup和后台运行的方式执行,并把执行脚本放到/etc/rc.d/rc.local文件中,实现服务器启动后就能不停地检查BMC的请求。
4.根据权利要求1所述的clump自动热插拔的方法,其特征在于:所述步骤(4)中,登录进BMC管理系统,选择系统维护功能模块下的clump上下线功能,当前clump1节点处于offline状态,其offline按钮不可用,点击clump1对应的online按钮,触发clump1的上线操作。
5.根据权利要求1所述的clump自动热插拔的方法,其特征在于:所述步骤(5)中,自动检测BMC请求脚本根据ipmi 0x2e 0x06命令返回的结果01 01 01 00,得知BMC申请进行过clmup1的online操作,然后调用/opt/hotplug-scripts目录下的自动上线脚本auto-online.sh 01,为了防止auto-online.sh脚本受关闭shell窗口的影响,在运行auto-online.sh的时候需要以nohup的形式运行;
在auto-online.sh脚本中,首先根据参数找到该clump下包含的所有node,然后对所有node调用加载模块操作触发node的物理热加,然后对node下的所有CPU和memory进行逻辑热加操作;
在执行node的物理热加前OS运行ipmi 0x2e 0x05 01 01 01 01,把substatus标记位置为01,表明BIOS flow正在运行中,BIOS flow完成后,BIOS会把substatus标记位置为00表明BIOS flow执行完成,在BIOS flow执行完成后才可以执行下面的操作;BIOS和OS之间的同步主要是为了防止乱序执行,防止物理热加过程还没完成就执行逻辑热加流程;
执行完所有上线操作后,运行ipmi 0x2e 0x05 00 01 01 00通知BMC OS上线操作完成,BMC获得该通知后会更新clump1的状态为online,online按钮不可用,offline按钮可用。
6.根据权利要求5所述的clump自动热插拔的方法,其特征在于:为了让热加上的clump1将来能够顺利热拔,在逻辑热加的时候需要按照内存块从大到小的顺序执行echoonline_movable > /sys /devices /system /memory /memory XX /status操作,把物理热加到normal zone的内存转移到movable zone中;在开机启动项中需要在movable_node.config文件中添加config_mvable_node=y,上述操作才会生效。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510976835.5A CN105608034B (zh) | 2015-12-23 | 2015-12-23 | 一种clump自动热插拔的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510976835.5A CN105608034B (zh) | 2015-12-23 | 2015-12-23 | 一种clump自动热插拔的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105608034A CN105608034A (zh) | 2016-05-25 |
CN105608034B true CN105608034B (zh) | 2018-08-31 |
Family
ID=55987983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510976835.5A Active CN105608034B (zh) | 2015-12-23 | 2015-12-23 | 一种clump自动热插拔的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105608034B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111143104A (zh) * | 2019-12-29 | 2020-05-12 | 苏州浪潮智能科技有限公司 | 一种内存异常的处理方法、系统、电子设备及存储介质 |
CN117251330B (zh) * | 2023-11-17 | 2024-02-13 | 紫光恒越技术有限公司 | 一种监测配件拔出插入的装置及应用产品 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101169682A (zh) * | 2006-10-27 | 2008-04-30 | 环达电脑(上海)有限公司 | 一种支持硬盘热插拔的系统 |
CN104615572A (zh) * | 2015-02-27 | 2015-05-13 | 苏州科达科技股份有限公司 | 热插拔处理系统及方法 |
-
2015
- 2015-12-23 CN CN201510976835.5A patent/CN105608034B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101169682A (zh) * | 2006-10-27 | 2008-04-30 | 环达电脑(上海)有限公司 | 一种支持硬盘热插拔的系统 |
CN104615572A (zh) * | 2015-02-27 | 2015-05-13 | 苏州科达科技股份有限公司 | 热插拔处理系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105608034A (zh) | 2016-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9032200B2 (en) | Method of installing virtual service processor (VSP) to computing device and application of the same | |
CN107528801B (zh) | 从架顶式交换机提供超融合基础架构裸机系统 | |
CN108038019B (zh) | 一种基板管理控制器的故障自动恢复方法及系统 | |
CN107209671B (zh) | 计算机中启动操作的动态自动监测和控制 | |
CN111989681A (zh) | 自动部署的信息技术(it)系统和方法 | |
EP4083786A1 (en) | Cloud operating system management method and apparatus, server, management system, and medium | |
US11132187B2 (en) | Bare metal provisioning of software defined infrastructure | |
US9912535B2 (en) | System and method of performing high availability configuration and validation of virtual desktop infrastructure (VDI) | |
WO2018095414A1 (zh) | 虚拟机故障的检测和恢复方法及装置 | |
US10379922B1 (en) | Error recovery in a virtual machine-based development environment | |
US10541862B2 (en) | VNF processing policy determining method, apparatus, and system | |
CN103200036B (zh) | 一种电力系统云计算平台的自动化配置方法 | |
CN110098952B (zh) | 一种服务器的管理方法和装置 | |
CN113656147B (zh) | 一种集群部署方法、装置、设备及存储介质 | |
CN105306225A (zh) | 一种基于Openstack的物理机远程关机方法 | |
US10949111B2 (en) | Updating operating system images of inactive compute instances | |
US10983877B1 (en) | Backup monitoring with automatic verification | |
WO2015062217A1 (zh) | 虚拟桌面系统中外设的接入处理方法及装置 | |
US20230229423A1 (en) | Pushing a firmware update patch to a computing device via an out-of-band path | |
US10972350B2 (en) | Asynchronous imaging of computing nodes | |
CN105608034B (zh) | 一种clump自动热插拔的方法 | |
US20230229481A1 (en) | Provisioning dpu management operating systems | |
US10353729B1 (en) | Managing service dependencies across virtual machines in a development environment | |
US10656959B2 (en) | Shutting down of a virtual system | |
CN111090537A (zh) | 集群启动方法、装置、电子设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230406 Address after: 250000 building S02, No. 1036, Langchao Road, high tech Zone, Jinan City, Shandong Province Patentee after: Shandong Inspur Scientific Research Institute Co.,Ltd. Address before: No. 1036, Shandong high tech Zone wave road, Ji'nan, Shandong Patentee before: INSPUR GROUP Co.,Ltd. |
|
TR01 | Transfer of patent right |