La Virtualizacion del I/O es una de las nuevas formas de virtualización, junto con la Virtualizacion de Aplicaciones o la Virtualizacion de Servicios, que están emergiendo de la meteorica expansion que vive la Virtualización de Servidores.
Por el momento es un mercado muy nuevo en el que hay muy pocas experiencias en escenarios del mundo real. A día de hoy, hay unas pocas compañías que comercialicen una solución verdadera de Virtualización del I/O proporcionando servicios completos de virtualizacion del IO, a saber: 3
Leaf Systems, Xsigo Systems (dos compañias muy jovenes),
Cisco Systems y Brocade (con sus standards).
(Alguna más habra salido que no conozca)
¿Que es exactamente la Virtualización del I/O? ¿En que nos puede beneficiar?La Virtualización del I/O se entinde como una abstraccion de los protocolos de tranporte para realizar conexiones del nivel fisico. En palabras claras, es usar una tecnologia que agrupe todos los canutos infrautilizados (ya sea FC o Ethernet) en menos canutos más utilizados, mezclando los protocolos más tipicos.
Por el momento hay dos tendencias tecnologicas para llevar a cabo esta mision:
Algunos vendedores utilizan la tecnologia de interconexion
InfiniBand como la capa de transporte fisico: esto les permite usar la extremadamente baja latencia de InfiniBand para transportar TCP/IP, FC y otros protocolos tradicionales. Como desventaja, hay que mencionar que está tecnología requiere nuevo cableado y algun switch(Aunque puede hacerse brige como luego comentaré). Esto puede ser un impedimento en entornos que han invertido dinero y know-how de arquitecturas Ethernet y FC.
Por el otro lado, otros vendedores como, apuestan por futuros standards como
10Gb Ethernet o extensiones a la 10Gb Ethernet como puede ser
Data Center Ethernet (DCE), que es un standard IEEE en progreso que nos proveerá de una gran eficiencia, menor latencia y un comportamiento sin pérdidas y sin errores en una red Ethernet.
En el proximo post espero colgar unos resultados sobre 10Gbit Ethernet com VMware.Como todas las soluciones que existen, nacen para hacer frente a un problema:
Con la llegada de la Virtualización de los Servidores en nuestros CPDs han crecido el numero de puertos usados y la infrastructura de red (ya sea de datos o almacenemiento) se ha complicado.
Hoy en día, cada servidor destinado a la virtualizacion de servidores ocupa como poco 6-8 tomas. Por ejemplo 6 tarjetas ethernet: 2 para Service Console, 2 para VMotion y 2 para trafico de VMs y a las que hay que sumar 2 para iSCSI o 2 para Fiber Channel (o ambas).
En algunas empresas se puede llegar hasta 20 interfaces fisicas ocupadas por servidor, curiosamente estas empresas son las más grandes, donde las politicas son más estrictas respecto a la segmentación de las redes.
Hay que tener en cuenta que, en mi opinión, llegar a un numero mayor de 10 en las interfaces que necesita cada servidor de virtualización no es debido a una limitacion tecnica puesto que existen tecnologías (como las VLAN y VMware Port Groups) que permiten segmentar logicamente las redes mencionadas arriba, realmente
se trata de un tema de segmentación mas que de un tema de rendimiento de I/O.Como beneficios de esta virtualización del IO están mayormente la
flexibilidad, la utilización y el aprovisionamiento más rapido. Por ejemplo, el
numero de conexiones requeridas por servidor
bajarían de 6-8 a 2 si usasemos conectores InfiniBand reduciendo el coste y la complejidad. Simplemente tendremos que fijar un nivel de virtualización (como en los servidores) que hará que nuestros canutos de InfiniBand o 10GbEthernet estén más o menos sobreutilizados.
La mayoría de los defensores de la tecnología 10Gb Ethernet se basan en que es 10 veces más rapida y eso la hace más potente y menos compleja. Como ya he dicho, en mi opinion,
no es un tema de rendimiento ni de ancho de banda (que es importante, claro), si no que es un tema de segmentación fisica en la mayoria de los casos. Si lo que nos ofrece esta tecnologia (10Gbit Eth) es simplemente mayor ancho de banda,
me veo con el mismo problema en dos años: 6-8 interfaces fisicas de 10Gbps por cada servidor de virtualizacion.
Veremos pues a ver que nos trae el standard Data Center Ethernet (DCE)
InfiniBand, por su parte, me parece que tiene un
mayor atractivo para proporcionar un valor añadido que la propia fuerza bruta de 10Gb Ethernet. En primer lugar, está el hecho positivo de que VMware soporta InfiniBand en VI3.5 y el segundo aspecto a tener en cuenta es que InfiniBand se puede ser
"bridged" en la arquitectura de I/O del DataCenter existente (Ethernet , FC), proporcionando una solución intermedia que permita usar esta tecnología en el Datacenter sin tener que desmantelar toda nuestra arquitectura.
Este escenario es posible gracias a la existencia de los bridges InfiniBand que conectan la red InfiniBand(IB) con la red normal:
Basicamente, instalando una HBA de InfiniBand en cada servidor podemos crear un numero de "puertos virtuales" que serán mapeados en los switches IB y en los bridges IB para conectarlos a la infrastructura ethernet existente. Este tipo de tecnología también permite usar una mezcla de virtual IB Ethernet adapters y VMware port Groups.De esta forma se nos proporciona lo que queremos:
- Algo tranparente y que cumpla con los requerimientos de nuestras politicas internas de segmentacion.
- Continuar usando los hosts VI3 como si tuvieran sus 6 u 8 interfaces fisicas.
- Rebajar dichas 6 u 8 interfaces por servidor de virtualización.
Desde un punto de vista puramente teorico, me parace que InfiniBand tiene más que decir que 10Gbit Ethernet, sobre todo en entornos granades de servidores VI3. Habiendo dicho esto, todos sabemos y el tiempo nos ha enseñado que no son siempre las mejores soluciones y las mejores tecnologías las que se imponen en el mercado. asi, pues puede que en unos años haya mayoritariamente InfiniBand, 10Gbit ethernet o una mezcla de ambas. Como ocurre con iSCSI y FC.