Clusters clássicos: por que os ALBs não são implementados em uma zona?

Infraestrutura clássica

Quando se tem um cluster multizona clássico, ao executar o ibmcloud ks ingress alb ls --cluster CLUSTER, nenhum ALB é implementado em uma zona. Por exemplo, se você tiver nós do trabalhador em 3 zonas, poderá ver uma saída semelhante à seguinte na qual um ALB público não foi implementado na terceira zona.

ALB ID                                            Enabled    Status     Type      ALB IP           Zone    Build                          ALB VLAN ID   NLB Version
private-cr96039a75fddb4ad1a09ced6699c88888-alb1   false      disabled   private   -                dal10   ingress:1.1.2_2507_iks   2294021       -
private-cr96039a75fddb4ad1a09ced6699c88888-alb2   false      disabled   private   -                dal12   ingress:1.1.2_2507_iks   2234947       -
private-cr96039a75fddb4ad1a09ced6699c88888-alb3   false      disabled   private   -                dal13   ingress:1.1.2_2507_iks   2234943       -
public-cr96039a75fddb4ad1a09ced6699c88888-alb1    true       enabled    public    169.xx.xxx.xxx   dal10   ingress:1.1.2_2507_iks   2294019       -
public-cr96039a75fddb4ad1a09ced6699c88888-alb2    true       enabled    public    169.xx.xxx.xxx   dal12   ingress:1.1.2_2507_iks   2234945       -

Em clusters padrão, na primeira vez que você cria um cluster em uma zona, uma VLAN pública e uma VLAN privada nessa zona são automaticamente provisionadas para você na sua conta da infraestrutura clássica do IBM Cloud.

Nessa zona, 1 sub-rede móvel pública é solicitada na VLAN pública especificada e 1 sub-rede móvel privada é solicitada na VLAN privada especificada. Para o IBM Cloud Kubernetes Service, as VLANs têm um limite de 40 sub-redes. Se a VLAN do cluster em uma zona já atingiu esse limite, o Subdomínio do Ingress falhará ao ser provisionado e o ALB do Ingress público para essa zona falha ao ser provisionado.

Para visualizar quantas sub-redes uma VLAN tem:

  1. No console da infraestrutura clássica do IBM Cloud, selecione Rede > Gerenciamento de IP > VLANs.
  2. Clique no Número da VLAN da VLAN usada para criar seu cluster. Revise a seção Subnets para ver se 40 ou mais sub-redes existem.

Escolha uma das opções a seguir para resolver o problema:

Opção 1: solicitar uma nova VLAN
Se for necessária uma nova VLAN, solicite uma entrando em contato com o suporte da IBM Cloud. Em seguida, crie um cluster que usa essa nova VLAN.
Opção 2: usar o spanning de VLAN com uma VLAN disponível
Se você tiver outra VLAN disponível, será possível configurar a ampliação da VLAN no cluster existente. Depois, será possível incluir novos nós do trabalhador no cluster que usam a outra VLAN com sub-redes disponíveis. Para verificar se a ampliação da VLAN já está ativada, use o comando do ibmcloud ks vlan spanning get --region REGION.
Opção 3: reutilizar sub-redes existentes na VLAN
Se você não estiver usando todas as sub-redes na VLAN, será possível reutilizar sub-redes na VLAN incluindo-as em seu cluster.

Conclua as etapas a seguir após escolher uma opção.

  1. Verifique se a sub-rede que você deseja usar está disponível.

    A conta de infraestrutura que você usa pode ser compartilhada em diversas contas da IBM Cloud. Nesse caso, mesmo se você executar o comando ibmcloud ks subnets para ver sub-redes com Clusters ligados, será possível ver informações somente para seus clusters. Verifique com o proprietário da conta de infraestrutura para certificar-se de que as sub-redes estão disponíveis e não em uso por nenhuma outra conta ou equipe.

  2. Use o comando ibmcloud ks cluster subnet add para disponibilizar a sub-rede existente para o seu cluster.

  3. Verifique se a sub-rede foi criada com sucesso e se foi incluída em seu cluster. O CIDR da sub-rede é listado na seção Subnet VLANs.

    ibmcloud ks cluster get --cluster CLUSTER_NAME --show-resources
    

    Nesta saída de exemplo, uma segunda sub-rede foi incluída na VLAN pública 2234945:

    Subnet VLANs
    VLAN ID   Subnet CIDR          Public   User-managed
    2234947   10.xxx.xx.xxx/29     false    false
    2234945   169.xx.xxx.xxx/29    true     false
    2234945   169.xx.xxx.xxx/29    true     false
    
  4. Verifique se os endereços IP móveis da sub-rede que você incluiu são usados para os ALBs em seu cluster. Podem ser necessários vários minutos até que os serviços usem os endereços IP móveis da nova sub-rede.

    • Não há subdomínios de ingresso: execute ibmcloud ks cluster get --cluster CLUSTER para verificar se o Subdomínio de ingresso está preenchido.
    • Nenhum ALB implementado em uma zona: execute ibmcloud ks ingress alb ls --cluster CLUSTER para verificar se o ALB ausente está implementado.