更新时间:2021-10-15 GMT+08:00
分享

Workload固定IP

Kube-OVN支持通过annotation的“ovn.kubernetes.io/ip_pool”字段给Workload(Deployment / StatefulSet / DaemonSet / Job / CronJob)设置固定IP。Workload下的Pod会自动选择annotation中“ovn.kubernetes.io/ip_pool”字段指定的IP并保证不会冲突。

示例:

vim Deployment.yaml
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
apiVersion: apps/v1
kind: Deployment
metadata:
  namespace: product
  name: starter-backend
  labels:
    app: starter-backend
spec:
  replicas: 2
  selector:
    matchLabels:
      app: starter-backend
  template:
    metadata:
      labels:
        app: starter-backend
      annotations:
        ovn.kubernetes.io/ip_pool: 10.16.0.15,10.16.0.16,10.16.0.17
    spec:
      containers:
      - name: backend
        image: nginx:alpine
kubectl create -f Deployment.yaml

使用annotation定义Workload固定IP时需要注意以下几点:

  • IP必须在所属子网的CIDR内。
  • 所使用的IP不能和已有的IP冲突。
  • IP数量小于replicas数量时,多出的Pod将无法创建,需要根据Workload的更新策略以及扩容规划调整ovn.kubernetes.io/ip_pool中的IP数量。
分享:

    相关文档

    相关产品

close