vSphere IaaS control plane no admite la edición del archivo de configuración de NCP ncp.ini. Puede crear definiciones de recursos personalizados (Custom Resource Definitions, CRD) en NCP para configurar los parámetros de red y de equilibrador de carga.

CRD de NCPSetting

Cree una CRD de NCPSetting y establezca los valores para la configuración de NCP.

En la siguiente tabla se describen los parámetros de red y de equilibrador de carga que puede configurar:
Parámetro Descripción
log_dropped_traffic Indique si se han registrado las reglas DENY del firewall distribuido.

Valores: True, False

El valor predeterminado es false

log_firewall_traffic Indique si se han registrado las reglas de DFW.
Los valores son:
  • ALL. Habilita el registro de todas las reglas de DFW.
  • DENY. Habilita el registro solo para reglas DENY.
pool_algorithm Opción para establecer el algoritmo de equilibrio de carga en el objeto del grupo de equilibradores de carga.
Los valores son:
  • Round_Robin
  • Weighted_Round_Robin
  • Least_Connection
  • Weighted_Least_Connection
  • IP-Hash

El valor predeterminado es Round-Robin.

service_size Opción para establecer el tamaño del equilibrador de carga.

Los valores son Small, Medium y Large.

El valor predeterminado es Small.

l7_persistence Opción para establecer la opción de persistencia del equilibrador de carga.
Los valores son:
  • cookie.
  • source_ip
l7_persistence_timeout Valor de tiempo de espera de persistencia en segundos en el perfil de persistencia de capa 7.
cookie_name Especifique un nombre de cookie cuando l7_persistence type esté establecido en cookie.
x_forward_for Habilite X_forward_for para los encabezados de entrada.
Los valores son:
  • Insert
  • Replace
snat_rule_logging Opción para seleccionar el registro de las reglas SNAT.
Los valores son:
  • None
  • Basic. Registro de todos los espacios de nombres.
  • Extended. Registro de todos los espacios de nombres y servicios.
vs_access_log Propiedades de registro del servidor virtual de entrada y ruta.
Los valores son:
  • VS_access_log_none
  • access_log_enabled. Habilita el registro del servidor virtual de capa 7.
  • log_significant_event_only. Las solicitudes con un estado de respuesta HTTP >=400 se tratan como un evento significativo.

El valor predeterminado es VS_access_log_none.

ip_reallocation_time Tiempo en segundos antes de que se pueda reasignar una IP liberada.

Para obtener más información sobre NCP y los objetos de NSX, consulte la documentación de NSX.

Realice los siguientes pasos para habilitar esta función:
  1. Establezca el valor de enable_ncp_setting_crd en True.
  2. Cree un archivo YAML con la siguiente plantilla:
    apiVersion: apiextensions.k8s.io/v1
    kind: CustomResourceDefinition
    metadata:
      name: ncpsettings.vmware.com
    spec:
      group: vmware.com
      versions:
        - name: v1
          served: true
          storage: true
          schema:
            openAPIV3Schema:          
              type: object
                properties:
                  spec:
                    type: object
                    properties:
                      nsx_v3:
                        type: object
                        properties:
                          log_dropped_traffic:
                            description: 'Indicates whether distributed firewall DENY rules are logged.'
                            type: boolean
                          log_firewall_traffic:
                            description: 'Indicate whether DFW rules are logged.'
    ........ All configs that are allow to be configured via CRD........
                           
      scope: Cluster
      names:
        plural: ncpsettings
        singular: ncpsetting
        kind: NCPSetting
        shortNames:
        - ncpstg
    Por ejemplo:
    apiVersion: vmware.com/v1alpha2
    kind: NCPSetting
    metadata:
        name: ncp-setting-crd
    spec:
        nsx_v3:
            log_dropped_traffic: True
            log_firewall_traffic: ALL
            pool_algorithm: Round_Robin
            l7_persistence: cookie
            x_forwarded_for: Insert
  3. Aplique el archivo YAML con el siguiente comando:

    kubectl apply -f ncp-setting-crd.yaml.j2

Para evitar que varias CRD anulen el mismo valor de configuración, NCP solo procesa el objeto de CRD con el nombre ncp-setting-crd. Otras CRD con nombres diferentes se anotan con errores y NCP no las procesa.

Anular la configuración de NCP

Los parámetros de configuración de la CRD pueden tener objetos NSX correspondientes. Cuando se crea una CRD para anular los parámetros, la CRD no cambia los parámetros en los objetos, excepto en los siguientes casos:
  • l7_persistence, l7_persistence_timeout y cookie_name. Si la CRD cambia el parámetro l7_persistence, NCP crea un nuevo perfil de persistencia con los valores de l7_persistence, l7_persistence_timeout y cookie_name.

    Si los parámetros l7_persistence_timeout y cookie_name se cambian a través de la CRD, el perfil existente se actualiza en función de los nuevos valores.

  • x_forwarded_for. Si la CRD cambia el parámetro x_forwarded_for, NCP crea un nuevo perfil de aplicación basado en su valor.
  • vs_access_log. Si la CRD cambia el parámetro vs_access_log, NCP actualiza la opción de registro de los servidores virtuales según corresponda.