VIRTUALIZACION DE FUNCIONES DE RED, UN CAMINO HACIA EL DATACENTER DEFINIDO POR SOFTWARE

Haciendo un poco de memoria.

Años atrás, difícilmente los profesionales de TI hubiesen imaginado los cambios tecnológicos que estamos atravesando hoy. Los centros de datos consistían en servidores con sus sistemas operativos, switches, routers, firewalls, etc. Para cada necesitad existía un hardware dedicado o un conjunto interconectado de equipos.

Uno de los primeros saltos tecnológicos hacia un uso más eficiente y reducción de equipos dentro del Centro de Datos fue la virtualización de servidores. Ya no eran hosts dedicados para un servicio o conjunto de ellos, sino que se podía “empaquetar” varios servidores dentro de un mismo hardware.

Con virtualizadores como VmWare, KVM o MS Hyper-V (por mencionar los mas difundidos) se incorporaron características como el High Availibility, Replication, Fault Tolerance, Server Migration, Storage Migration, etc. que brindan mayor disponibilidad de los servicios con menor cantidad de equipamiento físico.

Estas ventajas tecnológicas exigían flexibilidad a las redes de datos mientras que empezaron a hacerlas mas complejas. A los problemas como el balanceo de carga, división de tráfico y protección de acceso desde la red se los multiplicaba cuando se incorporó el movimiento de máquinas virtuales.

La evolución del hardware, la maduración de la tecnología de virtualización y la capacidad de cómputo ociosa que existía en los servidores hicieron mas conveniente implementar por software funciones que antes se hacían con equipamiento dedicado.

La necesidad de flexibilizar las redes, simplificar su administración y usar mas eficientemente el hardware trajeron un nuevo avance al paradigma de la virtualización: Virtualización de las Funciones de Red (Network Functions Virtualization, NFV).

¿Que es la Virtualización de las Funciones de Red?

NFV consiste en implementar las funciones de red antes asignadas a  dispositivos dedicados, tales como switches, firewalls, balanceadores de cargas o VPN Servers incorporando una capa de software en el hypervisor. Al igual que una máquina virtual es una construcción de software que presta servicios a una aplicación, una red virtualizada es una construcción de software que presenta servicios de redes lógicas (switching, routing, firewalling, VPN Servers, etc) a los servidores virtuales.

Los servicios en una red virtualizada son instancias lógicas de módulos de software distribuidos que se ejecutan en el host local y se aplican en la interfaz virtual del conmutador virtual. Los servidores y los dispositivos de red siguen viendo las mismas capas del modelo OSI que verían si se estuviese trabajando en una red física tradicional.

Una red virtualizada se implementa mediante la superposición de redes lógicas y solo requiere el reenvió de paquetes IP a la capa física subyacente: la trama que sale desde las VMs origen es una de capa 2 tradicional que se encapsula en el hipervisor de origen con una cabecera IP y UDP adicional y de superposición de red lógica (por ejemplo, VxLAN o GENEVE). La red física reenvía esta trama “extendida” a su destino (hipervisor, nube, etc), quien la desencapsula y entrega la trama de capa 2 original a la VM destino.

No confundir NFV con SDN

SDN y NFV son términos que pueden confundirse, pero no son lo mismo ni uno reemplazo del otro.

Mientras en una SDN hablamos de una red definida por software, en NFV hablamos de virtualizar funciones de red.

En NFV se virtualizan funciones de red que pueden correr en diferentes hardwares.

Al igual que con los dispositivos físicos, los servicios virtualizados pueden administrarse desde la SDN.

¿Y que ventajas ofrece la NFV?

  • Creación de nuevos servicios:Los servicios virtualizados pueden encadenarse de forma que el conjunto cree un nuevo servicio virtualizado.
  • Microsegmentación:La arquitectura “discreta” de los actuales centros de datos consiste en silos aislados del resto de la red. Dispositivos de seguridad dividen ambas zonas y protegen los primeros de los segundos.  Se pueden crear políticas de seguridad, pero éstas se aplican al “grupo” de servidores del centro de datos.

