apache / apache/cloudstack

No. of CPU Cores in Compute Cluster doesnt display correctly when Cluster has oversubscription more than 1

Open
#9,693 12 comments 0 reactions 0 assignees View on GitHub
status:needs-functional-definition
Dominant language
Java
Stars
3.1k
Forks
1.4k
Avg merge
6d 19h
Merged PRs (30d)
32

Description

##### 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.

![Screenshot 2024-09-17 at 10 23 55 PM](https://github.com/user-attachments/assets/36c46ff6-7d2a-4641-80e5-48e28e040ad0)

![Screenshot 2024-09-17 at 10 24 05 PM](https://github.com/user-attachments/assets/68972682-4bf4-41d4-8d4e-d61b82132c35)

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.

![Screenshot 2024-09-17 at 10 34 14 PM](https://github.com/user-attachments/assets/550f0ab7-dc3b-4fbf-b757-75153761b17c)

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)
~~~

Contributor guide

Open the contributing guide

Research direction

Begin with the Compute Cluster UI behavior described for oversubscription and the settings cluster.cpu.allocated.capacity.notificationthreshold and cluster.cpu.allocated.capacity.disablethreshold. The payload names no source files or tests, so trace the displayed CPU allocation and threshold handling first; done means correct capacity display, notification, and prevention of new VM creation.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
cloud, infrastructure
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.