gpt4 book ai didi

kubernetes - 如何找出kubernetes中calico CNI分配给每个节点的podcidr

转载 作者:行者123 更新时间:2023-12-03 08:30:25 28 4
gpt4 key购买 nike

使用 calico CNI 时是否有直接命令来获取分配给每个节点的 podcidr。

我正在寻找分配给每个节点的确切网络和网络掩码。我无法通过 podCIDR value 或通过 projectcalico.org/IPv4VXLANTunnelAddr 注释从 kubectl getnodes 获取它。看起来注释也会根据 calico 使用的 VXLAN 或 IPIP 隧道而有所不同。

尝试通过 podCIDR key 从节点获取。得到以下输出。这不是分配给节点的网络。

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:

尝试通过 calico 注释获取它。能够找到网络,但网络掩码丢失。

kubectl get nodes -oyaml | grep -i ipv4vxlan
projectcalico.org/IPv4VXLANTunnelAddr: 192.168.33.64
projectcalico.org/IPv4VXLANTunnelAddr: 192.168.253.192

尝试通过 calico pod 获取它。从 calico 日志中找到了确切的网络和网络掩码,即 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"

但我想避免查看每个节点上的 calico pod 日志。有没有更好的方法可以通过单个命令找到分配给每个节点的 podcidr。

最佳答案

您可以使用etcdctl了解分配给每个节点的子网 block 的详细信息。

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

关于kubernetes - 如何找出kubernetes中calico CNI分配给每个节点的podcidr,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65301771/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com