viernes, 30 de marzo de 2012

Sub-LUN Tiering

Ahora si el mercado y tecnología de Storage se ha puesto interesante, el caso es que los desarrolladores de almacenamiento se estan poniendo las pilas y nos han sorprendido con una propuesta que promete bastante, se trata del tiering de almacenamiento, pero a nivel sub-lun.

Es decir, anteriormente moviamos toda una LUN de una capa a otra capa, sin embargo, estadisticamente la informacion no es requerida en la misma proporcion, dicho de otra forma, hay secciones de la informacion, por ejemplo indices, que son frecuentemente accedidos, mientras que hay otras partes de la informacion, como datos historicos que son poco o nada accedidos.

Tipicamente usamos el storage de alto rendimiento para bases de datos, y las bases de datos cuando menos tienen tablas, donde se guardan los datos; indices, que son apuntadores a los datos dentro de tablas; bases de datos temporales; archivos de registro log, etc.

El asunto de meter TODA la base de datos en disco premium, por ejemplo, estado sólido es costoso, asi que SUB-LUN tiering viene a hacer el trabajo por nosotros.

Primero hace un monitoreo, para saber cuales secciones de la informacion tienen mas acceso, una vez que hay estadisticas, mueve los datos con mas acceso a capas de disco superiores, por ejemplo a estado solido. De esta forma se incrementa dramaticamente el desempeño percibido de la base de datos, porque normalmente los indices, logs, tempDB son los datos que causan cuellos de botella en las transacciones.

Un sistema de Sub-LUN Tiering normalmente puede hacer el monitoreo de manera autonoma (no tan recomendable) o a solicitud del administrador, por ejemplo, imaginemos que en todo el mes la DB se comporta de una forma, pero al cierre del mes queremos acelerar el proceso. Monitoreando solo el proceso de cierre nos permite acelerarlo para el proximo mes, aunque la DB se comporte normalmente el resto del tiempo.

El movimiento de datos se lleva a cabo en pequeñas secciones, algunos como 3Par les llaman chunklets, la capacidad de estos bloques varia de fabricante a fabricante, pero se encuentran tamaños de 42MB para el HP P9500 y de 256MB para la familia 3Par. Se clasifican en Hot chunklet, warm chunklet y cold chunklet, dependiendo de la frecuencia de acceso y ello determina si es conveniente moverlos a una capa de mayor o menor rendimiento.

La tecnologia es llamada por nombre depende de cada quien pero EMC le llama FAST, HP-3Par le llama Adaptive Optimization en la familia 3Par y Smart Tiers en la familia P9000.

Sobre cual implementacion es mejor... aun no me atrevo a hacer pronostico, pero la de 3Par es muy interesante.

martes, 27 de marzo de 2012

Storage Tiering

OK, cada vez que se le pone mas inteligencia a los sistemas de computo es para facilitarnos la vida, claro, si sabemos como utilizar las nuevas mejoras, de otra forma sera un pesadilla.

Storage Tiering no es la excepción.

Empecemos por precisar a que nos referimos con "tiering".
En los dias antiguos nos bastaba con tener espacio de almacenamiento y lo mediamos por GB (o MB), esto debido a que el procesador era nuestra principal preocupación, cuando el procesador dejo de ser el problema nos enfocamos en los IOPS

Input Output Per Second (IOPS) es la unidad de medida para saber cuantas operaciones de lectura/escritura es capaz de realizar nuestro subsistema de almacenamiento. Sobra decir que entre mas IOPS mejor.
Ahora el tener mas IOPS siempre ha sido directamente proporcional al monto de la inversion, y sabemos que a mayor numero de discos en un arreglo, mayor rendimiento, suponiendo que los discos son iguales, pero y si son diferentes?

Existen discos de 5.4K, 7.2K 10K 15K etc. asi que la medida correcta es mas compleja, porque mientras los discos de 15K son mas rapidos, tambien son mas caros y por el mismo presupuesto podríamos adquirir mas discos de 10K y lograr en ciertos escenarios un mayor rendimiento que con discos de 15K. Aunque nuestro foco actual es el Tiering.

