For the complete documentation index, see llms.txt. This page is also available as Markdown.

Sobrealocación de CPU y planificación de recursos

Comprender la asignación de CPU, las proporciones de sobreasignación y las implicaciones de rendimiento en VergeOS, incluidas las proporciones recomendadas por tipo de carga de trabajo y los cálculos de planificación de capacidad.

Resumen

La sobreasignación de CPU (también llamada overcommit) le permite asignar más núcleos virtuales de CPU a las cargas de trabajo de los que tiene núcleos físicos disponibles. Esta guía explica cómo VergeOS gestiona los recursos de CPU, las implicaciones de la sobreasignación y las mejores prácticas para la planificación de capacidad.

Cómo funciona la asignación de CPU en VergeOS

Núcleos virtuales frente a físicos

Cuando asigna vCPUs a una VM, está asignando núcleos virtuales que se programan en núcleos físicos de CPU. VergeOS no reserva núcleos físicos exclusivamente para las VMs; en su lugar, utiliza reparto de tiempo para compartir los recursos físicos.

Puntos clave:

  • Las vCPUs no se fijan a núcleos físicos de forma predeterminada

  • Varias vCPUs de diferentes VMs pueden compartir el mismo núcleo físico

  • El planificador del hipervisor gestiona la asignación del tiempo de CPU

La configuración "Máx. núcleos por máquina"

Esta configuración del clúster controla el número máximo de núcleos de CPU que pueden asignarse a una sola carga de trabajo (VM, nodo de inquilino o servicio NAS).

Ubicación: Infraestructura > Clústeres > [Nombre del clúster] > Editar

Ratios de sobreasignación de CPU

¿Qué es un ratio de sobreasignación?

La relación entre las vCPUs totales asignadas y los núcleos físicos totales:

Ejemplo: Un clúster de 2 nodos con 32 núcleos cada uno (64 en total) ejecutando VMs con 96 vCPUs totales tiene un ratio de sobreasignación de 1.5:1.

Ratios recomendados por tipo de carga de trabajo

Tipo de carga de trabajo
Ratio
Notas

Cargas ligeras/de oficina

4:1 a 6:1

VMs de escritorio, servidores de archivos

Propósito general mixto

2:1 a 4:1

Mezcla empresarial típica

Servidores de base de datos/aplicaciones

1:1 a 2:1

Sensibles al rendimiento

Computación de alto rendimiento

1:1 o menos

Cargas limitadas por CPU

Implicaciones en el rendimiento

Cuándo funciona bien la sobreasignación

  • Cargas con picos: VMs que tienen picos ocasionales de CPU pero están mayormente inactivas

  • Sincronización diversa: Cargas de trabajo que alcanzan su pico en distintos momentos

  • Aplicaciones limitadas por E/S: VMs que esperan más por disco o red que por CPU

Cuándo la sobreasignación causa problemas

  • Cargas limitadas por CPU: Aplicaciones que usan constantemente el 100% de CPU

  • Aplicaciones sensibles a la latencia: Sistemas en tiempo real, VoIP, trading

  • Demanda simultánea: Todas las VMs necesitan CPU al mismo tiempo

Señales de sobreasignación excesiva

  1. Alto tiempo de espera de CPU: VMs esperando disponibilidad de CPU física

  2. Rendimiento inconsistente: Las aplicaciones funcionan bien a veces y mal en otras

  3. El sistema operativo invitado muestra alta CPU: Pero el hipervisor muestra una utilización menor

Planificación de capacidad

Cálculo de la capacidad de CPU disponible

Para un clúster con redundancia N+1:

Ejemplo: Clúster de 4 nodos, 32 núcleos cada uno, ratio objetivo 2:1

  • Disponibles: (4-1) × 32 = 96 núcleos

  • vCPUs utilizables: 96 × 2 = 192 vCPUs

Consideraciones de migración

