• No se han encontrado resultados

Soluciones de almacenamiento para los servicios informáticos de la red UCLV

N/A
N/A
Protected

Academic year: 2020

Share "Soluciones de almacenamiento para los servicios informáticos de la red UCLV"

Copied!
87
0
0

Texto completo

(1)Universidad Central “Marta Abreu” de Las Villas Facultad de Ingeniería Eléctrica Departamento de Automática y Sistemas Computacionales. TRABAJO DE DIPLOMA Soluciones de almacenamiento para los servicios informáticos de la red UCLV. Autor: Arístides Gutiérrez Molinet. Tutor: Manuel Oliver Domínguez. Santa Clara 2016 "Año 58 de la Revolución".

(2) Universidad Central “Marta Abreu” de Las Villas Facultad de Ingeniería Eléctrica Departamento de Automática y Sistemas Computacionales. TRABAJO DE DIPLOMA Soluciones de almacenamiento para los servicios informáticos de la red UCLV. Autor: Arístides Gutiérrez Molinet Email: [email protected]. Tutor: Manuel Oliver Domínguez Email: [email protected]. Santa Clara 2016 "Año 58 de la Revolución".

(3) Hago constar que el presente trabajo de diploma fue realizado en la Universidad Central “Marta Abreu” de Las Villas como parte de la culminación de estudios de la especialidad de Ingeniería en Automática, autorizando a que el mismo sea utilizado por la Institución, para los fines que estime conveniente, tanto de forma parcial como total y que además no podrá ser presentado en eventos, ni publicados sin autorización de la Universidad.. Firma del Autor Los abajo firmantes certificamos que el presente trabajo ha sido realizado según acuerdo de la dirección de nuestro centro y el mismo cumple con los requisitos que debe tener un trabajo de esta envergadura referido a la temática señalada.. Firma del Autor. Firma del Jefe de Departamento donde se defiende el trabajo. Firma del Responsable de Información Científico-Técnica.

(4) i. PENSAMIENTO. Todo lo que enaltece y honra implica sacrificios. Ernesto Che Guevara de la Serna..

(5) ii. DEDICATORIA. En especial a mis bisabuelos (Felipe y Candita) y abuelos (Pápa y Máma), por haber criado y empinado por caminos pedregosos a su nieto que los ama con todas las fuerzas donde quiera que estén..

(6) iii. AGRADECIMIENTOS. A mi familia, especialmente a mis bisabuelos, a Pápa y Máma, a La Hormiga y Agabama por ser mi paraíso que me crió, a mi abuela Isabel por criarme y salvarme la vida con leche materna de una mulata, a mi madre y mi padre por ser una luz que me guía en el horizonte, a mis hermanas Yeni y Arlet, a mi tíos Hernán y Arelis que siempre aportaron su granito de arena, a Mími “la mujer de mis sueños”. A los profesores del Departamento de Automática, los que están y ya no están, por ser las principales fuentes del conocimiento adquirido durante estos cinco años y poner en alto el orgullo de la carrera de Ingeniería en Automática y Sistemas Computacionales. A Arletis M. (Tina) una buena amiga en el tiempo que estuvo a mi lado. A Rocío G. una inigualable compañera que siempre quise. A Gina RD. un amor incondicional. A Rosita (AFRODITA) por su incomparable ayuda, amistad y por el pacto de familiaridad. A la señorita Ashly con su corazón infinito que no hay cosa alguna que no quepa en él y añoro que nunca se valla de mí lado. A Ernesto (Ernest the Masther) por su ayuda de buen compañero. A Google por ser el mejor buscador en Internet. A Reiniel (Sr_Lord_Black_Snow), a los técnicos de lab. PAIN_DENDI, de tele Yaniel, a Rodolfo (Rex), a DRACULA por acogerme en su local y prestarme su ayuda humanitaria en la elaboración de la tesis. A Manuel Oliver por aceptarme como tesiante y lograr esta meta..

(7) iv A mis excompañeros de aula del curso (2014-2015) y (2015-2016) por compartir con ellos esta travesía. A Blizzard por acogerme sin importar el momento. Al mejor profesor de matemática del IPVC de Santa Clara cuando estaba en período de prueba de ingreso. A mi tía Anita, a mis primos Randi y Adriano, A Marco e Iris y al señor Amado por su preocupación. A los viciosos del Chat UCLV y doteros que siempre se preguntaban cómo estudiaba una de las mejores y difíciles carreras de la universidad. A todos los que me prestaron sus cuentas de la universidad para la elaboración de la tesis. A mi profesor de la primaria Reídel por impregnarme al hábito de estudio en especial las matemáticas, aunque a veces recurría a los reglazos. A Sergito, A Malagamba, A Mazuela, a todos aquellos que confiaron en mí en el período del servicio militar, que yo podía aprobar las pruebas de ingreso a la universidad. A mis vecinos del barrio por todo su apoyo. A Reik por su canción “Creo en ti”. Al decano Juan Pablo Barrios por toda su ayuda. A mis profesores de la Secundaria y del Preuniversitario por inculcarme el deseo de estudiar. A Mamerto que siempre me recordaba cobrar el estipendio de la UCLV. A todos aquellos que de una forma u otra aportaron a la causa. A God que de seguro aporto su gran contribución. A la universidad Central de las Villas como a muchos les gusta decir UCLV, por ser la mejor escuela que he tenido en la vida en todos los aspectos..

(8) v. RESUMEN. La cantidad de información almacenada ha tenido un incremento vertiginoso en el mundo en los últimos años. Entre los principales métodos para el almacenamiento de datos por hardware que suelen usarse en servidores están los arreglos de discos o niveles RAID permitiendo que aunque un disco falle mecánicamente los datos del conjunto sigan siendo accesibles para los usuarios. También se dispone de arquitecturas más complejas como son DAS, NAS, SAN y la híbrida SAN-NAS, las cuales producen beneficios como interconectividad, escalabilidad, alta disponibilidad, alto rendimiento, tamaño infinito, puede tener ubicación dispersa, administración e información centralizada, con una alta seguridad y fiabilidad. Por otra parte las soluciones basadas en software son mucho más flexibles, permitiendo construir espacios de almacenamiento en discos de diferentes tamaños o incluso particiones y compartirlos con usuarios remotos. Se debe hacer mención especial al protocolo NFS, al sistema de archivos de alta disponibilidad y escalabilidad GlusterFS, la plataforma abierta de almacenamiento unificada y distribuida Ceph. En este trabajo se analiza la Red UCLV buscando los principales servicios, sus necesidades de almacenamiento y como encajan las tecnologías antes mencionadas. Se analiza si las soluciones actuales son las mejores, y en caso de no serlo se aconseja una mejor, con el objetivo de optimizar el rendimiento, seguridad y escalabilidad de los servicios..

(9) vi. ÍNDICE PENSAMIENTO .....................................................................................................................i AGRADECIMIENTOS ........................................................................................................ iii RESUMEN ............................................................................................................................. v INTRODUCCIÓN .................................................................................................................. 1 Capítulo 1: Almacenamiento a nivel físico............................................................................. 4 1.1. Introducción. ........................................................................................................... 4. 1.1.1 Objetos almacenables. ........................................................................................... 5 1.1.2 Big Data. ............................................................................................................... 6 1.1.3 Información. ........................................................................................................... 6 1.2. Medios de almacenamientos tradicionales. ............................................................ 7. 1.3. Arquitecturas de almacenamiento ........................................................................... 8. 1.4. Sistemas de almacenamiento inteligente. ............................................................... 8. 1.4.1 Niveles RAID estándar. ....................................................................................... 10 1.5. Red de Almacenamiento Local. ............................................................................ 14. 1.5.1 DAS (Direct-Attached-Storage). ......................................................................... 15 1.5.2 NAS (Network Attached Storage). ...................................................................... 15 1.5.3 SAN (Storage Area Network). ............................................................................. 17 1.5.4 Beneficios y ventajas de las redes de almacenamiento SAN. .............................. 18 1.5.5 Breve comparativa SAN, DAS y NAS. ............................................................... 19 1.1.6 Híbrido SAN-NAS. .............................................................................................. 21 1.6. Tecnologías. .......................................................................................................... 22. 1.6.1 Infiniband. ............................................................................................................ 22.

