Elegir el hardware virtual: lo que le muestras al invitado decide su velocidad

El hardware de una máquina virtual no es un hecho sino una elección. El hardware antiguo emulado es una herramienta del día de la instalación, no de la vida de la máquina.

AtlasPVE ·

Esta entrada responde a

  • proxmox virtio o e1000
  • proxmox vm red lenta
  • proxmox rendimiento disco iothread
  • proxmox controlador virtio windows
  • proxmox elegir tarjeta de red virtual

El hardware de una máquina virtual no es un hecho, es una elección. Tú decides qué tarjeta de red y qué controladora de disco se le muestran al invitado. Y esa decisión fija directamente la velocidad de la máquina.

Dos familias

Hardware real emulado. Al invitado se le muestra una tarjeta física que conoce desde hace años. Como ya la conoce, no hace falta instalar nada más.

Hardware diseñado para la virtualización. Al invitado se le muestra un dispositivo que dice "soy virtual". Como el invitado lo sabe, habla un lenguaje corto y directo.

La diferencia se ve en el rendimiento. Con una tarjeta emulada, cada paquete atraviesa una capa que imita el comportamiento de un hardware que en realidad no existe. Con un dispositivo diseñado para virtualización, esa imitación desaparece.

Por qué existe la emulación

Por compatibilidad. Un sistema operativo antiguo sin controladores virtuales mira la tarjeta emulada, dice "a esta la conozco" y arranca sin problemas.

Así que el hardware emulado es una herramienta del día de la instalación. Para que la máquina levante, podamos entrar e instalar los controladores.

El problema real: nadie vuelve

Aquí está el fallo. La máquina se instala, funciona, hace su trabajo. Nadie dice "ya están los controladores virtuales, voy a cambiar el hardware".

Resultado: durante meses, a veces años, esa máquina sigue funcionando con el hardware provisional elegido el día de la instalación. Nada da error. Simplemente es más lenta de lo que debería.

La regla es simple: el hardware emulado es una herramienta del día de la instalación, no de la vida de la máquina. Cámbialo en cuanto los controladores estén listos dentro del invitado.

Los dos ajustes que nadie vuelve a abrir

El modelo de tarjeta de red. Los modelos viejos siguen siendo seleccionables y, al seleccionarlos, funcionan. Que funcionen no significa que sean correctos.

Que la cola del disco corra en su propio hilo de ejecución. Esto evita que las peticiones de disco esperen al procesamiento principal de la máquina. Con esto apagado todo sigue funcionando, solo que en los momentos cargados las cosas se esperan entre sí.

Ambos quedan en su valor por defecto en la instalación y no se vuelven a abrir.

Y una lección sobre medir: un total no es un síntoma

Esta es la parte más general del artículo, y no vale solo para el hardware virtual.

Las tarjetas de red tienen un contador de paquetes perdidos, y ese contador nunca se pone a cero. Si una máquina que tuvo una mala hora el año pasado muestra doscientos paquetes perdidos, ese número se queda ahí para siempre.

Mirar ese número y decir "esta máquina pierde paquetes" es un error. La pregunta correcta es está perdiendo ahora mismo, es decir, no el total sino la velocidad. Cuántos paquetes se pierden por minuto?

La misma distinción aparecía en el desgaste de disco: no el porcentaje sino la pendiente. Se puede escribir como regla general: un total acumulado cuenta el pasado, una velocidad cuenta el hoy. Las decisiones se toman mirando el hoy.

Qué hace Atlas

Atlas reconoce los modelos viejos de tarjeta de red y lo marca cuando una máquina sigue usando uno. Del mismo modo muestra cuando la cola del disco no corre en su propio hilo de ejecución.

Ambos están en nivel sugerencia, no aviso. El motivo es el mismo que en el artículo anterior: estas cosas no están rotas, simplemente podrían ser mejores. Llamar aviso a lo que no está roto devalúa los avisos de verdad.

En la pérdida de paquetes el producto aplica la lección de medición de arriba: no mira el contador acumulado sino la velocidad de pérdida de los últimos minutos. Si se pierde al menos un paquete por minuto la ficha aparece; cuando la pérdida cesa, la ficha desaparece sola.

El motivo está escrito en el código: por culpa de un contador que nunca se reinicia, una máquina que perdió doscientos paquetes en el pasado parecería culpable de por vida. La pregunta que se hace no es "perdió en el pasado" sino "está perdiendo ahora mismo".

Fuentes

La documentación oficial de Proxmox. En inglés, y en este asunto es ella la que tiene la última palabra.

Entradas relacionadas

¿Cómo se ve esto dentro de Atlas?

Ir a la página del producto