如何检查我的集群中使用了哪个 pod 网络插件?

如何检查我的集群中使用了哪个 pod 网络插件?

有很多集群网络在 Kubernetes 中。

我如何检查kubeadmkubectl的集群中使用了哪些网络(flannel、calico 等)?

背景:我在一些虚拟机上玩 K8s。

答案1

ls /etc/cni/net.d显示您已安装和配置的 CNI 插件。

答案2

CNI 配置位于 下/etc/cni/net.d。但是 下可以找到许多插件配置/etc/cni/net.d,因此这取决于文件的权重。将应用具有最高权重(名称)的插件文件。

例如:在这种情况下将选择文件 20-*。

10-weave.conflist
20-weave.conflist

插件配置文件的名称和类型字段指定从文件夹中应用哪个插件/opt/cni/bin/

sudo cat /etc/cni/net.d/20-weave.conflist
{
    "cniVersion": "0.3.0",
    "name": "weave",
    "plugins": [
        {
            "name": "weave",
            "type": "weave-net",
            "hairpinMode": true
        },
        {
            "type": "portmap",
            "capabilities": {"portMappings": true},
            "snat": true
        }
    ]
}

使用以下命令验证创建的 pod: kubectl get pods -n kube-system

weave-net-cc6np                    2/2     Running   6 (30m ago)   17d
weave-net-mkvzd                    2/2     Running   5 (33m ago)   17d

相关内容