(10) vii 1.7. Consideraciones finales del Capítulo. ................................................................... 26. CAPÍTULO 2. 2.1. SERVICIOS DE ALMACENAMIENTO ................................................ 27. NFS. ...................................................................................................................... 27. 2.1.1 Características principales. .................................................................................. 29 2.1.2 Versiones de NFS ................................................................................................ 30 2.2. GlusterFS. ............................................................................................................. 31. 2.2.1 Distribución y Replicación de la Data. ................................................................ 33 2.3. Ceph. ..................................................................................................................... 37. 2.3.1 Surgimiento de Ceph. .......................................................................................... 37 2.3.2 Arquitectura de Ceph. .......................................................................................... 38 2.4. Consideraciones finales del Capítulo. ................................................................... 40. CAPÍTULO 3.. Almacenamiento en la Red UCLV. .......................................................... 42. 3.1. Historia de la Red UCLV...................................................................................... 42. 3.2. Servicios más importantes en la Red UCLV y sus requerimientos. ..................... 44. 3.2.1 Cuentas de usuario ............................................................................................... 45 3.2.2 Correo Electrónico. .............................................................................................. 46 3.2.3 Navegación por Internet...................................................................................... 47 3.2.4 Almacenamiento de programas y recursos compartidos. .................................... 49 3.2.5 Almacenamiento de la información de usuarios. ................................................. 50 3.2.6 Clúster de cálculo................................................................................................. 50 3.2.7 Bases de datos ...................................................................................................... 51 3.3. Análisis económico. .............................................................................................. 52. 3.4. Conclusiones del Capítulo. ................................................................................... 53. CONCLUSIONES Y RECOMENDACIONES ................................................................... 54.

(11) viii Conclusiones ..................................................................................................................... 54 Recomendaciones ............................................................................................................. 55 REFERENCIAS BIBLIOGRÁFICAS ................................................................................. 58 ANEXOS .............................................................................................................................. 63.

(12) INTRODUCCIÓN. 1. INTRODUCCIÓN. En sus comienzos la red UCLV presentaba condiciones muy precarias, solo 3 PCs se utilizaban como servidores en el año 2000. Después de un despliegue de Fibra óptica hasta los nodos del campus principal, la red creció de forma acelerada, contando con equipamiento de clase profesional, recibidos de 4 proyectos internacionales enfocados en el mejoramiento de la red en el período 2004 al 2014. Las necesidades de almacenamiento fueron creciendo con el paso de los años al surgir servicios básicos como: cuentas de usuario, correo interno y externo, proxy, navegación por internet y servicios de almacenamiento como: programas, recursos compartidos, información de usuarios, resultados de clúster de cálculo, entre otros. En este trabajo se abordan varias tecnologías que solucionan el problema anteriormente dicho. Normalmente, cuando una compañía estima el TCO (Coste total de propiedad) con respecto al coste por byte, el coste se puede justificar con más facilidad. El bloqueo impuesto por Estado Unidos, prohíbe vender estas tecnologías de punta a Cuba y tener soluciones propietarias, lo que dificulta grandemente el desarrollo de los avances tecnológicos en la UCLV y en el país. El problema científico se enfoca entonces en: ¿Dispone la Red UCLV de las mejores soluciones de almacenamiento para sus servicios más usados que le brinden el mejor rendimiento, seguridad y escalabilidad? Como hipótesis se plantea que, mediante la implementación de combinaciones de soluciones de almacenamiento por hardware y software actuales se puede mejorar el.

(13) INTRODUCCIÓN. 2. rendimiento, la seguridad y sobre todo la escalabilidad de varios servicios ofrecidos por la Red UCLV de forma transparente y económicamente viable. Por tanto, el objetivo general propuesto para este trabajo es:  Realizar un estudio de las soluciones por hardware y software disponibles para el almacenamiento de datos con vista a proponer soluciones que mejoren el rendimiento, seguridad y escalabilidad de los servicios principales en la Red UCLV. Teniendo como objetivos específicos: . Estudiar en la bibliografía especializada los diferentes tipos de soluciones hardware y software disponibles para almacenamiento de información.. . Identificar los servicios en la Red UCLV con mayores requerimientos de almacenamiento en cuanto a seguridad, estabilidad y escalabilidad.. . Proponer el modelo de hardware y software más adecuado a las necesidades de cada servicio de los identificados en la Red UCLV de forma que queden cubiertas sus capacidades.. . Evaluar el desempeño de la configuración elegida.. Organización del informe: El informe está dividido en: introducción, tres capítulos, conclusiones, recomendaciones, referencias bibliográficas y anexos. Los capítulos están organizados de la siguiente manera: Capítulo I: Se realiza el análisis de la literatura especializada consultada. Se presentan las principales metodologías que constituyen el eje de esta investigación, introduciendo los temas relacionados. Se plantea la panorámica general existente en torno al problema que se aborda y un estudio comparativo de las estrategias que se usan en la actualidad. Se hace énfasis en la descripción de las diferentes variantes de solución de la problemática de mejorar la velocidad de acceso y de garantizar la integridad de los datos almacenados por hardware como los RAID, los DAS, los NAS y los SAN. Capítulo II: Es muy semejante al capítulo I pero se especializa en las soluciones basadas en software. Se incluyen los procedimientos para la instalación y la configuración básica de las soluciones propuestas..

(14) INTRODUCCIÓN. 3. Capítulo III: Se analiza la red de la Universidad Central “Marta Abreu” de Las Villas, se enumeran los servicios más importantes y se propone una de las soluciones de almacenamiento vistas para cada caso. Se muestra como en algunos casos la solución propuesta coincide con la actual. En otros casos esto no ocurre por lo que se enumeran brevemente las ventajas en el cambio..

(15) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 4. Capítulo 1: Almacenamiento a nivel físico. 1.1. Introducción.. Desde los años 60 los rápidos avances en las tecnologías de la información han llegado a muchos ámbitos. En casi todos los campos de trabajo e investigación modernos se comenzó a utilizar la informática para gestionar los grandes volúmenes de información que se generaban; después comenzó a crecer el número de documentos creados directamente en los ordenadores y que se almacenaban en el mismo formato electrónico en el que habían sido originados. Los archivos han sufrido cambios en cuanto a sus funciones, ya que deben adaptarse para acoger a los nuevos documentos electrónicos. El CIA (Consejo Internacional de Archivos) determina que las funciones del archivo son identificar, salvaguardar y preservar los documentos y asegurar que van a ser accesibles y comprensibles. Las actividades que se incluyen en la función del archivo comienzan en la primera etapa del ciclo de vida de los documentos y terminan al final de dicho ciclo, y han de tener presente el objetivo principal del archivo, que es asegurar la creación y la preservación del valor probatorio de las actividades o transacciones realizadas por los creadores de los documentos. Al tratarse de documentos electrónicos, la función del archivo va a ser sometida a ciertas modificaciones en cuanto a la creación de estos, su valoración y selección, preservación, acceso y uso. No se puede decir todavía que se ha llegado a la “oficina sin papeles”, pero sí que cada vez son más los documentos que nacen y viven en las organizaciones sin pasar por el formato papel. [24] La información crece en importancia diariamente en el transcurso de la vida cotidiana..

