Buenas, aprovechando una experiencia pasada con HPE 3PAR, voy a analizar un poco los conceptos básicos de como gestiona 3PAR los datos que almacenamos en ella.
HPE explica muy orgulloso el funcionamiento de esta cabina en cuanto a como gestiona los datos, no quiero entrar en opiniones personales, pero probablemente tienen razón en que esta bastante bien pensado.
Se suele decir que una imagen vale mas que mil palabras, vamos con la imagen y expliquemos después cada capa.
Vamos a empezar de arriba hacia abajo, pero en algún momento cambiaremos el sentido para entender la foto global mejor.
Empezamos pues con los Host o Host Set.
Obviamente cualquiera que ha trabajado con almacenamiento sabe que aquí es donde definimos los “consumidores” de nuestro almacenamiento. En el caso de Host, por ejemplo en un ESXi conectado por FC a nuestro array, es donde definiremos nuestro Host ESXi y sus WWN. Host Set, hace referencia al concepto mas comúnmente conocido como Cluster, nuestro cluster de Hosts ESXi.
Virtual Volumes VVs (que no los de VMware aunque la cabina también puede manejarlos :-)).
HPE llama así a lo que todos conocemos como LUN y lo describe como cada unidad de capacidad que es exportada a un Host, cuando se exporta aparece el concepto de VLUN, que no es mas que como HPE llama a la relación entre VV y Host o Host Set.
CPG, Common Provisioning Group.
Entender esta capa es una de las partes mas importantes para entender una 3PAR. La primera vez que leí sobre los CPG, automáticamente mi cabeza pensó en los típicos Disk Group de un HP EVA, los RAID Groups o Storage Pool de EMC, etc. Y nada mas lejos de la realidad.
Los CPG son políticas y funcionan como un template para los VVs, definiendo las características que tendrán nuestros VVs, por ejemplo que tipo de disco físico albergara nuestro VV (NL, SAS, Flash), el nivel de RAID, que nivel de redundancia tendrá nuestro VV ante caída de un cajón completo de discos, de un “Magazine”, que serian los distintos back plane de cada cajón (aunque esto HPE lo da como un termino anticuado), o a nivel de fallo de puerto de backend. Ademas el CPG también marcara el “Set Size”, que es básicamente el ratio dato-paridad del RAID:
Obviamente todas estas decisiones en el CPG, tienen una necesidad de HW en nuestro array, no podemos esperar aguantar la caída de un cajón completo si solo tenemos 1 🙂
Sinceramente después de entenderlo, yo que soy mas de VMware, me parece una “Storage Policy” mas que un Storage Pool tradicional, definir la calidad de servicio de los VVs que irán a nuestro CPG. Ni que decir tiene que definir un CPG no ocupa espacio en nuestro array, es una política al fin y al cabo.
Ahora es cuando damos un giro y pasamos de abajo hacia arriba, creo que se entenderá mejor así.
PDs, Physical Disks.
Rápido, fácil, nuestros discos, ya sean Flash, NL o SAS. Bien colocaditos en nuestros “Cage”.
CHUNKLET.
Seguimos subiendo y nos encontramos los Chunklet. El concepto Chunklet ya existe desde los Array tradicionales, solo que en este concepto de array tradicional, el Chunklet demandaba todo el espacio de un disco para si mismo, en 3PAR se introduce la arquitectura de chunklet de 1 GB. Cuando se añade un disco a nuestro sistema 3PAR este se divide en bloques de 1 GB (en sistemas 3PAR antiguos este tamaño era de 256 MB), y estos bloques de 1 GB son los Chunklets de 3PAR.
Con este nivel de granularidad, en “trozos” de 1 GB, un mismo disco puede contener Chunklets de distintos Raid y con distintos niveles de Raid.
LDs, Logical Disk.
Y ahora volvemos a los CPG para bajar un escalón y de esta manera ver que son los LDs, lo cual nos unirá con los Chunklet.
Los Logical disk son esencialmente una agrupación de Chunklets ordenados como conjuntos RAID. Cada Raid esta compuesto por múltiples Chunklets de distintos discos físicos. No creamos Logical Disks directamente sobre 3PAR, son creados automáticamente por el sistema cuando se crean VVs. El tipo de RAID, la asignación de espacio, los incrementos de crecimiento y otros parámetros se especifican al crear el CPG y se pueden modificar más adelante.
Como resumen a todo esto, al añadir un Physical Disk a un sistema 3PAR, este es dividido en Chunklets de 1 GB, estos Chunklet son organizados como conjuntos de Raid para formar los Logical Disk. Los Virtual Volumes consumen el espacio en base a las “políticas” de calidad de servicio definidas en su CPG, los CPG agrupan el espacio de los Logical Disks.
Con esto espero haber explicado un poco la arquitectura básica de 3PAR.
Gracias por compartir 🙂