Mejores prácticas de almacenamiento de Hyper-V
El almacenamiento es uno de los componentes más importantes de los servidores; esto incluye los servidores de virtualización que tienen un hipervisor instalado y máquinas virtuales en ejecución. El almacenamiento puede provocar un rendimiento alto o bajo, así como garantizar una fiabilidad alta o baja de la conservación de los datos de la máquina virtual y los discos virtuales. En un entorno virtual Hyper-V se pueden utilizar diferentes tipos de almacenamiento, y el administrador debe hacer la elección correcta antes de configurar un servidor o desplegar máquinas virtuales.
Esta entrada del blog pretende ayudarle a explorar diferentes tipos de opciones de almacenamiento para que pueda elegir la que mejor se adapte a su entorno y, por tanto, la que satisfaga sus requisitos de forma eficaz.
Recomendaciones de almacenamiento de Hyper-V
El almacenamiento que se puede montar en el servidor Hyper-V puede ser de dos tipos: almacenamiento local o almacenamiento remoto.
El almacenamiento local consiste en varios discos conectados localmente al servidor. Estos discos suelen estar conectados con una interfaz SAS (Serial Attached SCSI) a un controlador RAID (Redundant Array of Independent Disks) dentro del chasis del servidor. Se prefiere utilizar discos SAS a discos SATA (a pesar de la compatibilidad: los discos SATA pueden conectarse a puertos SAS, pero no viceversa) debido al mayor nivel de fiabilidad de los discos SAS. El almacenamiento local puede ser más asequible que el remoto. Si no tiene previsto desplegar un clúster Hyper-V, puede utilizar el almacenamiento local.
El almacenamiento remoto se encuentra separado del servidor Hyper-V y está conectado al servidor mediante protocolos iSCSI, Fibre Channel o SMB 3.0. Fibre Channel e iSCSI proporcionan almacenamiento a nivel de bloque, mientras que SMB 3.0 es almacenamiento a nivel de archivo. Fibre Channel requiere una interfaz física especial para conectar los servidores al almacenamiento, como SAN (Storage Area Network). FCoE (Fibre Channel over Ethernet) puede utilizarse para conectar almacenamiento a través de redes Ethernet. El protocolo iSCSI puede utilizarse para conectar un servidor a SAN o NAS (Network Attached Storage). El dispositivo NAS parece un miniservidor que tiene un controlador RAID con ranuras para unidades de disco en su interior y distintos puertos para conectarse a la red en el exterior. También se puede configurar un servidor independiente para utilizarlo como NAS. SAN y NAS pueden garantizar la redundancia de datos para una mayor fiabilidad.
Cuando se instala un clúster de conmutación por recuperación, debe utilizarse un almacenamiento remoto compartido con todos los nodos del clúster. En este caso, dicho almacenamiento se denomina almacenamiento compartido.
Utilice RAID 1 o RAID 10
RAID es la matriz redundante de discos independientes. La redundancia de datos en su almacenamiento puede proteger sus datos en caso de fallo del disco. Existen varios tipos de RAID.
RAID 0 no es redundante y se denomina striping de discos. No hay tolerancia a fallos: el fallo de un disco provoca el fallo de toda la matriz. El aumento del rendimiento puede mencionarse como un uso práctico (por ejemplo, almacenamiento en caché de flujos en directo para la industria televisiva). Se requiere un mínimo de 2 discos para construir este tipo de RAID.
RAID 1 es redundante. Todos los bloques de un disco se duplican en otro, con lo que se consigue una redundancia del 100%. Si uno de los discos falla, se puede acceder a los datos del segundo disco y utilizarlos para reconstruir la matriz. La probabilidad de éxito en la reconstrucción de la matriz es alta. RAID 1 puede utilizarse para el almacenamiento por conmutación por recuperación. Se necesita un mínimo de 2 discos para construir este tipo de RAID.
RAID 10 es una combinación de RAID 0 y RAID 1. Se aprovechan las ventajas de estos dos tipos de matriz, con lo que el resultado es una matriz tolerante a fallos y de mayor rendimiento. Los discos duplicados se combinan en una franja. Se necesita un mínimo de 4 discos para construir este tipo de RAID. Si el RAID 10 consta de 4 discos, los datos pueden protegerse en caso de fallo de un solo disco. Además, la matriz de 4 discos puede sobrevivir si fallan dos discos de réplicas diferentes.
RAID 5 proporciona un striping con paridad. Los bloques se dividen en bandas en los discos, pero la información de paridad que puede utilizarse para la recuperación también se almacena en los discos. El espacio ocupado por la información de paridad es igual a la capacidad de un disco. Por ejemplo, la información de paridad ocupa aproximadamente el 25% del espacio para una matriz de 4 discos. No es 100% redundante como RAID 1. En teoría, el RAID 5 puede sobrevivir si falla uno de los discos. Se necesita un mínimo de 3 discos para construir este tipo de RAID.
RAID 6 proporciona un striping con doble paridad. Es similar al concepto de RAID 5, pero la información de paridad se almacena en dos discos en lugar de en uno solo. RAID 6 puede sobrevivir en caso de fallo de hasta dos discos. Se necesita un mínimo de 4 discos para construir este tipo de RAID.
A primera vista, RAID 5 y RAID 6 parecen atractivos, pero veámoslos más de cerca. RAID 5 se desarrolló hace decenas de años, cuando la capacidad de los discos era bastante reducida. En el mundo moderno, la capacidad de los discos duros crece más deprisa que la velocidad de los discos, por lo que si un disco falla, la reconstrucción del RAID 5 puede llevar mucho tiempo. La carga de trabajo de cada disco en RAID 5 aumenta significativamente durante una reconstrucción, especialmente si el servidor utiliza el almacenamiento de forma intensiva para realizar tareas habituales al mismo tiempo. Puede haber datos raramente utilizados en los discos que pertenecen al RAID 5; y no se puede estar seguro de que estos datos puedan ser leídos con éxito. Esto aumenta la probabilidad de error. Si se produce un error durante la reconstrucción de la matriz, puede fallar toda la matriz. Cuando en RAID 5 falla un disco, esta matriz funciona como RAID 0 y los datos corren peligro.
RAID 6 tiene el doble de datos de paridad que se pueden utilizar para la recuperación en comparación con RAID 5. Como resultado, la probabilidad de sobrevivir al fallo de un disco, así como la probabilidad de reconstruirlo con éxito, es mayor. RAID 6 tiene otro problema: su rendimiento es el más bajo en comparación con RAID 10 y RAID 5. Los problemas de rendimiento se notan especialmente durante la reconstrucción.
Como se puede ver, RAID 1 y RAID 10 proporcionan la mayor fiabilidad, por lo que se recomienda su uso para el almacenamiento de Hyper-V. RAID por hardware puede configurarse tanto en un servidor físico como en un dispositivo NAS.
Utilice el almacenamiento de alta velocidad
El rendimiento de entrada/salida del almacenamiento tiene un impacto significativo a la hora de proporcionar un rendimiento suficiente de la máquina virtual. Para almacenar las máquinas virtuales deben utilizarse las unidades de disco duro (HDD) más rápidas. Existe un amplio surtido de discos duros modernos con características de alto rendimiento, que proporcionan alta velocidad por un precio asequible por Gigabyte. Si la velocidad de una unidad de disco duro no es suficiente para sus máquinas virtuales, puede utilizar una unidad de estado sólido (SSD). Las unidades SSD no tienen piezas móviles en comparación con los discos duros giratorios clásicos, por lo que ofrecen mayor velocidad, pero son más caras. El precio por Gigabyte de una SSD es más alto, y su capacidad total suele ser menor que la de una HDD. Al hacer uso de los discos con el mayor rendimiento para su almacenamiento Hyper-V, las máquinas virtuales son capaces de trabajar sin lag.
Utilizar un volumen dedicado para almacenar máquinas virtuales
No almacene máquinas virtuales en volúmenes del sistema. El volumen de sistema suele estar ocupado con la lectura o escritura de archivos de sistema que son utilizados por el sistema operativo (C:\ es siempre un volumen de sistema por defecto). Por lo tanto, almacenar los archivos de la máquina virtual en el volumen del sistema puede reducir el rendimiento de la máquina virtual. Otro problema que puede surgir es la falta de espacio libre en el volumen. Esta situación puede producirse cuando los archivos de sistema ocupan todo el espacio libre del disco, o cuando los archivos VM, como los archivos de disco virtual, ocupan todo el espacio del disco. Como resultado, las máquinas virtuales en las que se almacenan los archivos dentro de un volumen del sistema corren el riesgo de fallar. Además, es posible que el host Hyper-V tampoco funcione correctamente sin suficiente espacio libre para escribir los archivos del sistema. Utiliza volúmenes separados para almacenar sistemas operativos y máquinas virtuales. Además, evite almacenar archivos de intercambio en unidades que se utilicen para datos de máquinas virtuales.
Almacene los archivos de la máquina virtual en un solo lugar
Algunos de los principales archivos de la máquina virtual Hyper-V son: VHDX (VHD) – archivos de disco virtual, AVHDX – archivos de disco virtual diferenciado, VMCX – archivos de configuración, y VMRS – archivos de estado de ejecución. Los archivos VM pueden estar almacenados en diferentes ubicaciones por defecto que no son convenientes para los administradores. Para evitarlo, especifique un único directorio para almacenar todos los archivos que pertenecen a la máquina virtual actual. En la siguiente captura de pantalla se puede ver que todos los archivos que pertenecen a una máquina virtual llamada Server2016-01 se almacenan en subdirectorios de un directorio que se llama Server2016-01.
Dejar espacio para archivos BIN (VMRS)
Los archivos BIN consumen espacio en disco para almacenar el estado de la memoria. Para ello, debe dejarse un espacio reservado en los volúmenes donde se almacenan los archivos de la máquina virtual. Desde Hyper-V 2016, la extensión de este tipo de archivo ha cambiado de BIN a VMRS. Este tipo de archivo ocupa el segundo lugar en el consumo de espacio en disco tras los archivos VHDX de disco virtual. El tamaño de un archivo BIN (VMRS) es igual al tamaño de la memoria virtual de la máquina virtual. Por ejemplo, si su máquina virtual tiene un disco virtual de 30 GB y 8 GB de memoria virtual, debe reservar al menos 38 GB en su almacenamiento. Si la memoria virtual dinámica está configurada para una VM, entonces el tamaño del archivo BIN (VMRS) sería igual a la cantidad de memoria aprovisionada en ese momento.
¿Qué sistema de archivos utilizar? ¿NTFS o ReFS?
NTFS (New Technology File System) es un sistema de archivos que fue creado por Microsoft en 1993, y es ampliamente utilizado en entornos Windows en la actualidad.
ReFS (Resilient File system) es el sistema de archivos más reciente de Microsoft que se lanzó con Windows Server 2012 y que cuenta con mejoras como:
- Protección de datos contra la corrupción mediante sumas de comprobación de metadatos y archivos
- Integración con espacios de almacenamiento
- Comprobación automática de la integridad de los datos y corrección de errores (si se produce un error)
- Tecnología de clonación de bloques (útil cuando se clonan las máquinas virtuales)
- Mayor tolerancia a los cortes de electricidad
- Compatibilidad con cifrado con BitLocker
- Aumento del tamaño máximo del archivo y de la longitud del nombre del archivo
- Mayor volumen máximo
- Creación más rápida de discos virtuales fijos
Como puede verse, el sistema de archivos ReFS tiene una larga lista de ventajas y está diseñado para satisfacer los requisitos de almacenamiento del servidor de forma más eficiente. Sin embargo, también existen algunas desventajas:
- Windows no se puede cargar desde un volumen ReFS
- No son compatibles la compresión de datos, la deduplicación basada en archivos de Windows, el cifrado de archivos, los enlaces duros, los atributos ampliados ni las cuotas de disco.
- No puede utilizarse para Volúmenes Compartidos en Cluster
- No ofrece compatibilidad con los nombres de archivo heredados de la versión 8.3.
Por último, la elección del sistema de archivos corresponde al administrador. Se recomienda utilizar ReFS para el almacenamiento Hyper-V si las limitaciones de ReFS no son importantes para su sistema.
Utilice una red de almacenamiento de alta velocidad
Cuando se utiliza el almacenamiento remoto, la conexión a la red es un factor crucial. Si tienes discos de alta velocidad en tu NAS o SAN pero una conexión de red lenta, el rendimiento general del sistema de almacenamiento se vería degradado. Por eso se recomienda utilizar una red dedicada de alta velocidad y baja latencia. Se recomienda una conexión de red de 10 Gbit para garantizar una velocidad aceptable. También es útil utilizar NIC teaming para la agregación de ancho de banda.
Evite almacenar la máquina virtual con el controlador de dominio en un recurso compartido SMB3
Es necesario acceder a un controlador de dominio para que el recurso compartido SMB 3.0 funcione correctamente. Si un host con recurso compartido SMB 3.0 o un host Hyper-V no puede acceder al controlador de dominio, no se puede pasar una autenticación y no se puede establecer una conexión. En esta situación, un servidor Hyper-V no puede iniciar una máquina virtual con un controlador de dominio que se encuentra en un recurso compartido SMB 3.0. Mantenga una máquina virtual con controlador de dominio en el almacenamiento local de su host Hyper-V para evitar este problema.
Uso de volúmenes compartidos en clúster para el almacenamiento en clúster
Al instalar un clúster, debe configurar el almacenamiento compartido. Cuando se utiliza almacenamiento tradicional sin CSV, sólo un nodo (host Hyper-V) puede acceder al mismo disco/LUN a la vez. Los volúmenes compartidos en clúster (CSV) pueden resolver este problema proporcionando acceso simultáneo al almacenamiento para varios nodos sin necesidad de volver a montar los volúmenes y cambiar la propiedad con permisos. Con CSV puede tener un sistema de archivos en clúster por encima de NTFS o ReFS para Hyper-V.
Evite el uso de discos pasantes
Un disco pass-through es un disco físico (LUN) que está conectado a una máquina virtual. Este tipo de disco se utiliza como dispositivo de almacenamiento y se conecta directamente al controlador de disco de una máquina virtual. En las primeras versiones de Hyper-V, el uso de discos pass-through ayudó a aumentar el rendimiento. Hoy en día, los formatos de los discos virtuales son lo suficientemente progresivos, por lo que incluir el rendimiento y utilizar discos pass-through no tiene sentido debido a los problemas que pueden surgir al utilizarlos. No se puede mover fácilmente un disco pass-through con una máquina virtual, y el software de backup no puede hacer un backup de una VM con este tipo de disco a nivel de host.
¿Qué tipo de disco virtual preferir: VHD o VHDX?
VHD es un formato heredado de discos virtuales para máquinas virtuales que se introdujo en 2003. VHDX es un formato más progresivo (publicado con Windows Server 2012) que tiene un límite de capacidad más alto de un disco virtual (hasta 64 TB), admite bloques de 4 KB, tiene un redimensionamiento en vivo del disco virtual y tiene una actualización continua de la estructura de metadatos que reduce la probabilidad de corrupción de datos causada por la pérdida de energía. Por esta razón, favorezca el uso de discos virtuales VHDX en su entorno Hyper-V.
Uso de discos virtuales fijos y de expansión dinámica
Un disco virtual fijo es un archivo VHDX (VHD) que consume todo el espacio preasignado en el almacenamiento, a pesar de la cantidad de espacio utilizado dentro del disco virtual. Las ventajas de utilizar un disco virtual fijo son que funcionan más rápido, no pueden producirse problemas por sobreaprovisionamiento y la fragmentación del archivo VHDX es la misma tras su creación. Las desventajas de utilizar un disco virtual fijo son que su creación puede llevar más tiempo en volúmenes NTFS y que se necesita más espacio en el almacenamiento para la creación del disco.
El disco virtual que se expande dinámicamente comienza con un tamaño pequeño de unos pocos kilobytes después de la pre-asignación, este crece después de escribir archivos dentro del disco virtual hasta que alcanza el tamaño máximo que fue pre-asignado durante la creación del disco. Un disco dinámico no puede reducirse automáticamente cuando se borran los datos del disco de este tipo. Las ventajas de utilizar discos dinámicos son que ahorran espacio, son rápidos de crear e incluyen sobreaprovisionamiento. Los inconvenientes son que los discos dinámicos son más lentos que los fijos, implican una mayor fragmentación y el exceso de aprovisionamiento podría causar un espacio libre insuficiente en el almacenamiento tras el crecimiento de los discos dinámicos.
Puede utilizar tanto discos virtuales fijos como dinámicos en función de sus necesidades.
Diferenciación de discos duros virtuales
Un disco duro virtual diferenciado es un archivo de disco virtual (AVHDX o AVHD) que se crea en el directorio de la VM con discos virtuales después de la creación del punto de control. El propósito de diferenciar el disco virtual es almacenar los cambios que se escriben en un disco virtual padre de una VM después de crear un punto de control. Un disco virtual padre puede ser un disco fijo, dinámico o diferenciado. Cuando se elimina un punto de control, el disco virtual diferenciado que se ha creado con este punto de control se fusiona con un disco virtual padre. El disco virtual de diferenciación también se puede crear con el nuevo asistente de disco duro virtual de Hyper-V. Es importante tener en cuenta que la creación de un número elevado de puntos de control provoca la creación de discos virtuales de diferenciación creciente, lo que se traduce en una disminución del rendimiento.
Supervisión de la salud y el rendimiento de los discos
La supervisión regular de la salud del disco puede prevenir cualquier posible daño del disco que pueda causar la corrupción de datos. Hacer uso de utilidades que puedan supervisar el S.M.A.R.T. (Self-Monitoring, Analysis, and Reporting Technology) de los datos de las unidades de disco, incluidos los discos que pertenecen a RAID. Cuanto antes identifique un disco con problemas, mayor será la probabilidad de que sus datos estén a salvo. También debe supervisarse el rendimiento de los discos para identificar cuáles pueden sobrecargarse. Esto puede ayudarle a tomar la decisión de redistribuir las máquinas virtuales con operaciones intensivas de disco entre otros almacenamientos para optimizar el rendimiento general.
Conclusión
El almacenamiento es un componente crucial para los servidores porque los datos que contiene son especialmente importantes para la mayoría de las empresas informáticas. En la entrada del blog de hoy se han tratado las prácticas recomendadas de almacenamiento para Hyper-V, que pueden ayudar a optimizar el rendimiento de las máquinas virtuales y garantizar una alta fiabilidad del almacenamiento. De todas las recomendaciones anteriores, elija las que se adapten a su entorno.
Aunque disponga de un almacenamiento de primera clase, es importante hacer backup de los datos de su máquina virtual Hyper-V correctamente. NAKIVO Backup & Replication puede ayudarle a hacer backups de sus máquinas virtuales Hyper-V de la forma más eficiente.