(16) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 5. Irremediablemente el ser humano se ha convertido en dependiente de la información en lo que ha transcurrido del siglo XXI, en un mundo sobre demanda, en el sentido de que se necesita la información donde y cuando sea requerida. Se accede a Internet diariamente en el desarrollo de búsquedas, participación en redes sociales, se envían y reciben correos electrónicos, se comparten fotos, videos y otro sinnúmero de aplicaciones. Equipados con un número creciente de dispositivos generadores de contenido, más y más información es creada por individuos y por diferentes negocios y, dicha información, individualmente gana valor cuando se es compartida con otros. Cuando la información reside localmente en PCs, laptops, dispositivos móviles como, smartphones, cellphones, tablets, cámaras, etc.; para compartirla se debe usar un medio común fácilmente accesible que generalmente está localizado en centros de datos. 1.1.1 Objetos almacenables. La importancia, dependencia y el volumen de información para el mundo de los negocios también continúa creciendo a pasos agigantados, estos dependen de lo rápido y confiable que puedan acceder a los datos críticos para el negocio, por ej., sistemas de facturación de las empresas, comercio electrónico, cajero automático, diseño de productos, administración de inventarios, portales Web, tarjetas de crédito y mercados capitales en general. Esta dependencia creciente de la información sobre los negocios ha multiplicado los retos en cuanto a almacenar, proteger y administrar los datos, es por esto que las redes de almacenamiento han cobrado inmenso valor durante la evolución de las tecnologías y desarrollo de nuevos negocios en la actualidad. [55] Se pueden definir a los datos como una colección de bits en bruto de los cual se podrían extraer conclusiones. Cartas escritas a mano, un libro impreso, una fotografía de la familia, una película en cinta de video, impresos y copias debidamente firmadas, libros de contabilidad de un banco, y libretas de un titular de la cuenta son ejemplos que contienen datos en el mundo analógico. Esta misma información digitalizada son los datos del mundo actual. Todas las empresas que de alguna forma generan información digital deben de velar por garantizar que esta información persista en el tiempo y que su integridad no se vea afectada..

(17) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 6. Esto nos lleva al hecho de que muchas veces es tan importante no solo tener la información si no también garantizar que es la información auténtica y en caso de que no lo sea tener una forma de conseguir la información original. Con esto se quiere decir que básicamente por cada dato real almacenado existen más datos asociados que deben ser también almacenados por ejemplo en forma de sumas de integridad y de copias de seguridad. En un sistema diseñado correctamente los recursos destinados al almacenamiento de los datos dependerán de las condiciones a las que se espera acceder a dichos datos. 1.1.2 Big Data. En los últimos tiempos se ha comenzado a manejar el término Big Data para referirse no a un dato que sea grande sino a un gran grupo de datos. Básicamente Big Data es un volumen enorme de datos de los que se desea extraer un resumen, orientación o tendencia que ayude a un negocio o a una aplicación a obtener mejores resultados. Estos grupos de datos generalmente por su tamaño están más allá de las capacidades físicas de almacenar de cualquier dispositivos deben ser tratados de forma diferente al resto de los datos que usualmente se manejan. Normalmente estos datos provienen de aplicaciones de procesamiento paralelo masivas, captura de comportamiento de usuarios o archivos logs de trazas del comportamiento de usuarios. [31] 1.1.3 Información. El hecho de almacenar datos no significa que se tenga información. Se puede definir la información como la inteligencia y/o conocimiento derivado de los datos. Los datos, bien sean estructurados o no, no reflejan ningún propósito a menos de que sean presentados de una manera que les dé sentido. Los negocios analizan fuentes de datos para identificar tendencias. Con base en estas tendencias, una compañía puede planear o modificar sus estrategias de negocio. [12].

(18) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 7. En cuanto al almacenamiento es normal que se almacenen datos, se procesen y luego la información resultante sea también almacenada de forma que el acceso a ella sea mucho más rápido cada vez que los usuarios la necesiten. Con los avances de los computadores y tecnologías de la comunicación, la tasa de crecimiento de la creación de datos se ha incrementado exponencialmente. Los siguientes son algunos de los factores que han provocado esta tendencia:  Incremento en la capacidad de procesamiento de datos.  Bajo costo de almacenamiento digital.  Tecnologías de comunicación más rápidas y asequibles.  Proliferación de aplicaciones y dispositivos inteligentes. 1.2. Medios de almacenamientos tradicionales.. Desde el inicio mismo de los equipos de cómputo, los medios de almacenamiento han ido evolucionando a la par. Es difícil decir si el incremento en la capacidad de procesamiento ha obligado a desarrollar los medios de almacenamiento o si ha sido al revés. En cualquier caso ambas tecnologías han avanzado a través del tiempo junto con otras como por ejemplo la conectividad, la adquisición de datos y la forma de las interfaces hombre máquina. A continuación se muestra una lista de los medios de almacenamientos que han ido marcando un hito durante la historia de los medios computacionales:  cintas de casete (660 KB por lado)  disquetes magnéticos (hasta 1.2 MB)  discos ópticos (700 MB)  DVD  discos duros con tecnología mecánica  USB  tarjetas SD  unidades de estado Sólido.

(19) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 8. En los anexos I y III se pueden encontrar imágenes y algunos datos adicionales de estas tecnologías. 1.3. Arquitecturas de almacenamiento. Tradicionalmente el almacenamiento de cualquier tipo de información era típicamente interno al servidor o en periféricos conectados directamente a ella y no podía ser compartido con ningún otro servidor; esta arquitectura es conocida como “Server Centric Storage" (almacenamiento centrado en Servidores). En esta variante, los servidores son islas de cómputo y el almacenamiento presenta límites muy cortos en cuanto a capacidad de almacenamiento, haciendo no disponible la información a otros servidores/sistemas. Para superar esto, la arquitectura de almacenamiento evolucionó de “Server Centric” a “Information Centric Storage" (almacenamiento centrado en la Información), en donde los dispositivos de almacenamiento son administrados centralmente e independiente de los servidores. Casi todas las variantes que se comentan en este trabajo están basadas en esta arquitectura. [12] 1.4. Sistemas de almacenamiento inteligente.. Las aplicaciones críticas de negocio requieren altos niveles de desempeño, disponibilidad, seguridad y escalabilidad en la información que se maneja. Algunas tecnologías de sistemas de almacenamiento antiguas no estaban en la capacidad de superar las restricciones de desempeño debido a las limitaciones del disco y sus componentes mecánicos. Un disco es un elemento central que gobierna el desempeño de cualquier sistema de almacenamiento y al ser su tecnología tradicionalmente en gran parte mecánica, el tiempo de vida está predefinido por la calidad de la manufactura en gran parte. El simple hecho del desgaste mecánico ya representa una variable clara del tiempo máximo de uso de un disco. Para atenuar este problema se comenzó a usar grupos de discos en vez de discos individuales. Esto se conoce como arreglos de discos o RAID. [15] Los arreglos de almacenamiento están equipados con capacidades grandes de memoria cache y múltiples caminos de I/O usando algoritmos sofisticados para cumplir con los.

(20) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 9. requerimientos de aplicaciones sensibles al desempeño. Estos sistemas proveen capacidades de procesamiento de I/O (entrada y salida) altamente optimizadas. Dichos arreglos tienen un ambiente de operación que de forma inteligente y óptima, manejan la administración, asignación y utilización de los recursos. Dependiendo de su configuración, los beneficios de un RAID respecto a un único disco son: mayor integridad, mayor tolerancia a fallos, mayor throughput (rendimiento) y mayor capacidad. Originalmente su ventaja clave consistía en la habilidad de combinar varios dispositivos de bajo coste y tecnologías más antiguas en un conjunto, ofreciendo mayor capacidad, fiabilidad, velocidad o una combinación de éstas que un solo dispositivo de última generación y de coste más alto. En el nivel más simple, un RAID combina varios discos duros en una sola unidad lógica. Así, en lugar de ver varios discos duros diferentes, el sistema operativo ve uno solo. Los RAID suelen usarse en servidores y normalmente aunque no es necesario, se implementan con unidades de disco de la misma capacidad. Debido a la disminución del precio de los discos duros y la mayor disponibilidad de las opciones RAID incluidas en los chipsets de las placas base y se encuentran también como opción en las computadoras personales más avanzadas. Esto es especialmente frecuente en las computadoras dedicadas a tareas intensivas y que requiera asegurar la integridad de los datos en caso de fallo del sistema. Esta característica no está obviamente disponible en los sistemas RAID por software, que suelen presentar el problema de reconstruir el conjunto de discos, cuando el sistema es reiniciado tras un fallo para asegurar la integridad de los datos. Por el contrario, los sistemas basados en software son mucho más flexibles, permitiendo construir RAID de particiones en lugar de discos completos y agrupar en un mismo RAID, discos conectados en varias controladoras, así como los basados en hardware añade un punto de fallo más al sistema, la controladora RAID. Todas las implementaciones pueden soportar el uso de uno o más discos de reserva (hot spare), unidades preinstaladas que pueden usarse inmediatamente, casi siempre automáticamente tras el fallo de un disco del RAID. Esto reduce la duración del período de reparación al acortar el tiempo de reconstrucción..

