背景
需求多系统场景下,需要支持用户通过创建远程控制台会话,并且同时支持连接到多个主机,因此需要基于不同主机进行会话管理
关联ISSUE
[需求]: 支持多系统场景下KVM会话管理 - openUBMC/mdb_interface - GitCode
评审点
新增资源协作方法NewRemoteConsoleSessionBySystemId,支持多系统场景创建远程控制台会话
详细描述
资源path(已有):/bmc/kepler/SessionService/Sessions
资源interface(已有):bmc.kepler.SessionService.Sessions
| 方法名称 | 变化类型 | 读写权限 | 请求签名 | 请求参数 | 响应签名 | 响应参数 | 接口说明 |
|---|---|---|---|---|---|---|---|
| NewRemoteConsoleSessionBySystemId | 新增方法 | ConfigureSelf | a{ss}syyy | Token、SystemId、SessionType、SessionMode | ss | RemoteConsoleToken, RemoteConsoleSessionId | 多系统场景创建远程控制台会话 |
请求参数说明
Token:签名为 s, 表示认证信息
SystemId:签名为 y,系统主机的id(在业务组件中效验)
SessionType:签名为 y,表示会话的类型
取值范围:{
"GUI": 0,
"Redfish": 1,
"CLI": 2,
"SSO": 3,
"KVM": 4,
"VNC": 5,
"KVM_VMM": 6,
"VIDEO": 7,
"All": 255
}
SessionMode:签名为y,表示会话的模式
取值范围: {
"Shared": 0,
"Exclusive": 1
}
响应参数说明
RemoteConsoleToken:签名为 s, 返回认证信息
RemoteConsoleSessionId:签名为 s,返回会话的id
评审结论
结论: 不新增方法接口,上下文可以传SystemId,通过上下文传进来,在组件内部进行业务处理