Vous pouvez spécifier une plage d'adresses IP pour un StatefulSet avec l'annotation ncp/ip_range. NCP alloue des adresses IP persistantes de la plage aux espaces du StatefulSet en fonction des sous-réseaux de l'espace de noms.

Remarque : si vous exécutez avec NSX-T 3.1.x, les espaces StatefulSet en mode IPv6 ne sont pas pris en charge.

Exemple de spécification de l'annotation ncp/ip_range :
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: web
spec:
  selector:
    matchLabels:
      app: nginx # has to match .spec.template.metadata.labels
  serviceName: "nginx"
  replicas: 3 # by default is 1
  template:
    metadata:
      labels:
        app: nginx # has to match .spec.selector.matchLabels
      annotations:
        ncp/ip_range: 192.168.0.10-192.168.0.50
    spec:
      ...
Si une erreur se produit lorsque NCP vérifie la plage d'adresses IP ou alloue une adresse à partir de la plage, le StatefulSet sera annoté avec ncp/error.ip_range:<error>. Les erreurs possibles sont :
  • INVALID_IP_RANGE : la plage d'adresses IP ne se trouve pas dans l'un des sous-réseaux des espaces de noms, elle se trouve dans plusieurs sous-réseaux ou un espace existant utilise déjà une adresse IP dans la plage.
  • IP_RANGE_EXHAUSTED : ncp ne peut pas allouer une adresse IP à partir de la plage, car toutes les adresses ont été allouées.