将主机信息添加到实例操作事件¶
目前,实例 操作 事件记录不包含操作事件发生的主机信息。将此字段包含到实例 操作 事件记录中,将使管理员更容易定位错误发生的位置,并能更快地解决问题。
此蓝图建议将host字段添加到InstanceActionEvent对象和相关的API响应中。
https://blueprints.launchpad.net/nova/+spec/add-host-to-instance-action-events
问题描述¶
目前,管理员可以使用实例操作API查找实例操作信息,这对管理员和操作员非常有用。但是事件的主机信息没有被记录,也没有暴露给用户。
此主机信息有助于管理员找到事件发生的主机,特别是当发生一些失败事件时,管理员可以尽快找到失败的主机并查看日志。
用例¶
作为上层管理软件管理员,我希望能够尽快查询失败事件发生的主机,然后我可以在此主机中找到更多的系统状态和日志信息。
提议的变更¶
目前,实例操作事件记录在其上有一个host列 [1],我们只需要在记录事件时记录主机信息,并在响应中添加主机字段。
将
host字段添加到InstanceActionEvent对象。在记录事件时记录主机信息。
为
GET /servers/{UUID}/os-instance-actions/{REQ_ID}添加一个API微版本,以包含响应中的host字段。
备选方案¶
或者,上层管理软件(或管理员)可以监听版本化的实例通知 [2],该通知包含节点和实例的主机。
数据模型影响¶
为InstanceActionEvent对象添加一个新的host字段,以记录事件发生的主机。
REST API 影响¶
为GET /servers/{server_id}/os-instance-actions/{req_id} API添加一个新的微版本,以包含管理员的host字段和管理员及非管理员用户的混淆哈希主机ID hostId字段。
对于管理员用户
{ "instanceAction": { "action": "stop", "events": [ { "event": "compute_stop_instance", "finish_time": "2017-12-07T11:07:06.431902", "result": "Success", "start_time": "2017-12-07T11:07:06.251280", "traceback": null, "host": "host1", "hostId": "8a8d66db9eed58f2b1283d23acc9a32691290b603a716d81d8ed8c4e" } ], "instance_uuid": "b48316c5-71e8-45e4-9884-6c78055b9b13", "message": "", "project_id": "6f70656e737461636b20342065766572", "request_id": "req-3293a3f1-b44c-4609-b8d2-d81b105636b8", "start_time": "2017-12-07T11:07:06.088644", "updated_at": "2017-12-07T11:07:06.431902", "user_id": "fake" } }
对于非管理员用户
{ "instanceAction": { "action": "stop", "events": [ { "event": "compute_stop_instance", "finish_time": "2017-12-07T11:07:06.431902", "result": "Success", "start_time": "2017-12-07T11:07:06.251280", "hostId": "8a8d66db9eed58f2b1283d23acc9a32691290b603a716d81d8ed8c4e" } ], "instance_uuid": "b48316c5-71e8-45e4-9884-6c78055b9b13", "message": "", "project_id": "6f70656e737461636b20342065766572", "request_id": "req-3293a3f1-b44c-4609-b8d2-d81b105636b8", "start_time": "2017-12-07T11:07:06.088644", "updated_at": "2017-12-07T11:07:06.431902", "user_id": "fake" } }
安全影响¶
新添加的host字段的显示将由与traceback字段相同的策略控制,如果策略阻止用户,则将显示混淆哈希主机ID而不是主机名。
通知影响¶
无
其他最终用户影响¶
无
性能影响¶
无
其他部署者影响¶
无
开发人员影响¶
无
升级影响¶
无
实现¶
负责人¶
- 主要负责人
江益坤
- 其他贡献者
Kevin Zheng
工作项¶
为
InstanceActionEvent对象添加一个新的host字段,以记录事件发生的主机。为
GET /servers/{server_id}/os-instance-actions/{req_id}API添加一个新的微版本,以包含管理员的host字段和非管理员用户的hostId字段。在 python-novaclient 中采用新的微版本。
添加相关的测试。
依赖项¶
无
测试¶
需要新的树内功能和单元测试。
文档影响¶
更新API参考以包含此更改。
参考资料¶
历史¶
发布名称 |
描述 |
|---|---|
Rocky |
提议 |