gpt4 book ai didi

Kubernetes kube-proxy 正在运行但找不到指定的 kubeconfig 文件

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

我想设置 k8s kube-proxy 配置文件权限以进行加固。

我正在描述 kube-proxy 进程如何在 --config 标志设置为路径(var/lib/kube- proxy/config.conf) 找不到...

事实上检查 kube-proxy 过程给出了这个:

[centos@cpu-node0 ~]$ ps -ef | grep kube-proxy
root 20890 20872 0 Oct20 ? 00:19:23 /usr/local/bin/kube-proxy --config=/var/lib/kube-proxy/config.conf --hostname-override=cpu-node0
centos 55623 51112 0 14:44 pts/0 00:00:00 grep --color=auto kube-proxy

但是文件 /var/lib/kube-proxy/config.conf 不存在:

[centos@cpu-node0 ~]$ ll /var/lib/kube-proxy/config.conf
ls: cannot access /var/lib/kube-proxy/config.conf: No such file or directory

为什么?

最佳答案

我的设置也有问题 ( 1.19)

[root@project1kubemaster ~]# kubectl version --short
Client Version: v1.19.3
Server Version: v1.19.3

[root@project1kubemaster ~]# ps -ef | grep kube-proxy
root 2103 2046 0 11:30 ? 00:00:00 /usr/local/bin/kube-proxy --config=/var/lib/kube-proxy/config.conf --hostname-override=project1kubemaster

[root@project1kubemaster ~]# ll /var/lib/kube-proxy/config.conf
ls: cannot access /var/lib/kube-proxy/config.conf: No such file or directory

一件更有趣的事情是“kube-proxy”也没有找到:

[root@project1kubemaster ~]# ls /usr/local/bin/kube-proxy
ls: cannot access /usr/local/bin/kube-proxy: No such file or directory

上面让我意识到 kube-proxy 二进制文件正在该节点的 kubeproxy 容器中运行

[root@project1kubemaster ~]# kubectl get pods -n kube-system -o wide | grep proxy
kube-proxy-ffbqr 1/1 Running 0 27m <IP> project1kubeworker2 <none> <none>
kube-proxy-r9pz9 1/1 Running 0 29m <IP> project1kubemaster <none> <none>
kube-proxy-zcrtw 1/1 Running 0 27m <IP> project1kubeworker1 <none> <none>

[root@project1kubemaster ~]# kubectl exec -it kube-proxy-r9pz9 -n kube-system -- /bin/sh
#
#
# find / -name config.conf
/var/lib/kube-proxy/..2020_11_02_16_30_32.787002112/config.conf
/var/lib/kube-proxy/config.conf

简而言之,kube-proxy 二进制文件和配置文件似乎在该节点的 kube-proxy pod 内,并且它们在该 pod 内运行。它可能显示主机的 ps -ef 输出的原因之一可能是该 pod 正在使用主机的 Pid namespace 。我们还可以看到 kube-proxy 进程的父 pid 只不过是相应容器的 containerd。

[root@project1kubemaster ~]# ps -ef | grep 2046
root 2046 16904 0 11:30 ? 00:00:00 containerd-shim -namespace moby -workdir /var/lib/containerd/io.containerd.runtime.v1.linux/moby/c3e9bf6ecdcdd0f56d0c76711cea4cadd023cd6ef82bf8312311248a7b0501a4 -address /run/containerd/containerd.sock -containerd-binary /usr/bin/containerd -runtime-root /var/run/docker/runtime-runc
root 2103 2046 0 11:30 ? 00:00:00 /usr/local/bin/kube-proxy --config=/var/lib/kube-proxy/config.conf --hostname-override=project1kubemaster

关于Kubernetes kube-proxy 正在运行但找不到指定的 kubeconfig 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64648243/

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