您可以使用 ncp/ip_range 註解,來指定 StatefulSet 的 IP 位址範圍。NCP 會根據命名空間的子網路,將該範圍中的持續性 IP 位址配置給 StatefulSet 中的網繭。

僅在原則模式下支援此功能。若要啟用此功能,請在 ncp.ini[K8s] 區段中,將 statefulset_ip_range 設定為 True。預設值為 False。設定為 True 後,不得將其設定回 False

以下是指定 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:
      ...
當 NCP 檢查 IP 範圍或配置該範圍中的位址時,如果發生錯誤,則會使用 ncp/error.ip_range:<error> 為 StatefulSet 加上註解。可能的錯誤如下:
  • INVALID_IP_RANGE - 該 IP 範圍不在命名空間的任何子網路中,該 IP 範圍位於多個子網路中,或者現有網繭已使用該範圍中的 IP 位址。
  • IP_RANGE_EXHAUSTED - NCP 無法配置該範圍中的 IP 位址,因為所有位址都已配置。