NSX: Host Preparation y Configuración VXLAN

[Total: 2    Average: 5/5]
Hola a todos!

Siguiendo con la serie de posts acerca de NSX, luego de haber completado la instalación del NSX Controller Cluster, podemos continuar con la configuración inicial de NSX.  En esta ocasión vamos a hablar acerca del proceso de Host Preparation, a través del cual vamos a preparar los hosts ESXi para poder utilizar NSX, y luego hablaremos del proceso de Configuración VXLAN.

Host Preparation

Ya hemos mencionado anteriormente que NSX Manager es el componente encargado del deploy de todo el resto de los componentes de NSX, como por ejemplo, los NSX Controller y NSX Edge Gateway.  NSX Manager además incluye los “Hypervisor Kernel Modules“, los cuales corresponden a archivos VIB (vSphere Installation Bundles) que deben ser instalados en los hosts ESXI, a través del Message Bus Agent, para que puedan soportar el uso de NSX, en un proceso conocido como Host Preparation.
  • 1 VIB habilita la funcionalidad VXLAN de Layer 2: Protocolo overlay que permite la creacion de redes logicas Layer 2 sobre una red IP ya existente.
  • 1 VIB habilita el uso de Router Distribuido: Provee servicio de routing este-oeste a nivel de hypervisor de manera distribuida.  Las VMs que residen en el mismo host y distintos segmentos de red, pueden comunicarse entre si sin tener que pasar por un dispositivo de routing tradicional.
  • 1 VIB habilita el uso de Firewall Distribuido: Permite filtrado de trafico a traves de un servicio de Firewall que se encuentra distribuido entre todos los hosts.  De esta manera permite la segmentacion de las VMs en el datacenter virtual, basado en distintos atributos de las VMs, como por ejemplo su nombre, asi como también basado en atributos de red tradicionales como direcciones IP y puertos.
Después de que estos VIBs sean añadidos a cada host ESXi, el vSphere Distributed Switch (VDS) pasa a denominarse NSX Virtual Switch.  Este componente abstrae las redes fisicas y provee funcionalidades de switching en el hypervisor.  Es un componente esencial para la virtualizacion de la red ya que permite el uso de redes logicas, las cuales son independientes de la capa fisica.    Un NSX Virtual Switch tiene las siguientes caracteristicas:
  • Soporta el uso de VXLAN (overlay network), lo cual a su vez permite:
    • Reducir el uso de VLANs en la red fisica.
    • Creacion de redes logicas Layer 2 sobre la infraestructura fisica existente (overlay network), sin la necesidad de re-diseñar la arquitectura de red del Datacenter.
    • Provee comunicación este-oeste y norte-sur, a la vez que se mantiene el aislamiento entre distintos Tenants.
  • Facilita la escalabilidad de los hypervisores.
  • Incluye todas las características heredades del vSphere Distributed Switch: Port Mirroring, NetFlow/IPFIX, Configuration Backup y Restore, Network Health Check, QoS, y LACP.

Utilizando el vSphere Web Client, desde el Home ingresamos a la sección Networking and Security > Installation > Host Preparation.

captura-de-pantalla-2016-08-21-15-59-25

En la parte central, seleccionamos el Cluster sobre el cual deseamos realizar el proceso de Host Preparation (no se puede realizar el proceso en hosts individuales), y hacemos click en el boton “Actions”.  Esto abrirá un pequeño menú con una sola opción: Install.  Hacemos click sobre “Install”, y esto comenzará con la instalación de los paquetes VIB sobre los hosts ESXi del cluster.

captura-de-pantalla-2016-08-21-15-59-34

Podemos monitorear en la misma interfaz, el estado en que se encuentra la instalación en cada uno de los hosts ESXi del cluster.

captura-de-pantalla-2016-08-21-15-59-51

Debemos asegurarnos que todos los hosts aparezcan con la versión de NSX en la columna “Installation Status”, y una visto bueno en verde, que nos indica que la instalación se ha completado correctamente.   Podemos observar tambien que a la derecha de cada Cluster el estado de VXLAN nos indica “Not Configured“, es decir que aun no se ha realizado la configuración de VXLAN.  Esto lo revisaremos a continuación en este mismo post.

captura-de-pantalla-2016-08-21-16-01-58

Configuración de VXLAN

Luego de completar el proceso de Host Preparation se debe realizar la Configuración de VXLAN, que consiste basicamente en la configuración de los VTEP en cada host ESXi.  Para que VXLAN, y por ende NSX, pueda operar, se debe implementar una red de transporte VXLAN.  Esta red de transporte VXLAN es creada utilizando lo que se conoce como VTEP (Virtual Tunnel End Point).  Cada host debe tener al menos un VTEP, el cual no es más que un puerto VMkernel, similar a los que hasta ahora hemos utilizado para vMotion, FT, etc.

Estos VTEP no lo podemos crear manualmente, sino que se crean automáticamente al momento de configurar un host para utilizar VXLAN, proceso que detallaremos a continuación.  Durante la configuración de VXLAN, y por ende, durante la creación de los VTEPs, los puertos vmkernel son creados sobre un Distributed Port Group.  Esto implica que el uso de Distributed Virtual Switch es obligatorio.

Para la conectividad entre los VTEP no es mandatorio contar con una red Layer 2 end-to-end, es decir, no es necesario que los VTEPs de todos los hosts se encuentren en el mismo segmento de red para poder crear la red de transporte VXLAN. Para efectos de escalabilidad, de hecho es recomendado que los VTEPs se encuentren configurados en distintos segmentos IP cuando los hosts se encuentran en distintos racks. La recomendación es que el segmento L2 para los VTEP no se extienda más allá de los switches Top-of-rack.