Los servicios de red y seguridad en el software se distribuyen a una capa virtual y se "adjuntan" a las máquinas virtuales. Cuando un servidor se mueve a otro host, sus servicios de red y seguridad se mueven con él.

  • Monitoreo de tráfico: El tráfico puede ser monitoreado desde la salida de la máquina virtual origen a la destino, permitiendo así un control mas granular.
  • Trafico seguro:Los hipervisores pueden cifrar los datos que circulan de un host físico a otro, proveyendo un tráfico seguro y transparente a los servidores virtuales.
  • Automatización de servicios:La virtualización de la red hace posible crear, proveer y administrar de forma programada todas las redes en el software, mientras continúa aprovechando la red física subyacente como el backplane de reenvío de paquetes.
  • Integración con la nube:Las redes virtualizadas pueden coordinar los servicios networking a través de varias plataformas (hipervisores, nubes públicas o privadas) para efectivamente generar una red dinámica y transparente.
  • Agnóstico de red subyacente:Los servicios de red y seguridad que se les provee a las máquinas virtuales son transparentes e independientes a la tecnología de red física subyacente.
  • Flexibilidad:El rearmado de arquitecturas, implementación de nuevas políticas, etc. se realiza de forma lógica.  Servicios de conectividad y seguridad pueden ser armados, modificados o replicados desde una única interfaz y sin la dependencia de tecnologías propietarias.

¿Con que podemos armar una red virtual?

VMware NSX Data Center es la plataforma de virtualización de redes para el centro de datos definido por software (Software-Defined Data Center, SDDC) que proporciona redes y seguridad independientemente de la infraestructura física subyacente.

La macro arquitectura de NSX se compone de tres planos:

El plano de administración: diseñado independientemente de cualquier administrador de cómputo (incluido vSphere).

El plano de control: separado en un cluster centralizado y un componente local específico, permite entornos heterogéneos.

El plano de datos: diseñado para ser normalizado en varios entornos, presenta un switch de host que normaliza la conectividad entre varios dominios, incluidas varias instancias de VMware vCenter, KVM, contenedores y otras implementaciones locales.

El plano de control y el de datos de NSX se diseñaron para permitir la flexibilidad, escalabilidad y rendimiento.

Con NSX Datacenter es posible tener VMs redundantes, configuradas de igual forma, pero aisladas entre sí. La puesta en producción de un DRS, así como el movimiento de los servidores, puede llevarse adelante sin cambios de configuraciones en las aplicaciones.

NSX permite también a los equipos de TI y de desarrollo elegir las tecnologías más adecuadas para sus aplicaciones. Brinda un punto único para administrar y supervisar los entornos que contienen tanto máquinas virtuales como contenedores.

Cuando se incorpora la nube (privadas o públicas) a la arquitectura del centro de datos, NSX proporciona un panel único para la gestión de políticas de seguridad y redes.

NSX Data Center hace posible la Virtual Cloud Network para ofrecer conectividad integral y generalizada tanto para las aplicaciones como para los datos, independientemente de su ubicación. Las aplicaciones y máquinas virtuales pueden estar en un único centro de datos o distribuidas en un mix de nubes públicas (AWS, Azure, etc), privadas y centros de datos; todo esto de una forma transparente.

Mas información: https://www.vmware.com/ar/products/nsx.html

¿Cual es el próximo paso?

NFV es un paso mas en el camino hacia el Software-Defined Data Centers (SDDC). El concepto de redes virtualizadas surgió como punto intermedio para alcanzar esa meta tecnológica.

En un centro de datos definido por software, todos los elementos de infraestructura (almacenamiento, memoria, CPU, redes, y seguridad) son provistos como servicios virtualizados. Los administradores de TI crearán y modificarán sus centros de datos uniendo servicios virtualizados.