Retrying host maintenance falsely marks already-migrated VMs as stopped
- 主要语言
- Java
- 星标
- 3.1k
- 派生
- 1.4k
- 平均合并
- 6 天 19 小时
- 30 天内合并 PR
- 32
描述
CLOUDSTACK VERSION
4.22.1.1, KVM hypervisor
SUMMARY
Putting a host into maintenance moves its VMs off one at a time, which
can take a while. Requesting maintenance again on the same host before
the first request finishes causes it to retry moving every VM still
listed against that host, including ones already moved. That retry
fails as expected, but for some VMs it confuses CloudStack into
thinking the VM was powered off, and it gets marked stopped even though
it was never touched and kept running the whole time.
EXPECTED
Requesting maintenance again should not retry VMs already moved.
ACTUAL
Some already-moved VMs get falsely marked stopped.
NOTE
The false "stopped" status seems to come from CloudStack losing track
of which VMs are on which host. That could plausibly happen from causes
other than this one, but we only have evidence of it via this scenario.
贡献指南
调研方向
首先,在 CloudStack 4.22.1.1 中的 KVM 主机上复现重复的维护请求,然后跟踪主机维护 VM 的迁移流程以及主机的 VM 列表如何更新。完成的标准是:第二次请求会跳过已经迁移的 VM,并且这些 VM 会继续运行,而不是被标记为已停止。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java
- 领域
- cloud, infrastructure
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 活跃
- 描述清晰度
- 基本清楚
- 新手友好度
- 42/100