(21) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 10. 1.4.1 Niveles RAID estándar. Los niveles RAID más comúnmente usados son: • RAID 0: Conjunto dividido. • RAID 1: Conjunto en espejo. • RAID 5: Conjunto dividido con paridad distribuida. Existen otras definiciones usadas como el RAID 6 o RAID 1+0 o RAID10 pero son básicamente combinaciones de las 3 primeras. RAID 0 (Data Striping): También llamado conjunto dividido o volumen dividido, distribuye los datos equitativamente entre dos o más discos sin información de paridad que proporciona redundancia. Es importante señalar que el RAID 0 no es redundante.. Figura 1-1: RAID 0. Este se usa normalmente para incrementar el rendimiento, aunque también puede utilizarse como forma de crear un pequeño número de grandes discos virtuales a partir de un gran número de pequeños discos físicos. Puede ser creado con discos de diferentes tamaños, pero el espacio de almacenamiento añadido al conjunto, estará limitado por el tamaño del disco más pequeño. Una buena implementación, dividirá las operaciones de lectura y escritura en bloques de igual tamaño, por lo que distribuirá la información equitativamente entre los dos discos. También es posible crear un RAID 0 con más de dos discos, donde la fiabilidad del conjunto será igual a la fiabilidad media de cada disco entre el número de discos del conjunto; es decir, la fiabilidad total medida como MTTF o MTBF (tiempo.

(22) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 11. medio entre fallos) es aproximadamente inversamente proporcional al número de discos del conjunto, pues para que el conjunto falle es suficiente con que lo haga cualquiera de sus discos.. RAID 1: Crea una copia exacta o espejo de un conjunto de datos en dos o más discos. Esto resulta útil cuando el rendimiento en lectura es más importante que la capacidad. Un conjunto RAID 1 sólo puede ser tan grande como el más pequeño de sus discos. Una típica configuración. clásica consiste en dos discos en espejo, lo que incrementa. exponencialmente la fiabilidad respecto a un solo disco. La probabilidad de fallo del conjunto es igual al producto de las probabilidades de fallo de cada uno de los discos, pues para que el conjunto falle es necesario que lo hagan todos sus discos.. Figura 1-2: RAID 1. Adicionalmente, dado que todos los datos están en dos o más discos, con hardware habitualmente independiente, el rendimiento de lectura se incrementa aproximadamente como múltiplo lineal del número de las copias; es decir, un RAID 1 puede estar leyendo simultáneamente dos datos diferentes en dos discos distintos, por lo que su rendimiento se duplica. Para maximizar los beneficios sobre el rendimiento, se recomienda el uso de controladores de discos independientes, una para cada disco, denominada splitting o duplexing. Al escribir, el conjunto se comporta como un único disco, dado que los datos deben ser escritos en todos los discos. Por tanto, el rendimiento no mejora..

(23) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 12. Por otra parte, presenta muchas ventajas de administración. En algunos entornos 24/7, es posible dividir el espejo: marcar un disco como inactivo, hacer una copia de seguridad de dicho disco y luego reconstruir el espejo. Esto requiere que la aplicación de gestión del conjunto soporte la recuperación de los datos del disco en el momento de la división. Este procedimiento es menos crítico que la presencia de una característica de snapshot en algunos sistemas de archivos, en la que se reserva algún espacio para los cambios, presentando una vista estática en un punto temporal dado del sistema de archivos. Alternativamente, un conjunto de discos puede ser almacenado. RAID 5: También llamado distribuido con paridad, es una división de datos a nivel de bloques que distribuye la información de paridad entre todos los discos miembros del conjunto. El RAID 5 ha logrado popularidad gracias a su bajo coste de redundancia. Generalmente, se implementa con soporte hardware para el cálculo de la paridad y necesita un mínimo de 3 discos para ser implementado. Cada vez que se escribe un bloque de datos en esta configuración, se genera un bloque de paridad. Un bloque se compone a menudo de muchos sectores consecutivos de un disco. Una serie de bloques (un bloque de cada uno de los discos del conjunto) recibe el nombre colectivo de división (stripe). Si otro bloque, o alguna porción de un bloque, se escriben en esa misma división, el bloque de paridad (o una parte del mismo) es recalculado y vuelto a escribir. El disco utilizado por el bloque de paridad está escalonado de una división a la siguiente, de ahí el término bloques de paridad distribuidos. Los bloques de paridad no se leen en las operaciones de lectura de datos, ya que esto sería una sobrecarga innecesaria y disminuiría el rendimiento. Sin embargo, los bloques de paridad se leen cuando la lectura de un sector de datos provoca un error de CRC. En este caso, el sector en la misma posición relativa, dentro de cada uno de los bloques de datos restantes y dentro del bloque de paridad en la división, se utiliza para reconstruir el sector erróneo. El error CRC se oculta así del resto del sistema. De la misma forma, si falla un disco del conjunto, los bloques de paridad de los restantes discos son combinados matemáticamente con los bloques de datos de los restantes discos para reconstruir los datos del que ha fallado. Las escrituras en un RAID 5 son costosas en términos de operaciones de disco y tráfico entre estos y la controladora..

(24) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 13. Figura 1-3: RAID 5. Lo anterior se denomina “Modo Interino de Recuperación de Datos” (Interim Data Recovery Mode). El sistema sabe que un disco ha fallado, pero sólo con el fin de que el sistema operativo pueda notificar al administrador que una unidad necesita ser reemplazada: las aplicaciones en ejecución siguen funcionando ajenas al fallo. Las lecturas y escrituras continúan normalmente en el conjunto de discos, aunque con alguna degradación de rendimiento. En el “Modo Interno de Recuperación de Datos”, el RAID 5 puede ser ligeramente rápido, debido a que, cuando el CRC y la paridad están en el disco que falló, los cálculos no tienen que realizarse. El fallo de un segundo disco provoca la pérdida completa de los datos. El número máximo de discos en un grupo de redundancia RAID 5 es teóricamente ilimitado, pero en la práctica es común limitar el número de unidades. Los inconvenientes de usar grupos de redundancia mayores son una mayor probabilidad de fallo simultáneo de dos discos, un mayor tiempo de reconstrucción y una mayor probabilidad de hallar un sector irrecuperable durante una reconstrucción. A medida que el número de discos en un conjunto crece, el MTBF (mean time between failures) puede ser más bajo que el de un único disco. Esto sucede cuando la probabilidad de que falle un segundo disco de un conjunto en el que ha fallado un disco en el tiempo necesario para detectar, reemplazar y recrear dicho disco es mayor que la probabilidad de fallo de un único disco. Algunos vendedores RAID evitan montar discos de los mismos lotes en un grupo de redundancia para minimizar la probabilidad de fallos simultáneos al principio y al final de su vida útil..

(25) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 14. Las implementaciones RAID 5 presentan un mal rendimiento cuando se someten a cargas de trabajo que incluyen muchas escrituras más pequeñas que el tamaño de una división. Esto se debe a que la paridad debe ser actualizada para cada escritura, lo que exige realizar secuencias de lectura, modificación y escritura tanto para el bloque de datos como para el de paridad. Implementaciones más complejas incluyen a menudo caches de escritura no volátiles para reducir este problema de rendimiento. En el caso de un fallo del sistema cuando hay escrituras activas, la paridad de una división puede quedar en un estado inconsistente con los datos. Si esto no se detecta y repara antes de que un disco o bloque falle, pueden perderse datos debido a que se usará una paridad incorrecta, para reconstruir el bloque perdido en dicha división. Esta potencial vulnerabilidad se conoce a veces como agujero de escritura. Son comunes el uso de caches no volátiles y otras técnicas para reducir la probabilidad de ocurrencia de esta vulnerabilidad. La tecnología RAID hizo una importante contribución en mejorar el desempeño del almacenamiento y confiabilidad, pero los discos, aún con implementaciones de RAID no siempre pueden cumplir con los requerimientos de las aplicaciones actuales. Con los avances tecnológicos, una nueva generación de soluciones de almacenamiento conocidas como sistemas de almacenamiento inteligentes ha evolucionado. 1.5. Red de Almacenamiento Local.. Aunque los sistemas basados en RAID significaron una mejora indiscutible con respecto a la situación que existía al comienzo de la era del surgimiento de los medios de cómputo con el paso del tiempo y sobre todo con el incremento en la cantidad de personas conectadas en redes y la velocidad de sus transferencias hicieron evidente deficiencias en estas soluciones. La era de Internet necesitaba arquitecturas de almacenamiento más eficientes y escalables. Como aspecto interesante se puede decir que casi todas estas ideas surgieron durante el reinado de las mainframe pero no pudieron evolucionar debido al pobre desempeño de la electrónica en aquel momento..

