如何修复 kube-proxy 未知代理模式 " " ,假设 iptables 代理问题?



我是K8s的新手,正在努力解决kube代理的一些问题。我有一个需要公开部署的服务。一切看起来都是正确的,但它并没有暴露它。我在kube代理日志中发现了这个问题。

Unknown proxy mode "", assuming iptables proxy

命令iptables save | grep hostnames 没有输出

我认为将--proxy-mode添加到kube代理清单中可以解决我的问题,但找不到它。

我还尝试用以下命令检查配置文件:

ps -ef | grep kube-proxy

输出:

root      1423 24476  0 12:12 pts/0    00:00:00 grep --color=auto kube-proxy
root      8424  8392  0 11:45 ?        00:00:00 /usr/local/bin/kube-proxy --config=/var/lib/kube-proxy/config.conf --hostname-override=
ip-10-0-0-100.us-west-2.compute.internal
root@ip-10-0-0-100:~# find /var/lib/kube-proxy/config.conf
find: ‘/var/lib/kube-proxy/config.conf’: No such file or directory
root@ip-10-0-0-100:~# find  /usr/local/bin/kube-proxy
find: ‘/usr/local/bin/kube-proxy’: No such file or directory

任何能帮我找到路的线索都将不胜感激。谢谢

其中一个原因可能是出于多种原因没有安装网络插件。

在我的情况下,当我收到以下错误时,我想检查是否安装了CNI插件。

Unknown proxy mode "", assuming iptables proxy
  • 使用以下命令检查已安装的CNI插件,

    $ ls /etc/cni/net.d
    
  • 假设它是一个weave-net。然后,我们必须查找使用k get all -n kube-system为该插件创建的对象。就我而言,我没有找到任何为编织网创建的对象。因此,我刚刚安装了以下命令编织,

    $ kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d 'n')"
    

还有一件事需要记住,

/var/lib/kube-proxy/config.confkube代理pod内部的安装位置。查看名为kube proxy的ConfigMap的详细信息。

kubectl describe configmap kube-proxy -n kube-system

相关内容

  • 没有找到相关文章

最新更新