No. of CPU Cores in Compute Cluster doesnt display correctly when Cluster has oversubscription more than 1
- 主要语言
- Java
- 星标
- 3.1k
- 派生
- 1.4k
- 平均合并
- 6 天 19 小时
- 30 天内合并 PR
- 32
描述
##### ISSUE TYPE
* Bug Report
##### COMPONENT NAME
~~~
Compute Cluster UI
~~~
##### CLOUDSTACK VERSION
~~~
4.19.1.1
~~~
##### CONFIGURATION
##### OS / ENVIRONMENT
##### SUMMARY
We have 2 Compute Clusters:
- Cluster 1 : Oversubcription = 1
- Cluster 2 : Oversubcription = 2
Refering to the screenshot below, Cluster 1 is showing the correct No. of CPU Cores allocated.
But for Cluster 2, it seems inaccurate. The number of allocation exceeded whats available. Resulting in a UI error.


But the bigger problem now, is that both clusters have exceeded the allocation threshold, but there was no notification sent. And neither did cloudstack stop users from creating new virtual machines from the clusters.
Without this, Admins would not be able to ensure n+1 sufficient capacity in the event of a node failure.

In summary, there are 3 Issues:
- No. Of Allocated CPU Cores should display the full available amount, after oversubscription
- Admin should get Notification if exceeded the global setting threshold (cluster.cpu.allocated.capacity.notificationthreshold)
- User should not be able to create resources into the cluster after exceeding global setting threshold (cluster.cpu.allocated.capacity.disablethreshold)
##### STEPS TO REPRODUCE
~~~
~~~
##### EXPECTED RESULTS
~~~
- No. Of Allocated CPU Cores should display the full available amount, after oversubscription
- Admin should get Notification if exceeded the global setting threshold (cluster.cpu.allocated.capacity.notificationthreshold)
- User should not be able to create resources into the cluster after exceeding global setting threshold (cluster.cpu.allocated.capacity.disablethreshold)
~~~
##### ACTUAL RESULTS
~~~
- No. Of Allocated CPU Cores should not displaying total available cores correctly, after oversubscription.
- Admin did not get Notification if exceeded the global setting threshold (cluster.cpu.allocated.capacity.notificationthreshold)
- User is able to create resources into the cluster after exceeding global setting threshold (cluster.cpu.allocated.capacity.disablethreshold)
~~~
贡献指南
调研方向
从针对超额订阅所描述的 Compute Cluster UI 行为,以及设置 cluster.cpu.allocated.capacity.notificationthreshold 和 cluster.cpu.allocated.capacity.disablethreshold 开始。payload 未指明源文件或测试,因此先跟踪 CPU 分配的显示和阈值处理;当容量显示、通知以及阻止创建新 VM 都正确时,即表示完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java
- 领域
- cloud, infrastructure
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100