NetApp Tech OnTap
     

Calidad de servicio end-to-end:

Cisco, VMware y NetApp se unen para mejorar los entornos multi-tenancy

Construir una infraestructura compartida siempre ha supuesto un cierto desafío. Si observamos un diseño corriente de centro de datos corporativo, podremos descubrir que las aplicaciones importantes cuentan con su propia infraestructura dedicada, o bien que los elementos compartidos se han diseñado en exceso para cumplir con los requisitos. Ambos enfoques desaprovechan los recursos y malgastan el presupuesto en TI.

El problema es que no se sabe cómo reaccionarán ciertos componentes de la infraestructura, como por ejemplo servidores, redes y almacenamiento, al añadir carga adicional. ¿Puede un recurso provocar un cuello de botella y disminuir inesperadamente el rendimiento de una aplicación importante? Si es así, ¿cómo podemos identificar rápidamente el origen de estos cuellos de botella?

El actual interés en el Cloud Computing ha aumentado todavía más la importancia de conocer todos los aspectos de los entornos multi-tenancy, o lo que es lo mismo, las infraestructuras donde se comparten todos los recursos. De hecho, hay muchas empresas que dudan sobre si construir o no una infraestructura cloud o si deberían contratar servicios cloud, ya que temen por la seguridad y la calidad del servicio (QoS).

Cisco se ha unido a VMware y NetApp para diseñar y probar una arquitectura cloud multi-tenancy segura que pueda ofrecer lo que nosotros consideramos los cuatro pilares básicos de la infraestructura multi-tenancy segura:

  • Separación segura. Ningún cliente debe poder acceder al equipo virtual (VM), la red o a los recursos de almacenamiento de otro cliente, bajo ninguna circunstancia. Cada cliente debe estar separado de forma segura.
  • Garantía de servicios. Debe aislarse y garantizarse el rendimiento del equipo, de la red y del almacenamiento durante el funcionamiento normal, si se producen fallos o si determinadas empresas están generando cargas excepcionales.
  • Disponibilidad. La infraestructura debe garantizar que los recursos del equipo, de la red y del almacenamiento estén siempre disponibles, en caso de posibles fallos.
  • Gestión. La capacidad de provisionar, gestionar y supervisar todos los recursos es fundamental.

En este artículo describiré la arquitectura única que han diseñado estas tres empresas para poder contar con estos pilares de la arquitectura multi-tenancy. Después procederé a exponer con más detalle nuestro trabajo en torno al segundo pilar, la garantía de servicios.

Una guía de diseño de reciente publicación proporciona todos los detalles de un diseño validado por Cisco que utiliza tecnología de las tres empresas para ocuparse de los cuatro pilares que acabo de mencionar. Un artículo incluido en esta edición de Tech OnTap describe con mayor detalle uno de los elementos de la arquitectura: MultiStore® de NetApp®.

Descripción general de la arquitectura

La figura 1 muestra una visión general por bloques de la arquitectura. En todas las capas, los componentes clave de software y hardware se han diseñado para ofrecer seguridad, calidad de servicio, disponibilidad y facilidad de gestión.

Diagrama de bloques completo

Figura 1) Diagrama de bloques completo.

Capa informática
En la capa informática, los productos de software VMware® vSphere™ y vCenter™ Server proporcionan un entorno sólido de virtualización de servidor que permite que los recursos del servidor se asignen dinámicamente a varios sistemas operativos invitados que funcionan en equipos virtuales.

VMware vShield Zones proporciona seguridad en la capa informática. Se trata de un firewall virtual distribuidor y con estado gestionado de manera central que se suministra con vSphere 4.0 y que saca partido de la cercanía y la visibilidad de red virtual del host ESX para crear zonas de seguridad. vShield Zones se integra en VMware vCenter y aprovecha la información del inventario virtual como NIC virtuales, grupos de puertos, clusters y VLAN para simplificar la gestión de las reglas de firewall y el provisionamiento de zonas de confianza. Esta nueva forma de crear normativas de seguridad hace un seguimiento de los equipos virtuales con VMotion™ y es totalmente transparente respecto a los cambios en la dirección IP y a la renumeración de la red.