(26) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 15. 1.5.1 DAS (Direct-Attached-Storage). Se trata de dispositivos de almacenamiento directamente conectados a las máquinas, como es el caso de discos duros internos, cabinas de disco (en rack o en cualquier otro formato) conectadas directamente a un servidor o unidades para backup. Solían basarse en tecnologías SCSI (Small Computers System Interface), FC (Fiber Channel), e IDE. Esta arquitectura de almacenamiento, se relacionaban principalmente con la época de los mainframe de IBM, y los miniordenadores UNIX, pues aquellos años se dotaba a estas máquinas de sus propios medios locales de almacenamiento y backup. Sin embargo, hoy en día, los PCs de sobremesa utilizan arquitectura de almacenamiento DAS, mientras que en los servidores de las empresas, empiezan a caer en desuso, utilizándose únicamente para el almacenamiento del Sistema Operativo, en muchos casos ni eso, gracias a las soluciones Boot-on-SAN, permiten disponer de servidores sin discos locales, y que todo el almacenamiento, incluido boot, ficheros de paginación, etc, estén en la SAN, empleando almacenamiento SAN y NAS para el resto. La arquitectura de almacenamiento DAS, presenta muchos inconvenientes, como es la dispersión del almacenamiento que implica una dificultad en la gestión de los backups, una relativa baja tolerancia a fallos, sólo posible a través de soluciones RAID, y un alto TCO (Total Cost of Ownship), debido a las dificultades de mantenimiento. [18] 1.5.2 NAS (Network Attached Storage). Con la introducción de las redes locales (LAN), se empezaron a utilizar servidores de almacenamiento conectados a la LAN, a los cuales se podía acceder directamente a través de la propia red, mediante protocolos específicos como NFS (Network File System) en entornos UNIX y CIFS (Common Internet File System) en entornos de Microsoft (antes conocido como SMB, protocolo original de IBM que fue mejorado por Microsoft en CIFS), o incluso mediante FTP, HTTP, etc. Antiguamente, se utilizaban los protocolos de Novell Netware que en ocasiones funcionabas sobre redes SPX, pero Novell Netware quedó en desuso, y actualmente las soluciones NAS se basan en TCP/IP..

(27) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 16. En consecuencia, actualmente un dispositivo NAS será una máquina dedicada con una o varias direcciones IP (sea un dispositivo NAS por hardware tipo almacén o un servidor Window/UNIX), además estará dotado de una conexión de alta velocidad a la red LAN. Por ello, una arquitectura de almacenamiento NAS puede estar formada por múltiples dispositivos NAS distribuidos geográficamente. En cualquier caso, se debe tener en cuenta que un servidor NAS utilizará almacenamiento DAS o SAN, almacenamiento interno o almacenamiento externo, además existen alternativas que integran soluciones NAS dentro de la propia infraestructura SAN.. Figura 1-4: Evolución de Compartición de Archivos Así, los equipos clientes en una arquitectura de almacenamiento NAS, delegan la gestión del sistema de ficheros al propio dispositivo NAS. Se limitan a montar las unidades de red exportadas o compartidas por los dispositivos NAS, de modo tal que usuarios y aplicaciones utilizan estos sistemas de ficheros como si fueran sistemas de ficheros locales, aunque para el sistema operativo se trata claramente de sistemas de ficheros remotos. El problema de esta arquitectura de almacenamiento, es que la red LAN puede actuar de cuello de botella. No obstante, siguen utilizándose masivamente las arquitecturas NAS, típicas “Carpetas Compartidas” o shared folder, que se utilizan en las empresas para el almacenamiento de ficheros, aunque no a todas las aplicaciones le resulte igual de útil, por ejemplo a los grandes servidores de base de datos, debido a esto preferirán almacenamiento SAN..

(28) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 17. Los principales beneficios de las Arquitecturas de Almacenamiento NAS, consisten en proporcionar un mejor TCO, resultando una arquitectura fácilmente escalable, capaz de ofrecer una alta disponibilidad. A modo de resumen se puede decir que es posiblemente la mejor forma de ofrecer compartición e intercambio de ficheros en un entorno heterogéneo. [18] 1.5.3 SAN (Storage Area Network). Es un tipo de almacenamiento en el cual el servidor o host es su dueño, por tanto es difícil su administración y compartir recursos en este dispositivo. Los esfuerzos en organizar estos datos dispersos llevaron a que emergiera el Storage Area Network, que en adelante se citará como SAN. Esta arquitectura implica disponer de una infraestructura de red de alta velocidad dedicada sólo para almacenamiento y backup, optimizada para mover grandes cantidades de datos, consistente en múltiples recursos de almacenamiento geográficamente distribuidos y otros elementos (cables, switches de fibra FC, routers, adaptadores HBA (Host Bus Adapter) etc), completamente accesibles desde la red corporativa.. Figura 1-5: FC SAN Las redes de almacenamiento SAN geográficamente distribuidas, han facilitado enormemente la creación de los centros de procesamiento de datos (CDP), centros de respaldo (BDC) y de clusters geográficos o GeoClusters. La utilización de una arquitectura de almacenamiento SAN implica la existencia y mantenimiento de al menos dos redes: la red LAN y la red SAN. En la práctica, las redes de.

(29) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 18. almacenamiento SAN suelen basarse en la tecnología FC, aunque también pueden basarse en Gigabit Ethernet usando iSCSI. Cuando se habla de redes conmutadas en FC, suele utilizarse el término Switch Fabric. En ambos casos, suele emplearse sobre redes conmutadas, utilizando múltiples switches y múltiples puertos, tanto en los clientes como en los servidores de almacenamiento, para ofrecer alta disponibilidad basada en la existencia de múltiples caminos, apoyándose para ello en soluciones y protocolos como MPIO (Multipath Input Output) y SecurePath (solución propietaria de HP). Además de la alta disponibilidad relativa a la redundancia de caminos, también se utilizan soluciones de alta disponibilidad del almacenamiento vistas anteriormente (RAID1, RAID5, RAID10, etc.). Esa arquitectura, lleva experimentando un gran auge en los últimos años, tanto por los beneficios propios de la utilización de redes de almacenamiento SAN, como por la propia evolución de la tecnología, y la incorporación de soluciones de almacenamiento SAN basadas en iSCSI, que incluyen soluciones SAN iSCSI por software como Windows Storage Server 2008 y Microsoft iSCSI Target. [18] 1.5.4 Beneficios y ventajas de las redes de almacenamiento SAN. Las primeras ventajas que saltan a la vista son: mayor velocidad de acceso a datos, menor tiempo de recuperación ante desastres, los tiempos de backup y restore se minimizan, y se añaden los clonados y snapshots, escalabilidad donde siempre es posible añadir más bandejas de discos, o incluso, más cabinas de discos y switches, y sobre todo, una gestión centralizada, compartida y concurrente del almacenamiento (indiferente de la plataforma y sistema operativo de los servidores). Si se necesita un disco de 20GB para un Servidor o Host, no sería factible comprar 2 discos de 320GB y montar un RAID1; se puede crear una LUN (logical unit number) de 20GB, es por eso que hoy en día no existen discos de 20GB a la venta, de tal modo, que la centralización del almacenamiento nos va a permitir optimizar nuestros recursos, aunque no necesariamente minimiza los costes de la infraestructura SAN que son bastante altos, pero así, al menos se consiguen amortiguar. Además, existen otros efectos colaterales, por.

