SSD - almacenamiento flash

Francisco Dalmau, Country Manager Nutanix Iberia

El uso de almacenamiento Flash es cada vez más corriente a la hora de abordar el diseño de un Centro de Datos moderno.

Hoy en día, la mayoría de las empresas ejecutan múltiples cargas de trabajo en soluciones de almacenamiento flash. De hecho, las cabinas all-flash son cada vez más populares para ciertas clases de aplicaciones. Dicho esto, ¿por qué es flash un simple componente dentro de una matriz (array) de almacenamiento existente? ¿No debería proyectarse directamente en la arquitectura de servidor para estar más cerca de las aplicaciones a las que sirve?

Antes de abordar esta importante cuestión, es importante entender los principios básicos por los que se rigen las matrices de almacenamiento tradicionales. Las soluciones NAS y SAN de proveedores establecidos, entre los que se incluyen EMC, NetApp, HP e IBM, dominan el mercado de almacenamiento empresarial en la actualidad. Las matrices de almacenamiento de estas empresas se basan en controladores de almacenamiento que no son mucho más que servidores x86. Dichos controladores administran múltiples estantes de discos, además de proporcionar funciones de gestión de datos, tales como: replicación, compresión, deduplicación y organización por niveles.

Cada matriz de almacenamiento posee varios controladores de almacenamiento -por lo general dos- para garantizar una alta disponibilidad y proporcionar balanceo de carga. Los recursos de almacenamiento compartido se conectan al clúster de servidores a través de la red existente o mediante cables de Canal de Fibra dedicados. Con esta arquitectura tradicional de tres niveles, los datos leídos y escritos viajan desde una máquina virtual al servidor físico, a través del fabric de red al controlador de almacenamiento y, finalmente, a los discos.

Aprendiendo sobre Almacenamiento Flash

¿Cómo encaja flash dentro de este modelo? Flash proporciona aplicaciones de alto rendimiento y de baja latencia de E/S, ofreciendo miles de IOPS (entradas/salidas por segundo) en comparación con los cientos de IOPS que procuran los discos giratorios.

La segmentación de datos por niveles (Data Tiering) es una técnica comúnmente utilizada en soluciones de almacenamiento híbrido, que contienen tanto unidades de disco duro como de estado sólido, para asegurar un mayor rendimiento. La segmentación asegura que los datos más utilizados «calientes» residan en la DRAM mientras que los no utilizados son transferidos de manera automática a discos giratorios. ¿Por qué entonces la memoria DRAM está más cerca de la CPU (dentro del servidor), mientras que el almacenamiento basado en memoria flash se coloca en una matriz de almacenamiento distante? ¿No tendría mayor sentido mantener flash al lado del servidor, al igual que se hace con DRAM? Después de todo, el bus PCIe está más cerca de la CPU y proporciona mayor rendimiento añadido y menor latencia que una interconexión realizada a través de Canal de Fibra o vía Ethernet a través de un switch.

Hiperconvergencia: el flash se coloca del lado del servidor

Los modelos actuales de arquitectura de Centros de Datos están a punto de ser considerados obsoletos en el nuevo mundo Web-scale de TI. Es por eso que proveedores de sistemas hiperconvergentes como Nutanix, que integran computación y almacenamiento en un único appliance 2U, han ido incorporando unidades flash en servidores, lo que se conoce como server-side flash, durante los últimos tres años.

Al contrario de lo que ocurre con el rendimiento flash, limitado por la arquitectura de almacenamiento subyacente, las soluciones hiperconvergentes incorporan discos flash en el servidor, ofreciendo altos niveles de resiliencia de datos y almacenamiento de datos agrupados -equivalente a un dispositivo NAS-, permitiendo, al mismo tiempo, un acceso rápido y sin restricciones al almacenamiento flash a través de las aplicaciones.

Estos sistemas están diseñados para facilitar la escalabilidad y el paralelismo, sin las limitaciones inherentes asociadas al almacenamiento a través de un único controlador. Cuando se implementa en configuraciones de clúster, los appliances hiperconvergentes evitan los atascos de red que se producen cuando se da una demanda simultánea de discos flash en un solo dispositivo de almacenamiento. En su lugar, cada servidor tiene sus propios discos flash, de forma que la gran mayoría de los procesos de lectura de E/ S pueden ser satisfechos por los recursos locales, de conexión directa, evitando el acceso a la red en su totalidad.

Incluso los procesos de E/S que requieren que el servidor hiperconvergente salga por la red (por ejemplo, lectura remota de nodos adyacentes, replicación de escrituras a otros nodos) quedan libres de los cuellos de botella aislados, ya que estas operaciones se distribuyen a través de diferentes servidores en todo el clúster.

La hiperconvergencia optimiza los beneficios del Almacenamiento Flash, incluso cuando crece el tamaño del clúster. Además, introducir nuevas capacidades de almacenamiento es tan fácil como añadir otro servidor con la capacidad SSD requerida o sustituyendo las actuales unidades SSD en los servidores por unidades de mayor capacidad.

La integración de flash en el servidor permite que todas las aplicaciones se ejecuten en una infraestructura común, incluyendo las cargas de trabajo, más hambrientas de ancho de banda y sensibles a la latencia del almacenamiento. Los servidores basados en flash también eliminan el coste y la complejidad de desplegar silos impulsados ​​por una arquitectura hardware.

Las soluciones hiperconvergentes incluso proporcionan beneficios de seguridad relacionados con el almacenamiento tradicional. En entornos hiperconvergentes, los datos pueden ser cifrados en el servidor físico, eliminando el escenario de datos sin cifrar en un enlace de red, o el tener que depender de funcionalidades externas para asegurar la transferencia de datos al servidor.