Tiering es la calificacion cualitativa de un subsistema de disco
por ejemplo, un Tier 1 se refiere a disco rapido, confiable apto para cargas de trabajo importantes que demandan tanto alto rendimiento como confiabilidad, tipicamente, bases de datos y sistemas centrales, aqui un ejemplo de las capas y su asociacion tipica con tecnologias de disco que los conorman:


  • Tier 0 - Estado Sólido
  • Tier 1 - Discos en arreglo SAN tipo SAS o FC de 15K
  • Tier 2 - Discos en arreglo SAN tipo SAS o FC de 10K
  • Tier 3 - Discos en arreglo SAN tipo SATA

Como es facil notar, conforme nos acercamos al Tier 0 el precio que hay que pagar se incrementa, por eso hay que cuidar de poner los datos adecuados y no consumir espacio sin motivo.

Los arreglos actuales (al menos los mas inteligentes) proveen un metodo de movimiento de los datos en una LUN entre los distintos Tiers del arreglo, por ejemplo, un HP EVA es capaz de mover una LUN de disco SATA a disco SAS de 15K sin que el servidor host se vea afectado mas que por el desempeño incrementado que le da esta nueva configuracion, a esta capacidad de movimiento de los datos le llamamos "Storage Tiering".
La capacidad de mover los datos de discos lentos a rapidos o viceversa tiene varios beneficios, pero el principal es el de poder probar donde obtenemos el rendimientos que necesitamos al menor precio, naturalmente siempre querremos el maximo rendimiento, pero entonces debemos estar dispuestos a desembolsar el maximo de dinero,

Con las unidades de estado solido obtenemos un rendimiento fabuloso, pero hay que utilizarlo cuidadosamente, para esto nos ayuda storage tiering, para poder colocar datos y moverlos hasta obtener el rendimiento adecuado, tipicamente pondriamos en unidades de estado sólido los datos con mayor tasa de utilizacion, en Tier 1 y 2 los datos frecuentes y el Tier 3 los historicos o poco accedidos.

viernes, 9 de marzo de 2012

Almacenamiento de estado sólido

En los ultimos años, bueno, de hecho desde los principios de la computacion, el poder de los procesadores ha ido en continuo crecimiento, la Ley de Moore aun sigue siendo válida, donde la densidad de transistores de un procesador se duplicaría cada 18 meses, y en consecuencia el poder de cómputo.

Si bien el poder de cómputo ha aumentado exponencialmente no ha sido esto así para la tecnología de discos duros, ahora es posible consolidar cientos o miles de servidores (o PCs) en pocas maquinas con pocos procesadores, sin embargo aun requerimos vastas cantidades de discos para lograr y mantener el rendimiento que estas aplicaciones requieren. Particularmente las Bases de Datos requieren almacenamiento rápido y se han aprovechado de la tecnología RAID para lograr el objetivo. A ultimas fechas ni con eso se logra el desempeño requerido, es aqui donde aparece el almacenamiento de estado sólido.

Un disco duro es uno o varios platos magneticos que giran y unas cabezas leen y escriben en sus superficies. el proceso es mecánico y puede tomar eteeeeernos milisegundos en completar una transacción I/O.

Una unidad de estado sólido (es incorrecto llamarle disco) es una memoria flash que al carecer de elementos mecánicos realiza la tarea en pocos nanosegundos, siendo extremadamente rápida (cuando se compara con discos duros). cuentan con algunas propiedades como son:


  • Acceso de lectura extremadamente alto
  • Acceso de escritura muy alto
  • Tiempo de vida limitado, es decir, con las escrituras se desgastan, por esta razon se pueden considerar consumibles
  • Tiempo medio entre fallas muy alto, es decir, son muy confiables
  • Poca capacidad de almacenamiento, pocos GB
  • Costo muy alto

La ultima propiedad es particularmente relevante, ya que aunque quisieramos no podemos tener el 100% de nuestro almacenamiento en unidades de estado sólido, por eso hay que utilizarlas inteligentemente, en la proxima entrega veremos algunas aproximaciones a utilizar inteligentemente el estado sólido: Storage Tiering,  Hot Files tunning y Sub-Lun Tiering.

martes, 6 de marzo de 2012

Thin or not to Thin (1.1)

Aparentemente mis amigos de Blogger han sufrido problemas tecnicos y la entrada anterior llamada "Thin or not to thin" se ha perdido, no pretendo reescribirla tal cual pero hare mi mejor esfuerzo, ya que no contaba con un respaldo (lo sé, es una vergüenza).

