Error de InvalidLoadBalancerProfileAllocatedOutboundPorts al crear o actualizar un clúster de AKS

Resumen

Obtenga información sobre cómo identificar y resolver el código de error "InvalidLoadBalancerProfileAllocatedOutboundPorts" para que pueda crear o actualizar correctamente un clúster de AKS.

Prerrequisitos

CLI de Azure, versión 2.53.0 o una versión posterior. Para buscar la versión instalada, ejecute el az --version comando .

Síntomas

Se produce un error en una operación de creación o actualización de clúster de AKS y devuelve el siguiente mensaje de error:

Código: InvalidLoadBalancerProfilePuertosDeSalidaAsignados
Mensaje: El puerto 8000 del perfil del equilibrador de carga asignado no está en un rango permitido dado el número de nodos y direcciones IP provisionadas. El número total de nodos 9 requiere 72000 puertos, pero solo hay 64000 puertos disponibles dado 1 IP pública saliente. Consulte https://aka.ms/aks/slb-ports para obtener más detalles.

Causa

En clústeres con tipo LoadBalancer de salida, el tráfico que se origina en los nodos del clúster (incluido el tráfico de las aplicaciones que se ejecutan en pods) egresa a través del equilibrador de carga administrado por AKS, que se basa en los puertos de Traducción de Direcciones de Red de Origen (SNAT) para establecer estas conexiones salientes.

De forma predeterminada, a cada clúster se le asigna una dirección IP de front-end saliente que permite un total de 64 000 puertos SNAT y a cada nodo de trabajo del clúster se le asigna un recurso compartido de estos puertos. Por ejemplo, si un clúster tiene 50 nodos o menos, a cada nodo de trabajo se le asignan 1024 puertos. En algunos escenarios en los que las aplicaciones que se ejecutan en un clúster requieren establecer un gran número de conexiones salientes, el número predeterminado de puertos SNAT disponibles puede ser insuficiente, lo que conduce al agotamiento de puertos SNAT.

Para resolver el problema de agotamiento de puertos SNAT, use uno o ambos de los métodos siguientes:

  • Cambie el número de direcciones IP de front-end salientes. Cada dirección IP proporciona 64 000 puertos SNAT adicionales.
  • Cambie el número de puertos SNAT asignados a cada nodo de trabajo.

El error "InvalidLoadBalancerProfileAllocatedOutboundPorts" se produce cuando el número de nodos especificado, el número de direcciones IP de front-end salientes y el número de puertos asignados por nodo no constituyen una configuración factible.

Solución

Para resolver el error "InvalidLoadBalancerProfileAllocatedOutboundPorts", siga estos pasos:

  1. Use la fórmula siguiente para comprobar si la configuración deseada es factible:

    64,000 ports per IP / <outbound ports per node> * <number of outbound IPs> = <maximum number of nodes in the cluster>
    

    Nota:

    Al realizar esta comprobación, asegúrese de tener en cuenta los aumentos de nodos que se producen durante las actualizaciones del clúster y otras operaciones. AKS tiene como valor predeterminado un nodo de búfer para las operaciones de actualización, pero este número se puede modificar mediante el parámetro maxSurge .

  2. Cambie el número de nodos del clúster, el número de direcciones IP de front-end salientes o el número de puertos SNAT por nodo.

    Para obtener más información sobre cómo configurar los puertos de salida asignados y ejemplos y cálculos del número de puertos que podría necesitar, consulte Configuración de los puertos de salida asignados.

Referencia

Utilice la traducción de direcciones de red de origen (SNAT) para las conexiones salientes