Volver
Configuraciones de Controlador de Disco y Caché
Controlador de Disco y Caché en Proxmox
Esta página proporciona información sobre las configuraciones relacionadas con el disco al configurar máquinas virtuales, incluyendo consideraciones clave y precauciones.
Acerca de los Controladores SCSI
Al crear una nueva máquina virtual y seleccionar un controlador SCSI, la opción predeterminada es “VirtIO Single”. Esto significa que si se crean múltiples discos virtuales (como se describe en la siguiente sección), todos parecerán estar conectados a este único controlador. Esta configuración optimiza el uso de memoria y dispositivos dentro de la máquina virtual.
Elegir “VirtIO SCSI” permite asignar cada disco virtual a un bus SCSI separado, lo que requiere espacio adicional para controladores y memoria. Sin embargo, distribuir las operaciones de E/S puede mejorar el rendimiento en ciertas cargas de trabajo.
Generalmente, no se recomienda la emulación de otras tarjetas SCSI físicas.
Acerca de los Controladores de Disco
IDE (también conocido como ATA) se estableció en 1988, garantizando compatibilidad con casi todos los sistemas operativos. Para versiones de sistemas operativos lanzadas antes de 2003, usar IDE puede ser la mejor opción. Aunque el IDE físico tenía una velocidad máxima de 133MB/s, el IDE virtualizado no tiene esta limitación a menos que el sistema operativo lo imponga. Sin embargo, IDE no soporta el intercambio en caliente, lo que significa que los dispositivos no se pueden retirar mientras la máquina virtual está en ejecución.
SATA es adecuado para versiones de sistemas operativos lanzadas después de 2003 y es la opción más compatible para sistemas operativos modernos. Físicamente, es una evolución del IDE con transmisión en serie, ofreciendo velocidades de hasta 6Gbps (alrededor de 600MB/s). Sin embargo, en un entorno virtualizado, no hay restricciones de velocidad inherentes a menos que el sistema operativo invitado las imponga.
VirtIO SCSI y VirtIO SCSI Single ofrecen el acceso más rápido al disco. Sin embargo, requieren que el sistema operativo invitado tenga controladores paravirtualizados. Si el sistema no tiene discos IDE/SATA, el proceso de instalación del sistema operativo fallará a menos que se instale el controlador VirtIO SCSI. Las distribuciones de Linux incluyen este controlador desde aproximadamente 2012, FreeBSD desde 2014, y para sistemas operativos Windows, se debe proporcionar un archivo ISO adicional con controladores VirtIO durante la instalación.
Acerca del Caché de Disco
Las configuraciones de caché de disco implican un equilibrio entre la integridad de los datos y el rendimiento.
Característica | writethrough | directsync | none | writeback | unsafe |
---|---|---|---|---|---|
Uso del Caché | Usa caché de página (beneficioso para operaciones de lectura) | No usa caché | No usa caché | Usa caché de página | Usa caché de página |
Emisión de fsync | Se emite en cada escritura | Se emite en cada escritura | No se emite | Se emite con retraso | No se emite |
Proceso de Escritura | Escribe en caché y luego vacía al disco inmediatamente | Escribe directamente al disco y vacía inmediatamente | Escribe directamente al disco sin vaciar | Escribe en caché y vacía con retraso | Escribe en caché sin vaciar |
Rendimiento de Lectura | Alto (utilización del caché) | Bajo (dependiente del disco) | Bajo (dependiente del disco) | Alto (utilización del caché) | Alto (utilización del caché) |
Rendimiento de Escritura | Moderado (asistido por caché) | Bajo (sin caché) | Moderado (sin caché) | Alto (vaciado de caché retrasado) | Muy alto (vaciado de caché retrasado) |
Integridad de Datos | Alta | Muy alta | Moderada (dependiente del disco) | Baja (escrituras retrasadas) | Muy baja (alto riesgo de pérdida de datos) |
Caso de Uso | Sistemas que priorizan rendimiento de lectura e integridad | Sistemas que requieren máxima integridad de datos | Sistemas enfocados en rendimiento con necesidades moderadas de integridad | Sistemas intensivos en escritura equilibrando rendimiento e integridad | Sistemas enfocados en rendimiento donde la pérdida de datos es aceptable |
TRIM (Descartar)
El comando Discard informa al sistema de almacenamiento que ciertos bloques ya no son necesarios.
Originalmente introducido para el nivelado de desgaste en SSD, algunos sistemas operativos pueden requerir emulación de SSD para soportar TRIM. Más allá de los SSD, TRIM también puede ayudar en la eliminación segura al remover claves de cifrado en lugar de sobrescribir datos.
En entornos de nube privada, TRIM permite que el almacenamiento aprovisionado de manera delgada reclame espacio. Normalmente, una vez que el almacenamiento es usado por una máquina virtual, incluso los datos eliminados permanecen asignados a nivel de almacenamiento.
fstrim -v /punto-de-montaje
Para operaciones TRIM en tiempo real, monta con la opción discard:
mount -o discard,remount /
Hilo de E/S
Habilitar hilos de E/S en VirtIO SCSI delega las operaciones de escritura de disco a un hilo separado del hilo principal del sistema operativo.
Esta configuración requiere recursos adicionales de CPU, pero reduce la latencia, particularmente en máquinas virtuales con múltiples discos virtuales que manejan operaciones de lectura/escritura simultáneas.