El uso principal de los sistemas de almacenamiento basados en tecnología flash es uno de los adelantos más significativos en el diseño de centros de datos modernos. Hoy día, la mayoría de las empresas ejecutan múltiples cargas de trabajo en soluciones de almacenamiento que emplean tecnología flash. De hecho, los dispositivos completamente flash son cada vez más populares para ciertas clases de aplicaciones. Habiendo dicho eso, ¿por qué la tecnología flash debe ser meramente un componente en una matriz de almacenamiento existente? ¿No debería ser diseñada directamente en la arquitectura del servidor donde esté más cerca de las aplicaciones a las que da servicio?
Antes de dar respuesta a esa importante pregunta, permítanos entender primero los fundamentos de las matrices de almacenamiento tradicionales. Las soluciones NAS y SAN de proveedores establecidos, entre otros EMC, NetApp, HP e IBM, dominan hoy el espacio del almacenamiento en las empresas. Las matrices de almacenamiento de estas compañías se sustentan en controladoras de almacenamiento, que no son mucho más que servidores basados en la tecnología x86. Las controladoras de almacenamiento están dedicadas al manejo de múltiples anaqueles de discos, además de proveer funciones de manejo de datos como replicación, compresión, deduplicación y clasificación por niveles.
Cada matriz de almacenamiento tiene múltiples controladoras de almacenamiento (dos en general) para garantizar alta disponibilidad y para proveer balance de carga. Los recursos de almacenamiento compartidos se conectan al clúster de servidores a través de cables de red o Fibre Channel existentes. Con esta arquitectura de tres niveles tradicional, las operaciones de lectura y escritura de datos viajan de una máquina virtual al servidor físico a través de la red hacia la controladora de almacenamiento y finalmente a los discos.
¿Cómo encaja la tecnología flash en este modelo? La tecnología flash proporciona a las aplicaciones E/S de alto desempeño y baja latencia, entregando miles de IOPS (entradas/salidas por segundo), comparado con cientos de ellas de los discos giratorios. La clasificación de datos en niveles es una técnica común que se aprovecha en las soluciones de almacenamiento híbridas de la actualidad, las cuales contienen unidades de disco duro y de estado sólido, para hacer posible un más alto desempeño. La controladora de almacenamiento lleva el control de los “datos calientes”, o datos que se utilizan con mayor frecuencia, y promueve estos datos a SSDs de más alto desempeño. Cuando los datos se “enfrían”, o ya no se accede a ellos con frecuencia, éstos se desplazan automáticamente a discos giratorios de más baja velocidad.
La clasificación en niveles garantiza que los datos más comúnmente usados estén siempre en los medios de almacenamiento de más alta velocidad. Esto es muy similar a la forma en que los procesadores usan la DRAM hoy día. Como la cantidad de datos que se pueden almacenar en la memoria es limitada, sólo los datos calientes residen en la DRAM y los datos que no se usan se retiran automáticamente. ¿Por qué entonces la DRAM está más cerca de la CPU (dentro del servidor), mientras que el sistema de almacenamiento basado en flash se coloca en un sitio distante de la red dentro de una matriz de almacenamiento alejada? ¿No tiene más sentido mantener el dispositivo flash más cerca del servidor, como están las DRAMs en la actualidad? Después de todo, el bus PCIe está más cerca de la CPU y proporciona más rendimiento agregado y menor latencia que las redes Fibre Channel o Ethernet a través de un switch.
Los proveedores de sistemas hiperconvergidos que integran cómputo y almacenamiento en un dispositivo 2U, han venido incorporando flash del lado del servidor en los últimos tres años.
Los modelos de arquitectura de centros de datos actuales están camino a la obsolescencia en el Nuevo mundo de la TI en escala Web. Por ejemplo, ¿qué sucederá cuando 50 servidores en el clúster de cómputo intenten acceder a datos residentes en flash en una matriz NAS? Las SSDs con capacidad de procesar decenas de miles de IOPS están conectadas ahora a través de la misma controladora en la misma red. ¿Dónde se topa el desempeño con un cuello de botella? ¿En la red, la controladora o unidades flash? (Una pista: no es en la flash.)
Ahora bien, ¿qué sucede si se agregan 50 servidores más? ¿O 100 servidores? ¿Escalará el modelo actual? Esto es análogo a sacar agua de un barril utilizando un popote. ¿Resolverá el problema agregar más popotes?
El problema es que el desempeño de la unidad flash está limitado por la arquitectura de almacenamiento implícita. Para mantener el desempeño, la infraestructura complete tiene que escalar con la demanda de datos. Sin embargo, cualquier persona con experiencia en centros de datos sabe que los ejercicios de planeación de la capacidad rara vez son precisos, ya que los requisitos de negocios y de las aplicaciones son notoriamente difíciles de predecir. Agregue los puntos neurálgicos comunes de la infraestructura de almacenamiento tradicional como la distribución por zonas, el desenmascaramiento, la provisión LUN y la falta de funcionalidad centrada en VM y quedará claro por qué los administradores de almacenamiento batallan para cumplir con los SLAs de desempeño y disponibilidad.
Las soluciones hiperconvergidas incorporan discos flash en el servidor, proporcionando altos niveles de Resistencia de los datos y almacenamiento de datos en depósitos que es equivalente a un dispositivo NAS, mientras que permite acceso rápido sin restricciones al sistema de almacenamiento flash por parte de las aplicaciones. Estos sistemas están diseñados para ofrecer escalabilidad y paralelismo, sin las limitaciones inherentes que se crean cuando se accede al almacenamiento a través de una controladora. Cuando se implementan en configuraciones por clústeres, los dispositivos hiperconvergidos evitan la contención de la red que ocurre cuando existe demanda simultánea de discos flash en un dispositivo de almacenamiento. En su lugar, cada servidor tiene sus propios discos flash, de tal suerte que la gran mayoría de E/Ss de lectura pueden ser satisfechas por recursos locales conectados en directo y evitan el acceso a la red por completo. Incluso las E/Ss que requieren que el servidor hiperconvergido salga por la red (como lecturas remotas desde nodos contiguos o la replicación de operaciones de escritura a otros nodos) están libres de cuellos de botella aislados, ya que estas operaciones se distribuyen a través de diferentes servidores por todo el clúster.
La hiperconvergencia optimiza los beneficios de la tecnología flash, incluso cuando aumenta el tamaño del clúster. Además, introducir más capacidad de almacenamiento es tan fácil como agregar otro servidor con la capacidad de SSD requerida o bien reemplazar las SSDs actuales en los servidores con unidades de mayor capacidad.
La integración de tecnología flash en el servidor permite que todas las aplicaciones se ejecuten en la infraestructura común, incluyendo cargas de trabajo con grandes exigencias de ancho de banda o sensibles a la latencia del sistema de almacenamiento. Así, el flash basado en servidor elimina también el costo y la complejidad de silos de implementación controlados por la arquitectura del hardware.
Las soluciones hiperconvergidas proporcionan incluso beneficios de seguridad relativos al almacenamiento tradicional. En entornos hiperconvergidos, los datos pueden ser encriptados dentro del servidor físico, eliminando con ello el escenario de datos no encriptados en un vínculo de la red o teniendo que recurrir a funcionalidad externa para asegurar transferencias de servidor a almacenamiento.
El almacenamiento basado en flash ofrece un desempeño a mayor velocidad órdenes de magnitud superiores a las unidades de disco duro tradicionales. Sin embargo, la inserción de recursos flash en matrices centrales y el acceso a ellas a través de una red nunca permitirá que se alcance todo su potencial. Adelantándonos, el surgimiento de la memoria NVMe (memoria exprés no volátil) trae consigo un estándar de peso más ligero para acceder a SSDs, lo cual sólo incrementará la demanda de tecnología flash basada en servidor. Las arquitectura hiperconvergidas ofrecen un enfoque holístico para lograr el potencial de las innovaciones en tecnología SSD moderna. tecnología flash