SOL介绍
SOL全称为Serial Over LAN,意为局域网承载串行,指远程客户终端与单板的串口之间建立的串行数据传输通道,通过该功能,用户可以远程登录到指定的单板串口。当前BMC支持通过ipmi命令或cli命令创建sol会话。
IPMI SOL使用方法
连接sol命令
命令:ipmitool -H bmc_ip -I lanplus -U username -P password -C 17 sol activate
ipmi sol只能连接到os串口
使用示例:
断开sol命令
命令:ipmitool -H bmc_ip -I lanplus -U username -P password -C 17 sol deactivate
使用示例:
退出sol命令
连接sol成功后,如果需要退出sol的话,输入 "~." 退出
魔术键
魔术键是指在ipmi sol会话中,通过特定按键组合触发的特殊命令,用于执行SOL会话的特殊操作
魔术键使用方法
魔术键功能开启:执行echo 1 > /proc/sys/kernel/sysrq
魔术键功能关闭:执行echo 0 > /proc/sys/kernel/sysrq
功能开启后可通过两种方式触发魔术键:
- echo 'h' > /proc/sysrq-trigger
- 通过按下~B进入中断,然后再输入对应的魔术键触发
常用魔术键
- 'h':打印帮助信息
- 't':打印当前任务列表和任务信息(该魔术键使用后会造成刷屏)
- 'b':立刻重启系统
CLI SOL 使用方法
连接sol命令
命令:ipmcset -t sol -d activate -v option mode
option取值为1、2、4、5:
1表示sol连接os串口方向
2表示sol连接bmc串口方向
4和5表示sol连接raid卡串口方向
mode取值为0或1:
0表示共享模式,可最多打开两个cli sol会话
1表示独占模式,只允许打开一个cli sol会话
使用示例:
断开sol命令
命令:ipmcset -t sol -d deactivate -v index
index取值为1或2;根据已连接的cli sol实例进行断连
使用示例:
退出sol命令
连接sol成功后,如果需要退出sol的话,按下 "Esc" 键和 "(" 键退出
设置cli sol超时时间
命令:ipmcset -t sol -d timeout -v value
value取值范围为1到480,单位:分钟;默认值为15分钟
注意: 该命令设置的超时时间仅对cli sol生效,对ipmi sol无效
使用示例:
SOL 使用常见问题
【问题1】 cli sol连接bmc串口失败,会话打开后立刻提示sol连接关闭 【问题原因】跳线帽存在时无法切换串口方向
【解决方法】将跳线帽拔除
【问题2】 ipmi sol连接失败
【现象1】提示用户权限不足 【原因1】可能原因有两个:
- ipmi sol命令需要操作员及以上权限才能调用,可能使用了普通用户打开sol
- sol自身也存在权限,通过
ipmitool -H bmc_ip -I lanplus -U username -P password -C 17 sol info命令确认回显中Privilege Level的权限等级是什么,如果显示为Administrator的话无法通过操作员打开sol
【解决方法1】
- 使用操作员或管理员打开sol会话
- 通过
ipmitool -H bmc_ip -I lanplus -U username -P password -C 17 sol set privilege-level operator修改为操作员权限(就算修改为user级别也不可以通过普通用户打开sol,除非定制命令权限为user才可以)
【现象2】提示sol使能关闭 【原因2】sol的使能被关闭 【解决方法2】通过ipmitool -H bmc_ip -I lanplus -U username -P password -C 17 sol set enabled true将sol使能打开
【现象3】提示sol由另一个会话开启 【原因3】
- 已经使用cli连接sol,ipmi sol与cli sol会话不能共存
- 已经有ipmi sol会话存在
【解决方法3】
- 将cli sol会话断开
- 通过
ipmitool -H bmc_ip -I lanplus -U username -P password -C 17 sol deactivate断开sol会话
【现象4】提示找不到算法套件 【原因4】可能原因有两个:
- 通过-C指定的算法套件未开启
- 调用命令的用户权限大于通道权限限制(虽然提示为找不到算法套件,但实际并不是因为算法套件的问题,可以通过app.log是否有
the channel no privilay的日志确认)
【解决方法4】
- 通过redfish接口
/redfish/v1/Managers/1/SecurityService修改RMCPCipherSuites属性,将对应的算法套件使能打开 - 通过在带内os调用ipmi命令
ipmitool raw 0x06 0x40 0x01 0x22 0x44修改通道权限限制为Administrator
【问题3】 sol连接os串口会话打开后,输入无响应,也没有信息回显
【问题原因】可能为os未上电导致
【解决方法】确认os是否已经上电,也可以通过kvm确认os是否正常
【问题4】 ipmi sol执行looptest命令完成后,sol连接os方向卡住
【问题原因】该问题与os的配置有关系,systemd的配置文件/etc/systemd/system.conf文件有默认配置
DefaultStartLimitIntervalSec=10s
DefaultStartLimitBurst=5含义为服务重启限流:10秒内允许最大重启次数为5次
因此出现sol连接os界面卡住的原因为执行looptest命令导致os上的serial-getty@ttyAMA0.service服务重启失败,因为超过了一段时间内服务重启的最大次数
【解决方法】
1. 执行systemctl restart serial-getty@ttyAMA0.service重启服务
2. 修改/etc/systemd/system.conf文件,修改为DefaultStartLimitBurst=0,即不限制重启次数【问题5】 ipmi sol执行魔术键无回显或回显数据较少
【问题原因】可能未开启魔术键功能或未设置魔术键打印等级
【解决方法】
1. 执行echo 1 > /proc/sys/kernel/sysrq开启
2. 执行echo 9 > /proc/sysrq-trigger调整魔术键打印等级【问题6】 ipmi sol不指定-C 17算法套件时调用命令失败
【问题原因】ipmitool工具只有在1.8.19版本才能通过不指定-C使用算法套件调用命令成功,ipmitool 1.8.18及以前的版本均需要通过-C指定算法套件才可以调用ipmi命令
【解决方法】使用ipmitool 1.8.19版本调用ipmi命令
【问题7】 ipmi sol创建sol会话后,持续输入字符不会换行,输入字符会重叠覆盖之前的字符
【问题原因】客户端显示问题,非sol自身问题
【解决方法】通过xshell进行sol登录,输入字符会自动换行显示