清理长时间处于非最终状态的集群¶
https://blueprints.launchpad.net/sahara/+spec/periodic-cleanup
本规范旨在引入一个周期性任务,用于清理长时间处于非最终状态的旧集群。
问题描述¶
目前,由于各种原因(例如,在配置过程中 Sahara 服务重启或 Neutron 无法分配浮动 IP),Sahara 集群可能会卡住。 这可能导致集群长时间占用资源。 这可能会发生在不同的租户中,并且很难手动检查这些情况。
提议的变更¶
在配置文件的“periodic”部分添加“cleanup_time_for_nonfinal_clusters”参数。
基于此配置,周期性任务将搜索处于非最终状态且未更新指定时间段的集群。
“非最终”状态包括所有集群状态,除了“Active”(活动)和“Error”(错误)状态。
“cleanup_time_for_nonfinal_clusters”参数将以小时为单位。 非正值将表示禁用清理选项。
默认值将为 0,以保持向后兼容性(用户不希望升级后所有非最终集群都被删除)。
将使用“clusters”表的“updated_at”列来确定上次更改。 这并非 100% 准确,但足够好。 每当集群状态发生变化时,该字段都会更改。
替代方案¶
将此功能添加到外部服务(例如 Blazar)。
数据模型影响¶
无。
REST API 影响¶
无。
其他最终用户影响¶
无。
部署者影响¶
无。
开发者影响¶
无。
Sahara-image-elements impact¶
无。
Sahara-dashboard / Horizon 影响¶
无。
实现¶
负责人¶
- 主要负责人
alazarev (Andrew Lazarev)
- 其他贡献者
无
工作项¶
实现该功能
记录该功能
依赖项¶
无。
测试¶
手动。
文档影响¶
需要进行文档说明。