¿Cuándo Considerar una SAN?
Todo el mundo parece querer lanzarse a comprar una SAN, a veces con bastante pasión. Las SAN son, hay que admitirlo, bastante atractivas. Son uno de los elementos de hardware a gran escala más divertidos y emocionantes que la mayoría de los profesionales de TI tienen la oportunidad de tener en su propio entorno. A menudo, el deseo de tener una SAN propia es una cuestión de “estar a la altura de los vecinos”, ya que usar una SAN se ha convertido en una especie de símbolo de estatus – uno de esos últimos bastiones de la TI de las grandes empresas que solo se ve en un armario de servidores dedicado y nunca en la casa de alguien (bueno, casi nunca). Las SAN se promocionan con fuerza, se publicitan y se venden como cajas asombrosas con redundancia interna que las hace infalibles, con una velocidad que desafía la lógica y cargadas de funciones que nunca supiste que necesitabas. Al hablar con profesionales de TI que diseñan nuevos sistemas, uno de los aspectos de diseño más comunes que escucho es “bueno, no sabemos mucho sobre nuestro diseño final, pero sabemos que necesitamos una SAN.”
En el contexto de este artículo, utilizo SAN en su sentido más común, es decir, para referirme a un “dispositivo de almacenamiento por bloques” y no para referirme a toda la red de almacenamiento en sí. Una red de almacenamiento puede existir para un NAS sin utilizar en absoluto un dispositivo de almacenamiento por bloques SAN. Así que, para este artículo, SAN se refiere exclusivamente a la SAN como dispositivo, no a la SAN como red. SAN es un término ambiguo que se usa para significar múltiples cosas en distintos momentos y puede volverse bastante confuso. Una SAN configurada sin una red se convierte en DAS. El DAS conectado a una red se convierte en SAN.
Detengámonos un momento. La SAN es tu almacenamiento de back end. La necesidad de ella estaría determinada, en todos los casos, por otros aspectos de tu arquitectura. Si aún no has decidido muchas otras piezas, simplemente no puedes saber que se va a necesitar una SAN, ni siquiera que vaya a ser útil, en el diseño final. Señales de alerta. Señales de alerta por todas partes. Imagina una carrera de cuadrigas romanas con los caballos empujando las cuadrigas (si entiendes a qué me refiero).
Está claro que el impulso por implementar una SAN es tan fuerte que, a menudo, se conciben proyectos enteros con poco propósito salvo, al parecer, justificar la compra de la SAN. Como en cualquier proyecto, la primera pregunta que uno debe hacerse es “¿Cuál es la necesidad de negocio que estamos intentando cubrir?” Y trabajar a partir de ahí, no “Queremos comprar una SAN, ¿dónde podemos usarla?” Las SAN son complejas, y con la complejidad viene la fragilidad. Muy a menudo las SAN conllevan un alto costo. Pero el aspecto más alarmante de una SAN es la generalizada falta de conocimiento profundo en la industria sobre ellas. Las SAN plantean enormes riesgos técnicos y de negocio que deben superarse para justificar su uso. Las SAN son, sin lugar a dudas, muy emocionantes y bastante útiles, pero eso rara vez es suficiente para justificar el deseo de tener una.
Nos referimos a las SAN como “el almacenamiento de último recurso.” Lo que esto significa es que, al elegir tipos de almacenamiento, esperas poder usar cualquiera de las otras alternativas, como discos locales, DAS (Almacenamiento de Conexión Directa) o NAS (Almacenamiento Conectado en Red), en lugar de una SAN. La mayoría de las veces, otras opciones funcionan de maravilla. Pero hay ocasiones en que las necesidades del negocio exigen requisitos que solo pueden satisfacerse razonablemente con una SAN. Cuando esas surgen, no tenemos elección y debemos usar una SAN. Pero, por lo general, puede evitarse en favor de opciones más simples y normalmente menos costosas o arriesgadas.
Encuentro que la mayoría de las personas que buscan implementar una SAN lo hacen bajo una serie de conceptos erróneos.
El primero es que las SAN, por su propia naturaleza, son altamente fiables. Si bien es cierto que existen muchos proveedores de SAN y productos SAN específicos que son asombrosamente fiables, lo mismo podría decirse de cualquier producto de TI. Los servidores de gama alta en el rango de precios de las SAN de gama alta son igual de fiables que las SAN. Dado que las SAN están fabricadas con los mismos componentes de hardware que los servidores normales, no hay magia que las haga más fiables. Cualquier cosa que pueda utilizarse para hacer fiable una SAN es un efecto derivado de las tecnologías RAS (Fiabilidad, Disponibilidad y Mantenibilidad) de los servidores. Al igual que la SAN, el NAS y el DAS, así como los discos locales, pueden hacerse increíblemente fiables. SAN solo se refiere al dispositivo que se utiliza para servir almacenamiento por bloques en lugar de realizar alguna otra tarea. Una SAN no es más que un servidor muy simple. Las SAN abarcan toda la gama de fiabilidad, con una fiabilidad similar a la de un mainframe en el extremo superior y, en el extremo inferior, dispositivos que no son más que discos duros externos – los dispositivos de red menos fiables de tu red. Así que, en lugar de que SAN signifique fiabilidad, en realidad ofrece algunos casos especiales de ser la fiabilidad más baja que puedas imaginar. Pero, a todos los efectos prácticos, todos los servidores comparten preocupaciones de fiabilidad aproximadamente iguales. Las SAN ganan reputación de fiabilidad porque, a menudo, las empresas destinan a sus SAN presupuestos extremos que no destinan a sus servidores, de modo que la comparación es entre una SAN relativamente de gama alta y un servidor relativamente económico.
El segundo es que SAN significa “grande” y NAS significa “pequeño.” No existe tal asociación. Tanto las SAN como los NAS pueden ser de casi cualquier escala o calidad. Ambos cubren todo el espectro y no hay la más mínima sugerencia, a partir de la tecnología elegida, sobre si un dispositivo es grande o no. De nuevo, como se dijo antes, técnicamente la SAN puede ser “más pequeña” que una solución NAS debido a su posible simplicidad, pero este es un caso especial y, en su mayoría, solo teórico, aunque existen productos SAN en el mercado que pertenecen a esta categoría; simplemente es muy raro encontrarlos en uso.
El tercero es que la SAN y el NAS son drásticamente diferentes por dentro del chasis. Sin duda este no es el caso, ya que la mayoría de los dispositivos SAN y NAS de hoy son lo que se denomina “almacenamiento unificado”, es decir, un dispositivo de almacenamiento que actúa simultáneamente como SAN y como NAS. Esto pone de relieve que la diferencia clave entre ambos no está en la tecnología de back end, ni en el hardware, ni en el tamaño, ni en la fiabilidad, sino que la diferencia que los define son los protocolos utilizados para transferir el almacenamiento. Las SAN son almacenamiento por bloques que exponen dispositivos de bloques sin procesar en la red utilizando protocolos como fibre channel, iSCSI, SAS, ZSAN, ATA over Ethernet (AoE) o Fibre Channel over Ethernet (FCoE). El NAS, por otro lado, utiliza un sistema de archivos en red y expone archivos en la red mediante protocolos de capa de aplicación como NFS, SMB, AFP, HTTP y FTP, que luego viajan sobre TCP/IP.
El cuarto es que las SAN son, intrínsecamente, una tecnología para compartir archivos. Eso es el NAS. La SAN simplemente toma tu almacenamiento por bloques (subsistema de disco duro) y lo pone disponible de forma remota a través de una red. La naturaleza de las redes sugiere que podemos conectar ese almacenamiento a múltiples dispositivos a la vez y, de hecho, físicamente, podemos hacerlo. Igual que antes podíamos conectar físicamente múltiples controladoras en extremos opuestos de un cable plano SCSI con los discos duros colgando en el medio. Esto, en circunstancias normales, destruirá todos los datos de los discos, ya que las controladoras, que no saben nada una de la otra, sobrescriben los datos entre sí provocando una corrupción casi instantánea. Existen mecanismos disponibles en sistemas de archivos en clúster especiales y en sus controladores que permiten hacer esto, pero requieren un conocimiento y una comprensión especiales que son mucho más técnicos de lo que muchas de las personas que adquieren SAN son conscientes de necesitar para lo que, a menudo, creen que es el propósito mismo de la SAN – un desastre tan común que probablemente hablo casi semanalmente con alguien que ha hecho justo esto. Que la SAN ponga en riesgo el mismísimo caso de uso que la mayoría de la gente cree que está diseñada para gestionar y que no solo no entregue la protección casi mágica que se busca, sino que sea, por el contrario, la causa misma de la pérdida de datos, pone de manifiesto el nivel de riesgo que conlleva implementar una tecnología de almacenamiento mal comprendida.
El quinto es que las SAN son rápidas. Las SAN pueden ser rápidas; también pueden ser espantosamente lentas. No hay un aumento de velocidad intrínseco por el uso de la tecnología SAN en sí misma. De hecho, es bastante difícil que las SAN superen los cuellos de botella inherentes que introduce la red en la que se ubican. Como algunas otras opciones de almacenamiento, como el DAS, utilizan todas las mismas tecnologías que la SAN pero carecen del cuello de botella y la latencia de la red propiamente dicha, un DAS equivalente también será un poco más rápido que su complemento SAN. Las SAN son, en general, un poco más rápidas que un NAS equivalente con hardware idéntico, pero incluso esto no está garantizado. La SAN y el NAS se comportan de forma diferente y, en distintos casos de uso, cualquiera de los dos puede ofrecer mejor rendimiento. Rara vez se elegiría una SAN como solución basándose en necesidades de rendimiento.
El sexto es que, por el hecho de ser una SAN, los problemas inherentes asociados a las elecciones de almacenamiento ya no aplican. Un buen ejemplo es el uso de RAID 5. Esto se consideraría una mala práctica en un servidor, pero cuando se trabaja con una SAN (que en teoría es mucho más crítica que un servidor independiente), a menudo se prescinde de una planificación cuidadosa del subsistema de almacenamiento basándose en la creencia de que, por ser una SAN, ha solucionado de algún modo esos problemas o que no aplican. Es cierto que algunas SAN de gama alta sí cuentan con cierta cantidad de funciones de mitigación de riesgos poco probables de encontrar en otros lugares, pero estas son raras y están relegadas exclusivamente a unidades de muy alta gama donde el uso de diseños frágiles ya sería poco común. Es una práctica peligrosa, pero muy común, tener gran cuidado y consideración al planificar el almacenamiento de un servidor físico, pero al usar una SAN esa misma planificación y supervisión a menudo se omite basándose en la suposición de que la SAN gestiona todo eso internamente o que simplemente ya no es necesario.
Habiendo derribado muchos conceptos erróneos sobre la SAN, uno podría preguntarse si las SAN son alguna vez apropiadas. Lo son, por supuesto, bastante importantes e increíblemente valiosas cuando se utilizan correctamente. Los puntos más fuertes de las SAN provienen de la consolidación y de tipos especiales de almacenamiento compartido.
La consolidación fue el motor histórico que llevó a los clientes hacia las soluciones SAN. Una SAN nos permite combinar muchos sistemas de archivos en una única matriz de discos, lo que posibilita un uso mucho más eficiente de los recursos de almacenamiento. Dado que la SAN opera a nivel de bloque, es capaz de hacer esto siempre que pudiera emplearse un subsistema de disco local tradicional. En muchos servidores, e incluso en muchos equipos de escritorio, se desperdicia espacio de almacenamiento debido a las necesidades de crecimiento, la planificación y la granularidad de la capacidad de los discos. Si tenemos veinte servidores, cada uno con matrices de discos de 300 GB pero usando solo 80 GB de esa capacidad, tenemos un gran desperdicio. Con una SAN podríamos consolidar a solo 1,6 TB más una pequeña cantidad necesaria para sobrecarga, y gastar mucho menos en discos físicos que si cada servidor mantuviera su propio almacenamiento.
Una vez que comenzamos a consolidar el almacenamiento, empezamos a buscar oportunidades de consolidación avanzadas. Habiendo consolidado muchos sistemas de archivos de servidor en una sola SAN, tenemos la oportunidad, si nuestra implementación de SAN lo admite, de deduplicar y comprimir esos datos, lo que, en muchos casos como los sistemas de archivos de servidor, puede dar lugar potencialmente a una reducción significativa de la utilización. Así que nuestros 1,6 TB del ejemplo anterior podrían terminar siendo en realidad solo 800 GB o menos. De repente, nuestras cifras de consolidación van mejorando cada vez más.
Para aprovechar la consolidación de manera eficiente es necesario contar con escala, y aquí es donde las SAN realmente brillan – cuando la escala, tanto en capacidad como, más importante aún, en el número de nodos conectados, se vuelve muy grande. Las SAN son más adecuadas para la consolidación de almacenamiento a gran escala. Este es su punto óptimo y lo que las hace casi omnipresentes en las grandes empresas y muy raras en las pequeñas.
Las SAN también son muy importantes para ciertos tipos de clustering y almacenamiento compartido que requieren acceso a un único sistema de archivos compartido. En realidad, esta es una necesidad bastante rara fuera de una circunstancia especial – las bases de datos. La mayoría de las aplicaciones se conforman con utilizar cualquier tipo de almacenamiento que se les proporcione, pero las bases de datos a menudo requieren acceso de bajo nivel por bloques para poder manipular sus datos de la manera más eficaz. Por ello, rara vez pueden usarse, o usarse de forma eficaz, sobre NAS o servidores de archivos. Proporcionar entornos de almacenamiento de alta disponibilidad para clústeres de bases de datos ha sido durante mucho tiempo un caso de uso clave del almacenamiento SAN.
Fuera de estos dos casos de uso principales, que justifican la gran mayoría de las instalaciones de SAN, la SAN también proporciona altos niveles de flexibilidad de almacenamiento, lo que hace que potencialmente sea muy sencillo mover, ampliar y modificar el almacenamiento en un entorno grande sin necesidad de lidiar con traslados físicos ni con complicados procesos de adquisición y aprovisionamiento. De nuevo, al igual que la consolidación, esto es un artefacto de la gran escala.
En entornos muy grandes, el uso de la SAN también puede emplearse para establecer un punto de demarcación entre los equipos de almacenamiento y los de ingeniería de sistemas, permitiendo que haya un traspaso en la capa de red, generalmente de fibre channel o iSCSI. Esta clara separación de funciones puede ser fundamental para permitir que los equipos estén altamente segregados en empresas que desean equipos de almacenamiento, redes y sistemas muy diferenciados. Esto permite que el equipo de almacenamiento no haga otra cosa que centrarse en el almacenamiento y que el equipo de sistemas no haga otra cosa que centrarse en los sistemas, sin ninguna necesidad de conocer las implementaciones del otro equipo.
Durante mucho tiempo, las SAN también se presentaron como un medio conveniente para mejorar el rendimiento del almacenamiento. Esto no es un componente intrínseco de la SAN, sino una consecuencia de su uso común para la consolidación. De forma similar a la virtualización cuando se usa como consolidación, las SAN compartidas tendrán una ventaja natural al contar con una mejor utilización de los ejes disponibles, cachés centralizadas y hardware más grande que el almacenamiento equivalente repartido entre muchos servidores individuales. Al igual que los recursos de CPU compartidos, cuando la SAN no recibe solicitudes de varios clientes tiene la capacidad de dedicar toda su capacidad a atender las solicitudes de un único cliente, proporcionando una experiencia de rendimiento medio potencialmente muy superior a la que un servidor individual podría lograr de forma asequible por sí solo.
Sin embargo, el uso de la SAN para el rendimiento está perdiendo rápidamente popularidad debido a la llegada del almacenamiento SSD, que se está volviendo muy común. A medida que los SSD, con una latencia increíblemente baja y un alto rendimiento de IOPS, bajan de precio hasta el punto de que se añaden a servidores independientes como caché local o, potencialmente, incluso se usan como almacenamiento principal, el cuello de botella de la red de las SAN se convierte en un factor cada vez mayor, lo que dificulta cada vez más que los beneficios de consolidación de una SAN compensen los beneficios de rendimiento de los SSD locales. Los SSD pueden ser muy disruptivos para el mercado del almacenamiento compartido, ya que devuelven la ventaja de rendimiento hacia el almacenamiento local – simplemente lo más reciente en el flujo y reflujo del diseño de la arquitectura de almacenamiento.
El aspecto más importante que hay que recordar sobre el uso de la SAN es que la SAN no debería ser un punto de partida por defecto en la planificación del almacenamiento. Es una de muchas opciones tecnológicas y una que, a menudo, no encaja como se pretende o lo hace, pero a un precio innecesariamente alto, ya sea en términos monetarios o de complejidad. Empieza por definir los objetivos y las necesidades del negocio. Elige la SAN cuando resuelva esas necesidades de la manera más eficaz, pero mantén la mente abierta y considera las necesidades generales de almacenamiento del entorno.
