Tous les produits
Search
Centre de documentation

Elastic Container Instance:Spécifier une adresse IP privée pour un pod

Dernière mise à jour :Aug 11, 2026

Dans certains scénarios métier, les pods workers doivent utiliser une adresse IP fixe. Cette rubrique explique comment spécifier une adresse IP privée pour un pod basé sur Elastic Container Instance lors de sa création.

Description de la fonctionnalité

Par défaut, le système attribue aléatoirement une adresse IP privée à un pod basé sur Elastic Container Instance à partir du bloc CIDR du vSwitch que vous avez spécifié dans le profil eci (eci-profile) lors de la création du pod. Dans certains scénarios métier, il peut être nécessaire de spécifier les adresses IP privées des pods. Par exemple, si vous souhaitez migrer un service, vous pouvez attribuer l'adresse IP de l'ancien pod au nouveau pod après avoir supprimé l'ancien. Cela garantit la continuité du service.

Remarque

Pour plus d'informations sur la configuration des vSwitches pour les clusters ou les pods, consultez la rubrique Créer des pods dans plusieurs zones.

Limites

Les adresses IP privées que vous spécifiez pour les pods doivent être des adresses IPv4.

Description de la configuration

Vous pouvez ajouter l'annotation k8s.aliyun.com/eci-private-ip-address aux métadonnées d'un pod afin de lui spécifier une adresse IP privée. Tenez compte des points suivants :

  • L'adresse IP spécifiée doit appartenir au bloc CIDR du vSwitch indiqué dans le paramètre vSwitchIds du profil eci. Assurez-vous que cette adresse IP est disponible.

  • Il n'est pas possible de spécifier plusieurs adresses IP. Si vous ajoutez l'annotation lors de la création d'une ressource telle qu'un Deployment, vous ne pouvez configurer qu'un seul réplica pour le pod. Si vous configurez plusieurs réplicas, un seul pod sera créé. Les autres pods échoueront car ils ne pourront pas recevoir d'adresse IP.

Exemple de configuration

  1. Spécifiez une adresse IP privée pour créer un pod.

    kubectl create -f private-ip-test.yaml

    Contenu exemple du fichier private-ip-test.yaml :

    apiVersion: v1
    kind: Pod
    metadata:
      name: private-ip-test
      labels:
        alibabacloud.com/eci: "true"
      annotations:
        k8s.aliyun.com/eci-private-ip-address: "172.16.0.11"    # Specify a private IP address for the pod.
    spec:
      containers:
      - image: registry-vpc.cn-beijing.aliyuncs.com/eci_open/nginx:1.14.2
        name: test-container
  2. Vérifiez l'adresse IP privée du pod.

    kubectl get pod private-ip-test -o wide

    La figure suivante illustre un exemple de sortie. Le système a attribué l'adresse IP privée spécifiée au pod.

    :~$ kubectl get pod private-ip-test -o wide
    NAME              READY   STATUS    RESTARTS   AGE    IP            NODE                          NOMINATED NODE   READINESS GATES
    private-ip-test   1/1     Running   0          3m41s  172.16.0.11   virtual-kubelet-cn-beijing-h   <none>           <none>