是否可以列出 kubernetes 集群上使用的 kubernetes CNI 和 pod-network-cidr 详细信息?最好使用kubectl
.
3 回答
除了上一个答案,您还可以使用:
kubectl get nodes -o jsonpath='{.items[*].spec.podCIDR}'
获取集群中每个节点的 pod CIDR 地址。
我创建了一个社区 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 地址。如果您正在寻找有关此主题的其他信息,请关注此文档。
如果您在 kube-system 命名空间中列出 pod,则可以看到这些 pod。pod 的名称将以 weave-net-xxxxx 开头。由于它是 Deamonset 对象,因此 pod 的计数将基于您的 k8s 节点。实际上会为一个节点创建一个 pod。除此之外,您还可以通过运行命令 ls /etc/cni/net.d 检查您拥有哪一个。它将显示您的 cni 的配置文件。
kubectl get pods -n kube-system