Live scaling fails with “unhandled exception” when cpu.corespersocket is set (need support for consistent CPU sockets)
- Lenguaje dominante
- Java
- Estrellas
- 3.1k
- Forks
- 1.4k
- Merge medio
- 6 d 19 h
- PR fusionados (30 d)
- 32
Descripción
### 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.
Guía de contribución
Línea de trabajo
No se ha indicado ningún archivo fuente ni ninguna prueba. Empieza reproduciendo el escalado de CPU en vivo en VMware con cpu.corespersocket=2 y, a continuación, rastrea el punto de entrada del escalado en vivo de VMware y su gestión de la reconfiguración de la VM. Se considera terminado cuando el escalado ya no provoca una excepción no gestionada y la configuración de sockets/núcleos se conserva o su limitación queda claramente documentada.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Área
- cloud, infrastructure
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 45/100