Clusters classiques : Pourquoi aucun équilibreur de charge d'application (ALB) n'est-il déployé dans une zone ?

Infrastructure classique

Lorsque vous disposez d'un cluster classique multizone et que vous exécutez ibmcloud ks ingress alb ls --cluster CLUSTER, aucun ALB n'est déployé dans une zone. Par exemple, si vous disposez de noeuds worker dans 3 zones différentes, vous pouvez voir une sortie similaire à ce qui suit, où un équilibreur de charge d'application public ne s'est pas déployé dans la troisième zone.

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       -

Dans les clusters standard, lorsque vous créez un cluster pour la première fois dans une zone, un VLAN public et un VLAN privé dans cette zone sont automatiquement provisionnés pour vous dans votre compte d'infrastructure classique IBM Cloud.

Dans cette zone, 1 sous-réseau portable est demandé sur le VLAN public que vous spécifiez et 1 sous-réseau portable privé est demandé sur le VLAN privé que vous spécifiez. Pour IBM Cloud Kubernetes Service, les VLAN sont limités à 40 sous-réseaux. Si le VLAN du cluster d'une zone a déjà atteint cette limite, le sous-domaine Ingress ne peut pas être mis à disposition, l'équilibreur de charge d'application Ingress public pour cette zone ne peut pas être mis à disposition.

Pour afficher le nombre de sous-réseaux d'un VLAN :

  1. Dans la console d'infrastructure IBM Cloud classic, sélectionnez Network > IP Management > VLANs.
  2. Cliquez sur le Numéro de VLAN du VLAN que vous avez utilisé pour créer votre cluster. Examinez la section Sous-réseaux pour voir s'il existe 40 sous-réseaux ou plus.

Choisissez l'une des options suivantes pour résoudre le problème :

Option 1 : Commander un nouveau VLAN
Si vous avez besoin d'un nouveau VLAN, commandez-en un en contactant le support IBM Cloud. Ensuite, créez un cluster qui utilise ce nouveau VLAN.
Option 2 : utiliser l'extension de VLAN avec un VLAN disponible
Si vous avez un autre VLAN disponible, vous pouvez configurer le Spanning VLAN dans votre cluster existant. Vous pouvez ensuite ajouter de nouveaux noeuds worker au cluster qui utilise l'autre VLAN avec les sous-réseaux disponibles. Pour vérifier si la fonction VLAN Spanning est déjà activée, utilisez la commandeibmcloud ks vlan spanning get --region REGION.
Option 3 : Réutiliser les sous-réseaux existants sur le VLAN
Si vous n'utilisez pas tous les sous-réseaux du VLAN, vous pouvez réutiliser des sous-réseaux sur le VLAN en les ajoutant au cluster.

Complétez les étapes suivantes après avoir choisi une option.

  1. Vérifie que le sous-réseau que vous voulez utiliser est disponible.

    Le compte d'infrastructure que vous utilisez peut être partagé entre plusieurs comptes IBM Cloud. Dans ce cas, même si vous exécutez la commande ibmcloud ks subnets pour voir les sous-réseaux avec les clusters liés (Bound Clusters), vous ne pourrez voir que les informations concernant vos clusters. Vérifiez avec le propriétaire du compte d'infrastructure que les sous-réseaux sont disponibles et qu'ils ne sont pas utilisés par un autre compte ou une autre équipe.

  2. Utilisez la commande ibmcloud ks cluster subnet add pour faire en sorte qu'un sous-réseau existant soit disponible pour votre cluster.

  3. Vérifiez que le sous-réseau a bien été créé et ajouté à votre cluster. Le CIDR du sous-réseau est répertorié dans la section Subnet VLANs.

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

    Dans cet exemple de sortie, un deuxième sous-réseau a été ajouté au VLAN public 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. Vérifiez que les adresses IP portables issues du sous-réseau que vous avez ajouté soient utilisées pour les équilibreurs de charge d'application dans votre cluster. Il peut s'écouler quelques minutes avant que les services puissent utiliser les adresses IP portables du nouveau sous-réseau.

    • Aucun sous-domaine Ingress : exécutez ibmcloud ks cluster get --cluster CLUSTER pour vérifier que le sous-domaine Ingress est renseigné.
    • Un ALB ne se déploie pas dans une zone : exécutez ibmcloud ks ingress alb ls --cluster CLUSTER pour vérifier que l'ALB manquant est déployé.