Pero el asunto es el de Thin Provisioning (ThP); podriamos definirlo con el siguiente enunciado: El administrador de Servidores es engañado por el administrador de almacenamiento, pero y si son la misma persona?

Normalmente cuando tenemos un almacenamiento en SAN, compartimos el almacenamiento total disponible entre los servidores (hosts) que necesitan el espacio util, como ejemplo, si tenemos un arreglo en SAN con una capacidad util de 10TB y tenemos 10 servidores a los cuales les queremos dar un total de 1TB a cada uno, entonces tendremos que al final de la asignacion el espacio libre en el almacenamiento es de cero.
Esta situacion nos impide darle espacio adicional a cualquier servidor nuevo o existente, sin embargo, los servidores a los cuales les hemos asignado el espacio no necesariamente estan ocupando el 100%, es mas, no es recomendable que lo hagan. Para salvar esta situacion nuestro$ amigos proveedores de soluciones de almacenamiento han desarrollado una solucion llamada Thin Provisioning.

ThP se trata de asignar un espacio del arreglo a un servidor y NO RESERVAR esa capacidad, de tal forma que mientras el servidor cree tener un espacio dedicado, por ejemplo 1TB, el arreglo solo utiliza lo que el servidor le ha mandado a escribir, de esta forma el arreglo puede disponer del espacio no utilizado para entregarselo a otros servidores o bien funciones propias de arreglo, como Snapshots y Clones.

Como ejemplo ilustremoslo de esta manera, supongamos que tenemos 10 servidores que requieren 1TB cada uno, una vez asignado el espacio los servidores lo consumen, supongamos que cada servidor consume 100GB, tendremos que cada server tiene 900GB libres que nadie mas puede utilizar. ThP reconoce esta situacion y permite que los 9TB libres (10 x 900GB) puedan ser ocupados por otros servidores, veamoslo en una imagen:




Como veremos es evidente el ahorro en espacio en disco y de esta forma se reduce la probabilidad de comprar disco cada que se requiere alojar espacio para un nuevo servidor, sin embargo hay que tener precauciones a fin de no cometer pecados mortales que causen una tragedia, entre ellos:


  • Penalizacion de rendimiento
    • Cada volumen con ThP causa utilizacion de los CPUs del arreglo, por lo que puede bajar su rendimiento, en el caso de arreglos con ThP por hardware como 3Par esta penalizacion es menor, se puede mitigar con planeacion y dimensionamiento adecuado.
  • Sobre-suscripcion
    • ThP nos permite asinar mas espacio del que realmente tenemos en el arreglo, por lo que hay que tener cuidado y monitoreado como se va consumiendo el disco, ya que si llegamos al 100% de utilizacion, las aplicaciones dejaran de funcionar y en el peor de los casos el arreglo dejara de funcionar, la forma de mitigar este riesgo es monitorear frecuentemente el porcentaje de utilizacion del espacio fisico.

Aunque los riesgos asociados a ThP existen, pueden ser facilmente mitigados y a cambio ThP nos ofrece l posibilidad de utilizar mejor el espacio adquirido y esto nos permite alojar mas servidores, realizar pruebas y respaldos etc. con lo que se justifica plenamente la inversion en licenciamiento o la inversion en un arreglo con estas capacidades.

Adicionalmente el ThP realizado por el arreglo disminuye el impacto en performance en aplicaciones como VMWare VSphere.

domingo, 4 de marzo de 2012

Virtual Desktops 2

Esta semana ha ocurrido algo un tanto inesperado Hace un tiempo, perdon no habia podido escribir en estos meses, una mega corporación que hasta hace meses había estado impulsando sus soluciones de computo móvil ahora ha decidido que permitirá que Apple tenga un competidor menos, me refiero al HP Touchpad, esta tablet tenía la misión de hacerle frente nada menos que al todopoderoso iPad (dispositivo desde el cual escribo esta entrada) pero analizemos las razones (en mi opinión) de esta decisión.
De hecho, la intención de HP va mas allá, se trata de vender la división PSG, que entre otras cosas se encarga de PCs, Laptops, Thin Clients, tablets, etc. Dijeron que siempre no, para ello hubo que correr al CEO en turno.

