3

是否可以列出 kubernetes 集群上使用的 kubernetes CNI 和 pod-network-cidr 详细信息?最好使用kubectl.

4

3 回答 3

2

除了上一个答案,您还可以使用:

kubectl get nodes -o jsonpath='{.items[*].spec.podCIDR}' 

获取集群中每个节点的 pod CIDR 地址。

于 2021-08-18T13:32:53.313 回答
1

我创建了一个社区 wiki 答案来总结该主题。

至于已安装的 CNI 插件列表,您可以按照以下主题进行操作:

如果您列出 kube-system 命名空间中的 pod,您可以看到这些 pod。pod 的名称将以 weave-net-xxxxx 开头。由于它是 Deamonset 对象,因此 pod 的计数将基于您的 k8s 节点。实际上会为一个节点创建一个 pod。

kubectl get pods -n kube-system

和评论:

除了这个答案,您还可以通过运行命令检查您拥有的答案 ls /etc/cni/net.d。它将显示您的 cni 的配置文件。

那里解释的例子是 for weave CNI,因为那是 OP 所要求的。在您的情况下,Pod 的名称可以不同,但​​获取有关它们的信息的方法是相同的。

至于问题的第二部分,用户Jakub Siemaszko写了一个很好的答案。此命令实际上将返回集群中每个节点的 pod CIDR 地址。如果您正在寻找有关此主题的其他信息,请关注此文档

于 2021-09-02T09:24:06.257 回答
0

如果您在 kube-system 命名空间中列出 pod,则可以看到这些 pod。pod 的名称将以 weave-net-xxxxx 开头。由于它是 Deamonset 对象,因此 pod 的计数将基于您的 k8s 节点。实际上会为一个节点创建一个 pod。除此之外,您还可以通过运行命令 ls /etc/cni/net.d 检查您拥有哪一个。它将显示您的 cni 的配置文件。

kubectl get pods -n kube-system
于 2021-08-17T11:03:39.123 回答