(30) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 19. ejemplo: la introducción de una infraestructura de almacenamiento SAN en una empresa, se liberará bastante tráfico de la red LAN.. Figura 1-6: Componentes de una NAS Estas redes de almacenamiento también tienen sus inconvenientes, principalmente su coste, el precio por gigabyte resulta muy caro. También la existencia de ciertas limitaciones para integrar soluciones y/o dispositivos de diferentes fabricantes. Una de la principales alternativas para la reducción de costes de las mismas, es la utilización de soluciones de almacenamiento SAN basadas en iSCSI, que funcionan con tarjetas ethernet (no hacen falta HBA) y sobre los switches ethernet. Lo cierto es que con las actuales redes ethernet de 10Gbps, el cuello de botella se transfiere de la red al acceso a disco. [18] 1.5.5 Breve comparativa SAN, DAS y NAS. La diferencia entre NAS y SAN, principalmente radica en que un servidor accede a un disco NAS a través de la red LAN, MAN o WAN, (ejemplo de esto es la carpeta o recurso compartido), siendo el sistema operativo consciente de que se está accediendo a un recurso, al disco o al sistema de ficheros remoto. Sin embargo, un servidor accede a un disco SAN como si fuera un disco local, es decir, un disco DAS, de forma transparente para el sistema operativo, siendo las tarjetas HBA y sus drivers quienes se preocupan de que dicho acceso a la SAN sea así de transparente..

(31) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 20. También se dice, que NAS se encuentra entre el servidor de aplicaciones y el sistema de ficheros, mientras que SAN se encuentra entre el sistema de ficheros y el almacenamiento físico. Una SAN se puede considerar una extensión de DAS. [18]. Figura 1-7: DAS vs NAS vs SAN. Donde en DAS hay un enlace punto a punto entre el servidor y su almacenamiento, una SAN permite a varios servidores acceder a varios dispositivos de almacenamiento en una red compartida. Tanto en SAN como en DAS, las aplicaciones y programas de usuarios hacen sus peticiones de datos al sistema de ficheros directamente. La diferencia reside en la manera en la que dicho sistema de ficheros obtiene los datos requeridos del almacenamiento. En DAS, el almacenamiento es local al sistema de ficheros, mientras que en SAN, el almacenamiento es remoto. SAN utiliza diferentes protocolos de acceso como FC y Gigabit Ethernet. En el lado opuesto se encuentra la tecnología NAS, donde las aplicaciones hacen las peticiones de datos a los sistemas de ficheros de manera remota mediante protocolos Server Message Block (CIFS) y Network File System (NFS)..

(32) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 21. Figura 1-8: Esquema. 1.1.6 Híbrido SAN-NAS. Aunque la necesidad de almacenamiento es evidente, no siempre está claro cuál es la solución adecuada en una determinada organización. Elegir la solución correcta puede ser una decisión con notables implicaciones, aunque no hay una respuesta correcta única, es necesario centrarse en las necesidades y objetivos finales específicos de cada usuario u organización.. Figura 1-9: Posibles configuraciones..

(33) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 22. Por ejemplo, en el caso concreto de las empresas, el tamaño de la compañía es un parámetro a tener en cuenta. Para grandes volúmenes de información, una solución SAN sería más acertada. En cambio, pequeñas compañías utilizan una solución NAS. Sin embargo, ambas tecnologías no son excluyentes y pueden convivir en una misma solución. Como se muestra en el gráfico, hay una serie de resultados posibles que implican la utilización de tecnologías DAS, NAS y SAN en una misma solución. 1.6. Tecnologías.. Anteriormente se ha hablado sobre algunas tecnologías como FC e iSCSI. Estos términos pueden ser estudiados más a profundidad usando la gran variedad de documentos que existen sobre ellos. En este epígrafe sin embargo se desea profundizar solo un poco más en la tecnología que es considerada actualmente la más rápida del mercado. 1.6.1 Infiniband. Al igual que FC, PCI Express y otros modos de interconexión modernos, Infiniband usa un bus serie bidireccional de tal manera que evita los problemas típicos asociados a buses paralelos en largas distancias.. Figura 1-10: Infiniband Es una marca comercial. Su tecnología es el resultado de la unión de dos diseños en competencia (el Future I/O, desarrollado por COMPAQ, IBM y Hewlett-Packard, y el Next.

(34) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 23. Generation I/O, desarrollado por Intel, Microsoft y Sun Microsystems). Infiniband era llamado anteriormente System I/O (Sistema de entrada/salida). Ambas compartían una buena parte de sus metas, y pronto se vio que no había mercado para las dos. Se decidió hacerlas converger en una única propuesta, de esta forma, en octubre del año 1999 se fundó Infiniband Trade Association (IBTA). Las dos principales metas que en un principio se planteaba Infiniband, eran salvar las limitaciones que presentaban los buses PCI (cuellos de botella, fiabilidad, escalabilidad, etc.), y estandarizar las tecnologías en el terreno de los clusters (Servernet, Myricom, Giganet, etc.). Sin embargo, pretendía ir mucho más allá que una simple sustitución del típico bus PCI. Infiniband incorpora características que hasta ahora sólo podían encontrarse en supercomputadores grandes y costosos. Estas características son importantes para el montaje de clusters de altas prestaciones y permiten aprovechar las posibilidades de la tecnología actual.. Figura 1-11: Ejemplo de adaptadores de puerto Infiniband hacia bus PCI Express 2.0 Infiniband define una red de área para conectar ordenadores, sistemas y dispositivos de E/S, tanto para transacciones como para comunicación entre ordenadores, proporcionando la infraestructura adecuada para comunicación, gestión y una interconexión conmutada que permite a muchos dispositivos intercambiar datos de forma simultánea, con gran ancho de banda y baja latencia. Al ser un sistema conmutado, se pueden conseguir características como protección, fiabilidad, escalabilidad y seguridad, hasta ahora impensables en sistemas de E/S, e incluso en la mayoría de las redes habituales para conexión de computadores. [26].

(35) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 24. Puede variar desde un pequeño servidor formado por un procesador y unos cuantos dispositivos de E/S conectados, hasta un supercomputador masivamente paralelo con miles de procesadores y dispositivos de E/S que están conectados vía Internet a otras plataformas de procesamiento y/o sistemas de E/S. Es un. bus de comunicaciones de alta velocidad, que usa una transmisión. serie. bidireccional que logra una velocidad bruta de unos 2,5 Gigabits por segundo (Gbps) en cada dirección por enlace, también soporta doble e incluso cuádruples tasas de transferencia de datos, llegando a ofrecer 5 y 10 Gbps respectivamente. Brinda anchos de banda ofrecidos por los modos simple, doble y cuádruple, estos son de 2, 4 y 8 Gbps respectivamente. Los enlaces pueden añadirse en grupos de 4 o 12, llamados 4X o 12X. Un enlace 12X a cuádruple ritmo tiene un caudal bruto entre 120 y 96 Gbps de caudal eficaz.. Tabla 1-1: Caudal de Infiniband, bruto / eficaz Los datos se transmiten en paquetes de hasta 4 kB que se agrupan para formar mensajes. Hoy en día se usa en su mayor parte para clusters de alto rendimiento, aunque, ha habido esfuerzos para adaptar el estándar a conexiones entre máquinas de bajo coste para aplicaciones comerciales y técnicas más usuales. Del TOP500 de Supercomputadores la gran mayoría usa tecnología Infiniband para el almacenamiento. [48] Este bus necesita un equipo de hardware especializado, donde cada punto final requiere de una tarjeta de E/S nombrada como adaptador de canal de host o HCA. Se conectan a conmutadores Infiniband con cables específicos que se han diseñado para transportar sus datos con gran precisión..