El iPad y los dispositivos móviles han puesto en jaque al tradicional mercado de la computadora personal, ya que son mas portátiles, fáciles de usar y sobre todo, permiten un acceso "casi" completo a todas las aplicaciones diarias del usuario, excepto un segmento: las aplicaciones empresariales.
Las empresas saben desde hace algún tiempo que el contar con la información adecuada en el momento adecuado es una ventaja, por ejemplo si un vendedor tiene información del producto, precios y disponibilidad antes que su competidor, entonces tendrá una mejor imagen ante su cliente. Y mayores posibilidades de ganar la venta, es por ello que las empresas invierten millones de dólares en sistemas que permitan ventajas competitivas.
Desde hace cierto tiempo los dispositivos móviles han probado ser una ventaja, handhelds, Laptops, smartphones, etc. Las handhelds solo soportan aplicaciones explícitamente desarrolladas para ellas, los teléfonos igual y las Laptops tienen el inconveniente de no ser tan portales como el mercado de la decada  2010's lo requieren, es aquí donde entran los escritorios virtuales.
Los escritorios virtuales son una sesión de usuario en un ambiente conocido (Windows) donde se pueden ejecutar aplicaciones y poder accederse desde algún dispositivo, ya sea thin client etc. En este nivel no hay diferencia entre un Remote Desktop y Virtual Desktop, sin embargo los servicios ofrecidos por el virtual desktop son superiores, ya que al estar dedicado un hardware, sistema operativo y aplicaciones a cada usuario (virtuales naturalmente) el aislamiento, seguridad y compatibilidad de aplicaciones y datos se facilitan.
Ventajas del Virtual Desktop:

Acceso desde casi cualquier dispositivo
No guarda información en el dispositivo de acceso ( si asi se requiere)
Ubicado en un lugar seguro
Siempre disponible
Ahorro en TCO (menores costos de operacion)

Una de las características de los avances tecnológicos es que proveen un incremento en la productividad, con ahorros a largo plazo, por ejemplo, es mas barato comprar una maquina de escribir que una PC, pero las ventajas de una PC son incuestionables. Así en el futuro se comparara la PC contra el combo Virtual Desktop, Cloud Computing, mobile devices. Ya que desde ahora y para el futuro contar no solo con la información adecuada sino al instante será un ventaja o bien, el estándar.

Ventajas de los nuevos dispositivos contra la PC.

Mas fáciles de llevar
Funcionan desconectados
Siempre encendidos
Mejor interface de usuario

Al final la principal ventaja es que en un pequeño dispositivo al que le duran hoooraas la bateria y pesa muy poco, se puede tener todo el poder de un servidor empresarial con acceso a las bases de datos empresariales sin tener que cargar todo ese peso en el hombro.

Hace un par de semanas implemente un ambiente de escritorios virtuales, una ventaja adicional a las que he mencionado es el de poder contar con "potencia extra" es decir, corro ciertas aplicaciones en mi maquina local y otras en la virtual, de este modo puedo trabajar aun mas rapido, que tal eh! asi las empresas pueden exprimir un poco mas a los... oops!





sábado, 13 de agosto de 2011

Virtual Desktops

¿Porque comprar uno si puedes comprar dos por el doble de precio?

La idea general con respecto a los escritorios virtuales es que son una solución para proporcionar a los usuarios de una organización del dispositivo de acceso a los sistemas empresariales, tales como email, ERP, archivos corporativos, CRM, sistemas de producción y un largo etcétera, que al final del día resultara mas barata que comprar PCs.
La realidad es que esto no es totalmente cierto, Para iniciar, esta la infraestructura virtual, servidores, almacenamiento, hypervisor, sistemas operativos de escritorio, broker, todo esto cuesta casi el equivalente a comprar PCs y ademas tenemos que sumar las comunicaciones, enlace a internet, y el propio dispositivo de acceso, como resultado, la infraestructura final puede costar hasta un 100% mas que su equivalente en PCs. Al conocer estos hechos, muchos Directores de TI, y sobre todo, Directores de Finanzas, cuestionan seriamente las iniciativas de escritorios virtuales y desechan el proyecto, sin embargo aun hay esperanzas para una infraestructura de escritorio virtual o VDI.
Entre las principales razones que en los diseños que he realizado de infraestructuras virtuales, contribuyen a este incremento de costo, esta la natural tendencia que los administradores de servidores tenemos con respecto a los sistemas de los que somos responsables, esto es:


  1. Redundancia, por pequeño que sea el servicio, para nosotros es critico mantenerlo arriba, y siendo el escritorio de los usuarios al fallar habria un caos
  2. Respaldo, todos los servidores deben ser respaldados, y VDI no es la excepcion
  3. Seguridad, cada servicio debe ser monitoreado, auditado, protegido y reforzado para mantener la confidencialidad e integridad de la informacion