Cuando un nodo falla o entra en mantenimiento:

  • Todas las VMs deben caber en los nodos restantes

  • Cada VM debe caber dentro de la configuración "Máx. núcleos por máquina"

  • Las VMs con muchas vCPUs pueden quedar aisladas si ningún nodo individual puede alojarlas

Mejores prácticas

Directrices generales

  1. Supervise antes de asignar: Comprenda los patrones reales de uso de CPU antes de añadir capacidad

  2. Dimensione las VMs adecuadamente: Empiece con menos vCPUs y aumente según sea necesario

  3. Reserve margen: Mantenga disponible un 20-30% de capacidad para picos y conmutación por error

  4. Use los límites de CPU con moderación: Evitan que las VMs utilicen recursos ociosos disponibles

Diseño del clúster

  1. Tamaño consistente de los nodos: Hace que la planificación de capacidad sea más sencilla

  2. Planifique para N+1: Suponga siempre que un nodo no estará disponible

  3. Documente los supuestos: Registre sus objetivos de sobreasignación y los motivos

Configuración de la VM

  1. Ajuste las vCPUs a la carga de trabajo: Más vCPUs no siempre significa mejor rendimiento

  2. Considere NUMA: Para VMs grandes, mantenga las vCPUs dentro de los límites del nodo NUMA

  3. Pruebe el rendimiento: Haga pruebas de referencia con cargas de trabajo realistas

Monitorización de la salud de la CPU

Métricas clave a vigilar

Métrica
Rango saludable
Acción si se supera

Utilización de CPU del clúster

< 70% de media

Añada nodos o reduzca VMs

Utilización de CPU del nodo

< 80% sostenido

Compruebe la distribución de las VMs

CPU de VM individual

Varía según la carga de trabajo

Ajuste el tamaño o investigue

Uso del panel de VergeOS

  1. Vaya a Infraestructura > Clústeres

  2. Ver gráficos de utilización de CPU

  3. Haga clic en nodos individuales para ver las métricas por nodo

  4. Consulte las estadísticas de CPU de la VM en el panel de cada VM

Para más detalles sobre la monitorización del clúster, consulte Resumen de clústeres.

Preguntas frecuentes

¿Puedo asignar a una sola VM más vCPUs que núcleos físicos?

Sí, pero rara vez es beneficioso. Una VM con más vCPUs que núcleos físicos en un nodo puede experimentar retrasos de programación mientras el hipervisor espera a que haya suficientes núcleos disponibles simultáneamente.

¿VergeOS admite el fijado de CPU?

VergeOS no admite el fijado de CPU (afinidad). Internamente, VergeOS utiliza el Completely Fair Scheduler (CFS) de Linux para la programación de CPU. Cada vCPU se asigna a un proceso/hilo de Linux, y todos los hilos de vCPU comparten la misma cola de ejecución del CFS. El planificador utiliza lógica de equidad global para determinar qué proceso obtiene tiempo de CPU y en qué orden.

Este diseño garantiza un uso óptimo de los recursos y mantiene la movilidad de las VMs para migración en vivo y conmutación por error. Cuando sobreasigna recursos de CPU, está compartiendo ese conjunto de núcleos físicos con otras VMs e inquilinos.

¿Cómo afecta esto al licenciamiento de software?

Algunos programas (Oracle, SQL Server) se licencian por núcleo físico o por socket. La programación dinámica de VergeOS significa que no puede "particionar de forma rígida" los recursos de CPU. Consulte las políticas de licenciamiento de virtualización de su proveedor de software; muchos ofrecen modelos de licencia por vCPU o por VM que funcionan mejor con hipervisores modernos.

¿Y qué pasa con NUMA?

Para VMs con muchas vCPUs, VergeOS intenta mantener las asignaciones de memoria y CPU dentro del mismo nodo NUMA cuando es posible. Para un mejor rendimiento NUMA, mantenga el número de vCPUs de la VM igual o inferior al número de núcleos de un solo socket.

Temas relacionados

Última actualización

¿Te fue útil?