No. of CPU Cores in Compute Cluster doesnt display correctly when Cluster has oversubscription more than 1
- 主要言語
- Java
- スター
- 3.1k
- フォーク
- 1.4k
- 平均マージ
- 6日 19時間
- マージ済み PR(30日)
- 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)
~~~
コントリビューションガイド
調査の方向性
oversubscription について説明されている 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