apache / apache/cloudstack

Live scaling fails with “unhandled exception” when cpu.corespersocket is set (need support for consistent CPU sockets)

Ouverte
#12,108 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
component:compute component:vmware Severity:Major type:bug
Langage dominant
Java
Étoiles
3.1k
Forks
1.4k
Merge moyen
6 j 19 h
PR mergées (30 j)
32

Description

### problem

I’m trying to enforce a consistent CPU socket configuration across VMs by using the global setting cpu.corespersocket.
However, when this setting is enabled, live CPU scaling fails with the message:

`unhandled exception`

If I remove the setting cpu.corespersocket, the same VM live-scales successfully, so the issue is directly related to that parameter.

For some environments (especially those with CPU-based licensing tied to sockets), it is important to make sure that the socket count is always fixed (e.g., always 2 sockets regardless of the number of cores assigned).

At the moment, CloudStack does not seem to reliably honor or handle this setting during live scaling operations.

### versions

Apache CloudStack: 4.22.0
Hypervisor: VMware vCenter + ESXi
Infrastructure: Standard VMware cluster, shared storage
VM type: User instance with dynamic scaling enabled

### The steps to reproduce the bug

1. Set the setting on any VM/instance:
> `cpu.corespersocket = 2`
2. Turn on the VM/instance
3. Scale VM/instance
4. `Unhandled exception` error pops up

### What to do about it?

- Please confirm whether the cpu.corespersocket setting is fully supported for VMware live scaling.
- If this is a bug, kindly update VM reconfigure logic to correctly compute:
`cores = total_vcpu / cpu.corespersocket`
`sockets = cpu.corespersocket`
- If this is a limitation, please advise if CloudStack can support a feature to force a fixed socket count (e.g., always 2 sockets) regardless of vCPU changes.
- This is important for environments that rely on socket-based licensing.

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Aucun fichier source ni test n’est indiqué. Commencez par reproduire le scaling CPU à chaud sur VMware avec cpu.corespersocket=2, puis suivez le point d’entrée du scaling à chaud de VMware et la gestion de la reconfiguration de la VM. Le travail est considéré comme terminé lorsque le scaling ne lève plus d’exception non gérée et que la configuration socket/cœur est soit préservée, soit que sa limitation est clairement documentée.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Domaine
cloud, infrastructure
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
Calme
Clarté
Plutôt claire
Accessibilité débutants
45/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.