(36) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 25. Tabla 1-2: Escalabilidad Infiniband vs Ethernet Los sistemas de Supercomputación no escalan linealmente en función del número de servidores, por lo que en ciertas situaciones es más importante mejorar la red que aumentar el número de nodos en vistas a aumentar el rendimiento. Por lo antes expuesto, el uso de redes Infiniband es de vital importancia para la escalabilidad de cluster HPC.. Tabla 1-3: Infiniband vs Gigabit Ethernet. En la actualidad Infiniband se ha impuesto como la red de baja latencia por excelencia. Utilizando equipamiento de 4ª generación Infiniband podemos conseguir una red más eficiente para cluster HPC, destacando por una latencia de 1,2us y un ancho de banda de 56Gbps con soporte para RDMA. En la tabla 1-3 y 1-4 se puede ver una comparación entre redes Infiniband y 10GE. [26].

(37) CAPÍTULO 1. ALMACENAMIENTO A NIVEL FÍSICO. 26. Tabla 1-4: Infiniband vs 10GigE Con su gran ancho de banda, baja latencia y reducción de gastos generales, Infiniband es la elección ideal para acelerar el rendimiento de aplicaciones de forma simultánea, y al mismo tiempo consolidar la infraestructura de E/S de la red. La combinación de Infiniband y Ethernet en una única solución proporciona la columna vertebral, estante ideal para centros de datos de próxima generación. 1.7. Consideraciones finales del Capítulo.. Como se ha visto en este capítulo el desarrollo de la informática y de la computación es un proceso que produce datos continuamente. Esta producción de datos se ha incrementado y lo continuará haciendo ya que casi todas las áreas en nuestra vida diaria son productoras de información digital. De igual forma todos los datos que se producen deben ser almacenados. Algunos de hecho se almacenan más de una vez porque dada su importancia no es tolerable su pérdida. Con el objetivo de mejorar la velocidad de acceso y de garantizar la integridad de los datos almacenados se han creado soluciones por hardware como los RAID, los DAS, los NAS y los SAN. Todas estas soluciones garantizan que la información no se pierda pero usualmente tienen un costo alto y al ser equipos como tal su período de actualización es más bien corto. Este no es un problema nuevo en el mundo de la informática y como en otros casos la solución es crear aplicaciones de software que paleen las deficiencias o la imposibilidad de adquirir soluciones de hardware..

(38) CAPÍTULO 2. SERVICIOS DE ALMACENAMIENTO. CAPÍTULO 2.. 27. SERVICIOS DE ALMACENAMIENTO. Usualmente en el mundo de la computación y la informática la solución de un problema tiene siempre dos soluciones clásicas. La primera es conocida como solución dura y es en su mayoría hardware y la segunda es una solución blanda y casi siempre es un programa o un servicio. En el caso del almacenamiento esto también es aplicable. En el capítulo anterior se describieron las soluciones duras, o sea las que están basadas en hardware. En este capítulo se pretende dar un bosquejo sobre los servicios informáticos que ayudan en el área del almacenamiento. Las soluciones por software se aplican generalmente cuando no se dispone de los recursos necesarios para implementar una solución por hardware o cuando por motivos muy específicos hace falta un protocolo dado. De hecho es muy común que las soluciones por hardware traigan incluidos algunos de los protocolos que se tratan en este capítulo. Lo más común es encontrar en el mundo real soluciones híbridas. 2.1. NFS.. En un entorno informático se hace imprescindible disponer de un servicio que permita el acceso seguro a archivos remotos de forma transparente. Tanto el administrador como los usuarios, en determinadas circunstancias, necesitan disponer de esta facilidad de intercambio de información que garantice la seguridad y confidencialidad de la misma. [16] Esta forma de trabajar es válida para entornos Unix/Linux. De momento NFS no permite la interoperabilidad con determinados sistemas de archivos Windows. Para poder trabajar con.

(39) CAPÍTULO 2. SERVICIOS DE ALMACENAMIENTO. 28. ciertos sistemas de archivos de red en plataformas mixtas Windows/Linux se ha de utilizar el antiguo protocolo SMB, hoy llamado CIFS; cuando se involucran sistemas Windows, debe utilizar Samba en su lugar. En la actualidad las versiones de la distribución Ubuntu y otros “sabores” de Linux soportan la conexión con equipos Windows directamente utilizando el protocolo SMB. Dicho esto se puede pasar a detallar mejor el protocolo NFS. Las siglas NFS significan “Sistema de Archivos de Red” (del inglés Network File System), es un protocolo de nivel de aplicación, según el Modelo OSI. Es utilizado para sistemas de archivos distribuido en un entorno de red de computadoras de área local. Posibilita que distintos sistemas conectados a una misma red accedan a archivos remotos como si se tratara de locales y fue desarrollado por SUN Microsystems en 1984, está incluido por defecto en los Sistemas Operativos UNIX aplicándose luego a las distribuciones GNU/Linux. En este sentido NFS no es realmente un sistema de archivos físico, sino que constituye una capa de abstracción que, aplicada sobre cualquier sistema de archivos físico, permite su utilización de forma remota por otras computadoras/usuarios. NFS proporciona este servicio siguiendo la estructura cliente-servidor. El servidor NFS comparte una serie de directorios seleccionados con unas condiciones de seguridad concretas. El cliente NFS, si está autorizado para ello, puede 'montar' dichos directorios en su propio sistema de archivos pudiendo acceder a los archivos como si fueran locales. El montaje lo puede realizar en secuencia de arranque de la computadora o cuando lo necesite. El servicio NFS utiliza las llamadas a procedimientos remotos basadas en el protocolo RPC (Remote Procedure Call) que permite desde una computadora (cliente) ejecutar código ubicado en otra computadora remota (servidor) mediante el establecimiento de sockets (IP + puerto) entre ambas. Aunque al servicio se le suele conocer con el nombre NFS, realmente NFS es un protocolo de nivel de Aplicación y por debajo, el protocolo subyacente que utiliza NFS son las Llamadas a Procedimientos Remotos (RPC) de nivel de Sesión, también utiliza TCP/UDP en el nivel Transporte e IP en el nivel de Red..

(40) CAPÍTULO 2. SERVICIOS DE ALMACENAMIENTO. 29. El protocolo de NFS está diseñado para ser independiente de la máquina, del sistema operativo y del protocolo de transporte. Esto es posible porque se implementa sobre RPC. NFS es un protocolo sin memoria (state-less) en algunas de sus versiones. Es decir, el servidor no recuerda las solicitudes anteriores. Por tanto, cada llamada a un procedimiento contiene toda la información necesaria para su finalización. Si el servidor NFS falla, el sistema cliente repetirá las solicitudes de NFS hasta que obtenga una respuesta. Además, el servidor no realiza tareas de recuperación frente a fallos. [16] Bajo NFS no existe el concepto de cliente o servidor puro. Un servidor puede exportar un sistema de archivos y puede montar un sistema de archivos distinto a la vez:. Figura 2-1: Clientes y Servidores NFS 2.1.1 Características principales. El sistema NFS está dividido al menos en dos partes principales: un servidor y uno o más clientes. Los clientes acceden de forma remota a los datos que se encuentran almacenados en el servidor. Las estaciones de trabajo locales utilizan menos espacio de disco debido a que los datos se encuentran centralizados en un único lugar pero pueden ser accedidos y modificados por varios usuarios, de tal forma que no es necesario replicar la información. Los usuarios no necesitan disponer de un directorio “home” en cada una de las máquinas de la organización. Los directorios “home” pueden crearse en el servidor de NFS para.