Unified Computing System™ de Cisco (UCS) es una plataforma de centro de datos de última generación que une la informática, el acceso a la red del servidor, el acceso al almacenamiento y la virtualización en un sistema unificado. UCS integra una estructura de redes Ethernet de 10 GB sin pérdidas y de latencia baja con servidores de arquitectura x86 de clase empresarial. El sistema es una plataforma multichasis integrada y escalable en la que todos los recursos participan en un dominio de gestión unificado.

Capa de red
La capa de red proporciona una conectividad de red segura entre la capa informática y la capa de almacenamiento, además de conexiones a redes y clientes externos. Sus componentes clave son:

  • Cisco Nexus 7000, que ofrece conectividad Ethernet (LAN) con redes externas
  • Cisco Nexus 5000, que se comunica con el almacenamiento FC y con Cisco 7000
  • Cisco Nexus 1000V, un switch de software que se ejecuta en el kernel de VMware para proporcionar servicios Cisco VN-Link y permitir una integración sólida entre el entorno de red y el servidor, para que las normativas se transfieran junto con el equipo virtual durante la migración dinámica
  • Cisco MDS 9124, un switch de Fibre Channel que proporciona conectividad SAN y permite el arranque SAN para VMware ESX en UCS

Capa de almacenamiento
La capa de almacenamiento está formada por sistemas de almacenamiento unificado de NetApp capaces de ofrecer simultáneamente conectividad SAN (para arranque SAN) y conectividad NFS para el entorno VMware que se esté utilizando. El almacenamiento NetApp es también capaz de satisfacer los requisitos especiales de almacenamiento de cualquier aplicación en uso. El uso del entorno de VMware a través de Ethernet proporciona un entorno de gestión mucho más simplificado que permite reducir costes.

El software MultiStore de NetApp proporciona un nivel de seguridad y aislamiento en el almacenamiento compartido comparable al de los arrays de almacenamiento aislados físicamente. MultiStore permite crear varias particiones lógicas completamente aisladas en un único sistema de almacenamiento, de modo que el almacenamiento se puede compartir sin poner en riesgo la privacidad. Los contenedores de almacenamiento individuales se pueden migrar de manera independiente y con total transparencia entre sistemas de almacenamiento.

Provisionamiento de clientes
Al provisionar a un cliente con esta arquitectura, el entorno que resulta está equipado con:

  • Uno o más equipos o aplicaciones virtuales
  • Una o más controladoras de almacenamiento virtuales (unidades vFiler)
  • Una o más VLAN para la interconexión y el acceso a estos recursos

Juntas, estas entidades forman una partición lógica. El cliente no puede sobrepasar los límites de esta partición. Además de garantizar la seguridad, también queremos estar seguros de que las actividades que se produzcan en la partición de un cliente no interferirán indirectamente con las actividades en la partición de otro cliente.

Calidad de servicio end-to-end

Muy pocos proyectos ofrecen una calidad de servicio end-to-end. En la mayoría de casos, se activa un mecanismo de calidad de servicio en una capa con la esperanza de acelerar las capas descendentes o ascendentes. Por desgracia, las aplicaciones diferentes tienen características diferentes: unas hacen un uso intensivo de la informática, otras de la red y otras diferentes puede que utilicen más la I/O. Si sólo se limita la I/O, se ayuda poco o nada a controlar el uso de CPU por parte de una aplicación que la utilice de forma intensiva. Es imposible garantizar plenamente la calidad de servicio sin los mecanismos apropiados en las tres capas. Nuestro equipo se propuso diseñar un sistema así.

Empresas como Amazon y Google, entre otras, han diseñado ofertas multi-tenancy o de "cloud" mediante el uso de software patentado, cuya creación interna requirió años y cientos de desarrolladores. Nuestro enfoque consistía en utilizar la tecnología de Cisco, NetApp y VMware disponible en el mercado para conseguir resultados similares.

Aplicamos un principio de diseño a todas las capas que consiste en que cuando no se utilicen los recursos, las aplicaciones de valor alto deberían poden utilizar esos recursos disponibles, si fuera conveniente. Esto puede permitir que una aplicación responda a una circunstancia imprevista. Sin embargo, si se produce contención, debe poderse garantizar el nivel de servicio que los clientes han contratado.

Otro principio de diseño es establecer la clase de servicio lo más cercana a la aplicación como sea posible, asignar ese valor a una definición de normativa y asegurarse de que la normativa se aplica uniformemente en todas las capas de acuerdo con las características únicas de cada capa. Utilizamos tres mecanismos en cada capa para facilitar la oferta de calidad de servicio:

Tabla 1) Mecanismos para la calidad de servicio.

Informática Red Almacenamiento
• Reservas ampliables
• Planificador de recursos dinámicos
• Clases de sistemas de calidad de servicio UCS para la reserva y limitación de recursos
Calidad de servicio: puesta en cola
• Calidad de servicio: control de ancho de banda
• Calidad de servicio: limitación de velocidad
• FlexShare®
• Reservas de almacenamiento
• Thin Provisioning

 

Capa informática
Con respecto a la virtualización del servidor, VMware vSphere ofrece varias funcionalidades para garantizar un uso razonable de los recursos, en especial de la CPU y la memoria. Un pool de recursos de vSphere es una abstracción lógica para una gestión flexible de los recursos. Los pools de recursos pueden agruparse en jerarquías y utilizarse para hacer particiones jerárquicas de la CPU y la memoria disponibles. Si se configuran correctamente los atributos del pool de recursos para reservar, limitar, compartir y ampliar las reservas, se puede conseguir un control minucioso y otorgar prioridad a un cliente por encima de otro en situaciones de recursos en contención.

VMware Distributed Resource Scheduler (DRS) permite crear clusters que contienen varios servidores de VMware. Supervisa continuamente el uso en todos los pools de recursos y asigna los recursos de forma inteligente en todos los equipos virtuales. DRS puede automatizarse totalmente en los clusters para que las cargas de infraestructura y del equipo virtual del cliente se equilibren entre todos los servidores ESX de un cluster.

A nivel de hardware, Cisco UCS utiliza Ethernet de centro de datos (DCE) para gestionar todo el tráfico en un sistema Cisco UCS. Esta mejora estándar del sector de Ethernet divide el ancho de banda del canal Ethernet en ocho pipes virtuales. La clase de sistema determina la forma de asignar el ancho de banda DCE a estos pipes virtuales en todo el sistema Cisco UCS. Cada clase de sistema reserva un segmento específico de ancho de banda para un tipo específico de tráfico. Esto proporciona un alto nivel de gestión de tráfico, incluso en sistemas con exceso de solicitudes.

Capa de red
En la capa de red, el tráfico se segmenta según la Clase de servicio (CoS) que Nexus 1000v haya asignado y el sistema UCS se encarga de protegerlo y supervisarlo. Hay dos métodos diferentes para mantener un rendimiento constante:

  • Puesta en cola permite que los dispositivos en red planifiquen la oferta de paquetes según criterios de clasificación. El resultado final de la capacidad para diferenciar qué paquetes tienen preferencia para la entrega proporciona una diferenciación respecto al tiempo de respuesta para las aplicaciones importantes, si se excede la cuota de suscripción. La puesta en cola sólo se produce si todas las clases de servicios están utilizando el máximo de ancho de banda asignado.
  • Control de ancho de banda ofrece la cantidad adecuada de búferes por cola a los dispositivos en red para que no haya determinadas clases de tráfico que utilicen excesivamente el ancho de banda. Esto hace posible que otras colas puedan suplir de forma equilibrada las necesidades del resto de clases. El control de ancho de banda está estrechamente ligado a la puesta en cola, ya que esta última determina los paquetes que se entregan primero, mientras que el ancho de banda determina la cantidad de datos que pueden enviarse por cola.

Puede activarse un conjunto de normativas para que cualquier cambio impredecible en el patrón de tráfico se pueda tratar de forma poco severa, permitiendo que las aplicaciones vulneren temporalmente el compromiso de servicio, o bien muy severa, disminuyendo el exceso o restringiendo la velocidad de transmisión. Esta funcionalidad también puede utilizarse para definir un nivel de servicio para que los servicios no esenciales puedan mantenerse a un nivel determinado de tráfico o que el tráfico más bajo del nivel de servicio pueda restringirse para que no afecte a los servicios de nivel más alto del cliente.

