apache / apache/cloudstack

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

Aperta
#12,108 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub
component:compute component:vmware Severity:Major type:bug
Lingua principale
Java
Stelle
3.1k
Fork
1.4k
Merge medio
6g 19h
PR unite (30g)
32

Descrizione

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

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Non è indicato alcun file sorgente né alcun test. Inizia riproducendo lo scaling live della CPU su VMware con cpu.corespersocket=2, quindi traccia il punto di ingresso dello scaling live di VMware e la relativa gestione della riconfigurazione della VM. Il lavoro è completato quando lo scaling non genera più un’eccezione non gestita e la configurazione socket/core viene preservata oppure la sua limitazione viene documentata chiaramente.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Ambito
cloud, infrastructure
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
45/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.