(41) CAPÍTULO 2. SERVICIOS DE ALMACENAMIENTO. 30. posteriormente poder acceder a ellos desde cualquier máquina a través de la infraestructura de red. También se pueden compartir a través de la red dispositivos de almacenamiento como, CDROM y unidades ZIP. Esto puede reducir la inversión en dichos dispositivos y mejorar el aprovechamiento del hardware existente en la organización. Todas las operaciones sobre archivos son síncronas. Esto significa que la operación sólo retorna cuando el servidor ha completado todo el trabajo asociado para esa operación. En caso de una solicitud de escritura, el servidor escribirá físicamente los datos en el disco, y si es necesario, actualizará la estructura de directorios, antes de devolver una respuesta al cliente. Esto garantiza la integridad de los archivos. [15] En caso de que el usuario lo necesite se puede cambiar a modo asíncrono. 2.1.2 Versiones de NFS En el momento existen varias versiones de NFS. El protocolo ha ido evolucionado a través del tiempo. Como se puede ver, las últimas mejoras están orientadas al área de la seguridad y la velocidad.  La versión 2 de NFS (NFSv2), es la más antigua y está ampliamente soportada por muchos sistemas operativos.  La versión 3 de NFS (NFSv3) tiene más características, incluyendo manejo de archivos de tamaño variable y mejores facilidades de informes de errores, pero no es completamente compatible con los clientes NFSv2. Mejora del rendimiento debido a la reescritura del código de la red, y al uso de paquetes de datos mayores. Mejora en la seguridad gracias al uso de listas de control de acceso o ACL (access control list) que permiten definir acceso a los recursos por UID y fichero a fichero. Implementación de un sistema de autentificación basado en contraseña.  NFS versión 4 (NFSv4) incluye seguridad Kerberos (protocolo de autenticación de redes de ordenador que permite a dos computadores en una red insegura demostrar su identidad mutuamente de manera segura), trabaja con cortafuegos, permite ACLs.

(42) CAPÍTULO 2. SERVICIOS DE ALMACENAMIENTO. 31. y utiliza operaciones con descripción del estado. Es la versión recomendada en la actualidad. En el anexo II se puede encontrar el procedimiento de instalación y configuración de NFS tanto para el servidor como para el cliente. De forma general se puede decir que es un proceso sencillo y rápido. De cualquier forma luego de realizar la instalación se recomienda realizar pruebas para validar las mejores opciones y ajustar los parámetros por defectos del proceso de instalación. El sistema NFS aunque muy útil y flexible sobre todo en la parte del cliente aún está limitado a un servidor. O sea el servidor solo puede compartir lo que él contiene y esto está acotado por la capacidad de sus discos. Por ejemplo si solo tiene capacidad para 8 discos y estos pueden ser como máximo de 2 TB entonces el mayor recurso compartido por NFS será de 16 TB suponiendo que no se aplique antes algún tipo de RAID. 2.2. GlusterFS.. Dada la deficiencia de NFS de extrapolarse más allá de un servidor aparece una solución muy ingeniosa que se dio a conocer como GlusterFS. GlusterFS un sistema de archivos de alta disponibilidad y escalabilidad que puede brindar almacenamiento a gran escala (petabytes) a bajo costo (opensource) y manejo de hasta miles de clientes, está basado en FUSE (Fileystem user space). FUSE permite levantar el sistema de archivo de Gluster en el user space (espacio de memoria donde trabajan las aplicaciones del usuario). La comunicación entre el server y los clientes se puede realizar de dos formas: usando NFS como una vía de garantizar compatibilidad o usando el protocolo propio de Gluster como vía de lograr un mejor rendimiento y uso pleno de las posibilidades existentes. GlusterFS agrupa dispositivos de almacenamiento a través de la red y maneja los datos como si fuesen un solo bloque. Esta idea a groso modo se muestra en la figura 2.2.

(43) CAPÍTULO 2. SERVICIOS DE ALMACENAMIENTO. 32. Figura 2-2: Dispositivos de almacenamiento. Para un mejor entendimiento del protocolo se hace necesario conocer alguno de los conceptos manejados en la documentación y configuración del mismo. Bloque (Brick): Es la capa física de almacenamiento para los volúmenes.. Volumen: Un volumen está compuesto por múltiples bloques.. Figura 2-4: Volumen.. Servidor: Equipo (virtual o real) que exporta el volumen. Es el que alberga el sistema de archivos donde se guardará la data, y provee acceso a los volúmenes.. Figura 2-5: Servidor..

(44) CAPÍTULO 2. SERVICIOS DE ALMACENAMIENTO. 33. Cliente: Es el equipo que monta el volumen, este equipo también puede ser un servidor.. Figura 2-6: Cliente.. 2.2.1 Distribución y Replicación de la Data. La ventaja mayor de GlusterFS es la capacidad para salir de un server y poder escalar. Dicho de otra forma: GlusterFS se puede crecer adicionando más servidores con espacio a compartir. Esto se hace a través de un mismo volumen en varios servidores. Esta separación de los datos se puede configurar casi de forma idéntica a como se realizaban los RAID expuestos en el capítulo anterior. Cuando GlusterFS opera de esta forma se le llama modo distribuido y es para lo que realmente fue diseñado. La configuración de Gluster para un modo distribuido toma una lista de sub-volúmenes y distribuye los archivos entre ellos. Para calcular en cuál de los servidores será almacenado el archivo se realiza un hash al nombre del archivo. Es estadísticamente improbable que existan dos hash iguales para nombres completos de archivos diferentes. A continuación una descripción de las variantes usadas por GlusterFS. Volumen distribuido: Consiste en copiar la información en bloques separados en servidores separados. Es muy semejante al RAID 0 aunque cualquier archivo siempre estará completamente copiado en solo un servidor..

(45) CAPÍTULO 2. SERVICIOS DE ALMACENAMIENTO. 34. Figura 2-7: Volumen Distribuido. Este modo tiene ciertas desventajas como que si uno de los servidores esta fuera de servicio no se pueden recuperar los archivos que están almacenados en él. También pueden presentarse problemas de lectura/escritura si un archivo es de un tamaño mayor al subvolumen en el que debe ser almacenado. Volumen en Réplica: Este modo provee redundancia en la información almacenada en los servidores, lo que se encuentra en un servidor esta exactamente igual que en los otros. Esto ofrece no solo redundancia en los datos sino en la disponibilidad del servicio. En cada operación sobre los archivos se hace la copia en la réplica por lo que podemos decir que hay sincronización en esta. Es el modo más utilizado.. Figura 2-8: Volumen en Réplica. Funciona de manera análoga a RAID 1.. Volumen Distribuido en Réplica: Esta modalidad es una mezcla de las dos anteriores y distribuye los archivos a través de volúmenes en réplica. Este tipo de configuración ofrece mejoras considerables en.

(46) CAPÍTULO 2. SERVICIOS DE ALMACENAMIENTO. 35. operaciones de lectura en la mayoría de los ambientes. Es el recomendado cuando la alta disponibilidad y la alta confiabilidad son críticas.. Figura 2-9: Distribuido en Réplica. Volumen distribuido con réplica distribuida: Es una variante del anterior donde básicamente se prioriza el uso de un servidor y se mantiene la copia en otro. Esto sería solo recomendable cuando las características físicas de los servidores no sean las mismas.. Figura 2-10: Réplica Distribuido. Se mantiene garantizada la duplicidad de la información. Pero hay una limitación en el tamaño de los volúmenes dada por el servidor con menor capacidad. Geo-Replicación: Esta modalidad provee de un servicio de replicación asíncrona a través de una red LAN o WAN o Internet. Trabaja basándose en un modelo maestro-esclavo, siendo el maestro, un volumen GlusterFS, y el esclavo puede ser:  Un directorio Local.  Otro volumen GlusterFS, que puede ser local o encontrarse en un servidor diferente..

(47) CAPÍTULO 2. SERVICIOS DE ALMACENAMIENTO. 36. Cuando los datos en el maestro dejan de estar disponibles, pueden restituirse a partir de cualquiera de los esclavos. A diferencia del Volumen en Réplica visto anteriormente, mantiene la copia de los datos de forma asíncrona, es decir chequea periódicamente cambios en la información y sincroniza al detectar algún cambio.. Figura 2-11: Geo-Replicación Volumen Stripped: Esta modalidad es una variante de los Volúmenes distribuidos vistos anteriormente. Es generalmente utilizada para almacenar datos de computación de alto rendimiento, funciona repartiendo cada archivo en diferentes bloques, con lo que podemos inferir que es más óptimo para archivos de gran tamaño.. Figura 2-12: Volumen Stripped.. Luego de mostradas todas las variantes en las que puede trabajar GlusterFS, alguna de sus ventajas pueden resultar muy obvias..

Referencias

Documento similar