Las normativas y la limitación de velocidad se utilizan para definir estos niveles de protección. Estas herramientas se aplican tan cerca de la periferia de la red como es posible para impedir que el tráfico penetre en la red. En este diseño, el Nexus 1000V se utiliza para funciones de normativa y limitación de velocidad en tres tipos de tráfico:

  • VMotion. VMware normalmente recomienda una interfaz Gigabit específica para el tráfico VMotion. En nuestro diseño, hay un puerto VMkernel no enrutable que se ocupa del tráfico VMotion. El tráfico de VMotion de cada servidor blade se mantiene a 1 Gbps para reflejar el entorno tradicional. Este límite puede aumentarse o disminuirse según se requiera, pero no debe configurarse de modo que el tráfico resultante afecte en mayor medida al tráfico esencial.
  • Servicios transaccionales y de almacenamiento diferenciados. En un diseño multi-tenancy, se emplean varios métodos para generar servicios diferenciados. Por ejemplo, una cola de "prioridad" se utiliza para los servicios más esenciales y "sin disminución" se utiliza para el tráfico que no puede disminuirse pero que sí admite retrasos. La limitación de velocidad se utiliza para los servicios de velocidad fija, en los que todas las clases de aplicaciones o servicios están restringidos de forma determinada.
  • Gestión. La VLAN de gestión está activada con limitación de velocidad para restringir el tráfico a 1 Gbps.

Capa de almacenamiento
Como ya hemos explicado, el software MultiStore de NetApp proporciona aislamiento seguro para entornos multi-tenancy. (MultiStore se aborda más detalladamente en otro artículo de esta edición.)

En la capa de almacenamiento, para ofrecer calidad de servicio hay que controlar el uso de caché y de CPU del sistema de almacenamiento, además de asegurarse de que las cargas de trabajo se reparten entre un número apropiado de discos físicos. NetApp desarrolló FlexShare para controlar la priorización de cargas de trabajo. FlexShare permite ajustar tres parámetros independientes para cada volumen de almacenamiento o unidad vFiler en una configuración MultiStore, para poder dar más prioridad a una partición de un cliente que a otra. (Existe una descripción detallada de FlexShare en un artículo anterior de Tech OnTap.) Tanto MultiStore como FlexShare han estado disponibles en el entorno operativo Data ONTAP® de NetApp desde hace muchos años.

El thin provisioning de NetApp proporciona "almacenamiento bajo demanda" a los clientes. La capacidad sin formato se trata como si fuera un recurso compartido y sólo se consume cuando es necesario. Al implementar recursos de thin provisioning en una configuración multi-tenancy, deben establecerse normativas para el aumento de tamaño automático de volúmenes, eliminación automática de Snapshot™ y reserva fraccionada. El aumento de tamaño automático de volúmenes permite que estos últimos puedan crecer en incrementos definidos hasta un umbral predeterminado. La eliminación automática de Snapshot es un método automatizado para eliminar las copias más antiguas de Snapshot, si un volumen está casi al límite de su capacidad. La reserva fraccionada permite que se modifique el porcentaje de espacio de reserva según la importancia de los datos asociados.

Al utilizar estas funcionalidades de forma simultánea, puede darse prioridad a los clientes importantes para que aumenten el tamaño de un volumen según convenga utilizando espacio reservado en el pool compartido. Por el contrario, los clientes de menor nivel necesitarán la intervención añadida de un administrador para satisfacer las solicitudes de almacenamiento adicional.

Conclusión

Cisco, VMware y NetApp se han unido para definir y probar una arquitectura cloud multi-tenancy segura capaz no sólo de ofrecer la seguridad necesaria sino también calidad de servicio, disponibilidad y gestión avanzada.

Este artículo es una introducción a nuestro enfoque completo de calidad de servicio. Puede obtener más información sobre nuestra calidad de servicio o sobre los otros pilares de la arquitectura multi-tenancy en nuestra guía de diseño de reciente publicación, que describe al detalle los elementos de la arquitectura y está acompañada de recomendaciones para su correcta configuración.

 ¿Qué opina sobre la calidad de servicio en entornos multi-tenancy?

Formule preguntas, intercambie ideas y comparta sus opiniones en las comunidades online de NetApp.

Chris Naddeo

Chris Naddeo
Ingeniero técnico de marketing en UCS
Cisco Systems

Chris se unió a Cisco para centrarse en la habilitación de clientes y en el diseño de arquitecturas de almacenamiento óptimas para el Unified Computing System de Cisco. Cuenta con una amplia experiencia en almacenamiento, incluido un año en NetApp como ingeniero de sistemas de consultoría para Oracle y Data ONTAP GX, además de nueve años en Veritas, donde fue director de productos del software de almacenamiento Veritas.

 
En profundidad