Como vimos anteriormente, luego de completar el proceso de Host Preparation, el estado de VXLAN aparece como “Not Configured“.  Si hacemos click sobre el icono a la derecha de “Not Configured” aparece un menú que nos permite, por ejemplo, desinstalar los paquetes VIB, deshabilitar el Firewall, o cambiar el “Locale ID” cuando se requiera en implementaciones de NSX Cross-vCenter.  En este caso, seleccionamos la opcion “Configure VXLAN“.

captura-de-pantalla-2016-08-21-16-02-31

Apareceré entonces la siguiente ventana, donde podemos especificar la información requerida para configurar los VTEP.

  • captura-de-pantalla-2016-08-21-16-04-01Switch: Seleccionar el Distributed Virtual Switch donde se deben crear los puertos VMKernel que serán utilizado para los VTEPs.
  • VLAN: opcionalmente se puede especificar una VLAN para la red de transporte que se creará con los VTEP para el trafico VXLAN.  Si el valor se deja en cero, se utiliza la VLAN nativa de la red fisica.  El rango permitido, en caso de usar VLAN, es de 1 a 4094.
  • MTU:  Se recomienda como minimo un MTU de 1600 bytes para el trafico VXLAN, con el fin de poder soportar los campos adicionales que se añaden a las cabeceras de los frames luego de la encapsulación realizada por los VTEP.  Recordar que este valor de MTU debe ser configurado end-to-end en la infraestructura fisica.
  • VMKnic IP Addresing:  Debemos indicar un mecanismo para poder asignar de direcciones IP estaticas a los VTEP.  Las opciones son el uso de DHCP (debe haber un servidor DHCP ya disponible en la red), y la otra opción es usar un IP Pool, como el que utilizamos al momento de crear los NSX Controller.  De hecho, podriamos utilizar el mismo IP Pool utilizado para el NSX Controller, o crear un IP Pool nuevo.

En este caso, vamos a elegir la opcion “Use IP Pool” y luego “New IP Pool” para crear un nuevo IP Pool para los VTEP.  Esto abrirá una nueva ventana, en la cual podremos crear un nuevo IP Pool para los NSX Controller.  Se debe proveer la siguiente información.

  • captura-de-pantalla-2016-08-21-16-05-01Nombre del IP Pool
  • Gateway
  • Mascara de subred en formato CIDR
  • Opcionalmente DNS primario y secundario.
  • Sufijo DNS
  • Pool de IP estaticas que contendrá el pool, y que posteriormente serán utilizadas para asignarle IP a los VTEP.

Hacemos click en OK para volver a la ventana de configuración de VXLAN y especificar la información restante:

  • VMKnic Teaming Policy debemos especificar la politica de balanceo de carga que utilizarán los puertos VMkernel de los VTEP.   Recordar que como buena practica, todo Virtual Switch y todo Port Group debiera tener al menos 2 NICs fisicas asignadas, para efectos de redundancia y balanceo de carga.

captura-de-pantalla-2016-08-21-16-05-21

Captura de pantalla 2017-01-11 23.36.40

  • VTEP:  El ultimo parametro no lo debemos configurar nosotros, sino que se configura automaticamente en función de la opcion de NIC Teaming seleccionada para los VTEP.   Dependiendo de la opción de balanceo, podría haber 1 o multiples VTEP por host ESXi.  Revisar la tabla anterior para determinar cuantos VTEP se configuran dependiendo de la politica de NIC Teaming.

captura-de-pantalla-2016-08-21-16-05-26

Una vez que hemos completado los datos para la configuración de VXLAN, hacemos click en OK para que la configuración sea aplicada a todos los hosts ESXi del cluster.

Para determinar si la configuración se ha completado correctamente, a la derecha de cada host ESXi aparecerán los puertos VMkernel (vmk#) creados para VTEP en dicho host, y la IP asociada (asignada a partir del IP Pool).  Eso lo podemos observar claramente en la siguiente imagen.

captura-de-pantalla-2016-08-21-16-07-33

Con esto ya tenemos configurados los hosts ESXi para ser utilizados por NSX.  Aun nos queda unos ultimos pasos antes de poder comenzar a crear Switches logicos y otros componentes dentro de NSX, y uno de ellos es la configuracion de un pool de ID para VXLAN.  Este pool es un rango de VNI (VXLAN Network Identifier), a partir del cual se obtendrán los ID que se asignan automaticamente a cada Switch logico cuando estos son creados.

Nos dirigimos a la seccion Networking and Security > Installation > Logical Network Preparation, para luego seleccionar la opción Segment ID.  Hacemos click en Edit.

captura-de-pantalla-2016-08-21-16-08-20

A continuación ingresamos un rango de VNI para ser utilizados por los Switches Logicos.  Este rango no debe incluir identificadores inferiores a 5000, lo cual es un requerimiento de NSX para evitar generar confusiones el rango valido de VLAN (0-4096).  En este ejemplo, he seleccionado un rango que va de 5000 a 5999.

captura-de-pantalla-2016-08-21-16-08-46

Le damos click en OK, y ya tenemos listo el pool de ID para VXLAN.  Luego de esto, ya solo nos resta configurar  las zonas de transporte para poder finalizar la configuración y comenzar a utilizar las distintas funcionalidades de NSX.   De eso ya hablaremos en un proximo post.

captura-de-pantalla-2016-08-21-16-09-01

Espero les haya sido de interes.  En los proximos posts estaremos detallando lo siguiente

 

About the Author:

2 Comments

  1. […] NSX: Preparación de hosts […]

  2. Jerrold July 25, 2017 at 16:03 - Reply

    Informative article, totally what I needed.

Leave A Comment

EnglishPortugueseSpanish