Kubernetes 如何找出库伯内特斯的calico CNI分配给每个节点的podcidr
使用calico CNI时,是否有直接命令获取分配给每个节点的podcidr 我正在寻找准确的网络和网络掩码分配给每个节点。我无法通过Kubernetes 如何找出库伯内特斯的calico CNI分配给每个节点的podcidr,kubernetes,kubernetes-pod,project-calico,calico,cni,Kubernetes,Kubernetes Pod,Project Calico,Calico,Cni,使用calico CNI时,是否有直接命令获取分配给每个节点的podcidr 我正在寻找准确的网络和网络掩码分配给每个节点。我无法通过podCIDR value或projectcalico.org/IPv4VXLANTunnelAddr注释从kubectl get nodes获取它。此外,根据calico使用的VXLAN或IPIP隧道,注释也会有所不同 试图通过podCIDR密钥从节点获取。获得以下输出。这不是分配给节点的网络 kubectl get nodes -oyaml | grep -i
podCIDR value
或projectcalico.org/IPv4VXLANTunnelAddr
注释从kubectl get nodes
获取它。此外,根据calico使用的VXLAN或IPIP隧道,注释也会有所不同
试图通过podCIDR密钥从节点获取。获得以下输出。这不是分配给节点的网络
kubectl get nodes -oyaml | grep -i podcidr -B 1
spec:
podCIDR: 192.168.0.0/24
podCIDRs:
--
spec:
podCIDR: 192.168.2.0/24
podCIDRs:
试图通过印花布批注获取它。无法找到网络,但网络掩码丢失
kubectl get nodes -oyaml | grep -i ipv4vxlan
projectcalico.org/IPv4VXLANTunnelAddr: 192.168.33.64
projectcalico.org/IPv4VXLANTunnelAddr: 192.168.253.192
试图通过印花棉布吊舱取。从印花布日志中找到准确的网络和网络掩码,即192.168.33.64/26
kubectl logs calico-node-h2s9w -n calico-system | grep cidr
2020-12-14 06:54:50.783 [INFO][18] tunnel-ip-allocator/ipam.go 140:
Attempting to load block cidr=192.168.33.64/26 host="calico-master"
但我想避免查看每个节点上的印花棉布吊舱日志。
是否有更好的方法通过单个命令查找分配给每个节点的podcidr。您可以使用
etcdctl
了解分配给每个节点的子网块的详细信息
ETCDCTL_API=3 etcdctl ls /calico/ipam/v2/host/node1/ipv4/block/
上面的节点node1
示例将给出如下内容作为输出
/calico/ipam/v2/host/node1/ipv4/block/192.168.228.192-26
看起来calico添加了一个名为ipamblocks的文件,其中包含分配给每个群集节点的podcidr
自定义资源本身的名称包含节点的podcidr
kubectl get ipamblocks.crd.projectcalico.org
NAME AGE
10-42-123-0-26 89d
10-42-187-192-26 89d
获取确切podcidr和nodeip的命令:
kubectl get ipamblocks.crd.projectcalico.org -o jsonpath="{range .items[*]}{'podNetwork: '}{.spec.cidr}{'\t NodeIP: '}{.spec.affinity}{'\n'}"
podNetwork:10.42.123.0/26节点IP:host:
podNetwork:10.42.187.192/26节点IP:主机:
谢谢。但是我从那个印花布命令行得到了以下信息<代码>calicoctl获取ippools名称CIDR选择器默认值-ipv4-ippool 192.168.0.0/16 all()我没有将cidr分配给集群的每个节点。谢谢。这也可以通过对kube apiserver的任何api调用获取吗?据我所知,这是不可能的
podNetwork: 10.42.123.0/26 NodeIP: host:<node1-ip>
podNetwork: 10.42.187.192/26 NodeIP: host:<node2-ip>