码迷,mamicode.com
首页 > 其他好文 > 详细

Calico 3.5:根据节点标签分配 IP

时间:2021-06-24 17:43:39      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:图片   ada   nat   tor   run   net   cal   log   sele   

需求: node1 node2 的 pod 都分配一个网段,  node3 node4 的 pod 都分配一个网段

技术图片
      -------------------
       |    router       |
       -------------------
       |                 |
---------------   ---------------
| rack-0      |   | rack-1      |
---------------   ---------------
| kube-node-1 |   | kube-node-3 |
- - - - - - - -   - - - - - - - -
| kube-node-2 |   | kube-node-4 |
- - - - - - - -   - - - - - - - -
技术图片

 

使用pod 10.20.0.0/16,我们的目标以下设置:保留10.20.1.0/2410.20.2.0/24池的rack-0rack-1

 

通过calicoctl 命令 查看默认CIDR池, 并且删除

技术图片

 

 

 1. 删除默认IP池

calicoctl delete ippools default-ipv4-ippool

 

2. 对node节点打标记

技术图片
设置label

kubectl label node node1  rack=0
kubectl label node node2  rack=0
kubectl label node node3  rack=1
kubectl label node node3  rack=1
技术图片

 

3. 为每个机架设置IP池

技术图片
calicoctl create -f -<<EOF
apiVersion: projectcalico.org/v3
kind: IPPool
metadata:
  name: rack-0-ippool
spec:
  cidr: 10.20.1.0/24
  ipipMode: Always
  natOutgoing: true
  nodeSelector: rack == "0"
EOF
技术图片

 

技术图片
calicoctl create -f -<<EOF
apiVersion: projectcalico.org/v3
kind: IPPool
metadata:
  name: rack-1-ippool
spec:
  cidr: 10.20.2.0/24
  ipipMode: Always
  natOutgoing: true
  nodeSelector: rack == "1"
EOF
技术图片

 

应该有两个启用的IP池,运行时可以看到它们

calicoctl get ippool -o wide
NAME                  CIDR             NAT    IPIPMODE   DISABLED   SELECTOR
rack-0-ippool         10.20.1.0/24   true   Always     false      rack == "0"
rack-1-ippool         10.20.2.0/24   true   Always     false      rack == "1"

 

4. 验证

技术图片
kubect get pod

NAME                   READY   STATUS    RESTARTS   AGE    IP             NODE          NOMINATED NODE   READINESS GATES
nginx-5c7588df-prx4z   1/1     Running   0          6m3s   10.20.1.64     node1   <none>           <none>
nginx-5c7588df-s7qw6   1/1     Running   0          6m7s   10.20.1.129    node2   <none>           <none>
nginx-5c7588df-w7r7g   1/1     Running   0          6m3s   10.20.2.55     node3   <none>           <none>
nginx-5c7588df-62lnf   1/1     Running   0          6m3s   10.20.2.56     node4   <none>           <none>
技术图片

 

 

https://docs.projectcalico.org/networking/assign-ip-addresses-topology

Calico 3.5:根据节点标签分配 IP

标签:图片   ada   nat   tor   run   net   cal   log   sele   

原文地址:https://www.cnblogs.com/dream397/p/14924394.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!