En el mundo de las PCs, las grandes corporaciones mantienen estas mismas politicas, sin embargo en la pequeña y mediana empresa no se cuentan con los mecanismos para proteger a las maquinas del usuario, de ahi que al meterlas a VDI se "vea" un incremento en los costos, lo cual si bien es cierto, tambien obedece a que en PCs estas medidas de seguridad no estan presentes, si comparasemos VDI vs PCs con las medidas de seguridad equivalentes, la solucion VDI ya es justificable y viable incluso desde el punto de vista financiero.

En la proxima entrega revisaremos cuales son estos beneficios desde el punto de vista del usuario, del admin de sistemas y del financiero (el que firma los cheques).





lunes, 18 de julio de 2011

VSphere sin SAN Storage parte 3

¿Que es esto?
Vsphere Node
A primera vista parece un super-desorden, pero hagamos un poco de análisis. Se trata de un NODO de nuestra infraestructura VSphere con SAN sin tener una real SAN, esto es, un Host ESX o ESXi nos permite tener todo lo necesario, continene los siguientes elementos:

  • Host ESX/ESXi tradicional con
    • Procesadores
    • Memoria
    • Tarjetas de Red
    • etc.
  • Discos locales (de preferencia con un arreglo RAID por una tarjeta especial)
  • Datastore local
  • Virtual SAN Appliance (VSA, software antes de Lefthand, ahora de HP)
hasta aqui con los componentes.

Como sabemos un Datastore basado en discos locales no puede ser utilizado por un cluster VSphere, ya que no es un storage compartido, por lo tanto, no VMotion, no DRS, no HA, no FT, etc.
Sin embargo para eso viene VSA, a tomar el espacio de ese Datastore local y junto con el resto de los datastores locales presentes en los demás Hosts (efectivamente, esperamos tener más de un Host, si no, no tiene caso) y a formar un cluster de scale-out Storage.

Como construir un VSA VSphere
Veamos, VSA puede efectivamente sumar su espacio al espacio de otros nodos, y realizar un NRAID (Network RAID, o RAIN) que puede ser de NRAID 0, NRAID1 o incluso NRAID 5, siguiendo las mismas reglas que aplican con discos, esto nos permite:

  1. Crear LUNs de gran tamaño
  2. Soportar fallas en discos individuales
  3. Soportar fallas en Nodos enteros
  4. Crear Datastores que puedan ser accedidos y compartidos por todos los Nodos ESX/ESXi
  5. Sumar el poder de procesamiento de cada Storage y crear un arreglo de altas prestaciones
  6. No se restringe a dos controladoras, podría crecer a 16 nodos facilmente
  7. Utilizar todaslas funciones de VSphere, VMotion, HA, DRS, etc.
  8. Incluso, podemos crear con esta arquitectura redundancia entre sites con VMWare Site Recovery Manager (algo extremadamente costoso con arreglos tradicionales)
  9. Y un beneficio adicional es que el VSA soporta Thin Provisioning, lo que nos ahorrará algo de espacio en disco.
Ahora viene la imaginación.

¿Y si se cae un nodo? para eso esta HA, para reniciar las VMs, el VSA local fallará, pero el storage cluster tiene la capacidad de soportar la caída de uno o varios nodos (depende de como lo configuremos).

¿Y el performance? Obviamente no es un storage real, pero si los Hosts tienen suficiente poder (discos, procesadores y memoria, por cierto, son baratos) el cluster sumara el poder de todos haciendo un storage de muy buen tamaño.

Así luce finalmente:
Vsphere sin SAN Storage


¿Que opinion te merece?