NSX Container Plugin (NCP) integra NSX y orquestadores de contenedores, como Kubernetes, así como NSX y productos de PaaS (plataforma como servicio) basados en contenedores, como OpenShift y Tanzu Application Service (TAS). Esta guía describe cómo configurar NCP con Kubernetes y TAS.

El componente principal de NCP se ejecuta en un contenedor y se comunica con NSX Manager y con el plano de control de Kubernetes. NCP supervisa los cambios de los contenedores y otros recursos, y administra los recursos de redes, como los puertos lógicos, los conmutadores, los enrutadores y los grupos de seguridad de los contenedores realizando llamadas a NSX API.

El complemento NSX CNI se ejecuta en cada nodo de Kubernetes. Supervisa los eventos del ciclo de vida de los contenedores, conecta una interfaz de contenedor al vSwitch invitado y programa este vSwitch para que etiquete y reenvíe el tráfico entre las interfaces de contenedor y la VNIC.

NCP ofrece las siguientes funcionalidades:
  • Crea de manera automática una topología lógica de NSX para un clúster de Kubernetes y crea una red lógica independiente para cada espacio de nombres de Kubernetes.
  • Conecta pods de Kubernetes a la red lógica y asigna direcciones IP y MAC.
  • Admite la traducción de direcciones de red (Network Address Translation, NAT) y asigna una dirección IP de SNAT independiente para cada espacio de nombres de Kubernetes.
    Nota: Al configurar NAT, el número total de direcciones IP traducidas no puede ser superior a 1000.
  • Implementa directivas de red de Kubernetes con el firewall distribuido de NSX.
    • Compatibilidad con las directivas de red de entrada y salida.
    • Compatibilidad con el selector IPBlock en las directivas de red.
    • Compatibilidad con matchLabels y matchExpression al especificar selectores de etiquetas para directivas de redes.
    • Compatibilidad con la selección de pods en otro espacio de nombres.
  • Implementa el servicio de Kubernetes de tipo ClusterIP y el servicio de tipo LoadBalancer.
  • Implementa la entrada de Kubernetes con el equilibrador de carga de capa 7 de NSX.
    • Compatibilidad con las entradas de HTTP y de HTTPS con terminación de Edge de TLS.
    • Compatibilidad con la configuración de back-end predeterminada de entrada.
    • Compatibilidad con el redireccionamiento de HTTPS, la reescritura de rutas y la coincidencia de patrones de ruta.
  • Crea etiquetas en el puerto de conmutador lógico de NSX para el espacio de nombres, el nombre de pod y las etiquetas de un pod, y permite al administrador definir directivas y grupos de seguridad de NSX con base en etiquetas.
  • La multidifusión se admite entre pods en el mismo espacio de nombres, pero no entre pods de espacios de nombres diferentes.

NCP es compatible con un solo clúster de Kubernetes. Puede tener varios clústeres de Kubernetes, cada uno con una instancia NCP particular, con la misma implementación de NSX.