kubectl端口转发失败

dmm*_*dmm 5 kubernetes

我在裸机RHEL7上运行k8s集群。我正在尝试运行kubectl port-forward命令,但出现错误。

kubectl port-forward -p somepod 10000:8080
I0128 15:33:33.802226   70558 portforward.go:225] Forwarding from 127.0.0.1:10000 -> 8080                                                        
E0128 15:33:33.802334   70558 portforward.go:214] Unable to create listener: Error listen tcp6 [::1]:10000: bind: cannot assign requested address
Run Code Online (Sandbox Code Playgroud)

任何想法为什么会发生这种情况?

GNU*_*ton 1

如果您多次运行 kubectl port-forward,并且您的计算机上启用了 ipv6,那么您将经常运行它。

有两种解决方案:

  1. 运行netstat -nlp | grep 10000以了解使用该端口的进程的 PID。然后你可以用kill -9 PID_OF_PROCESS杀死它
  2. 永久解决方案:禁用 ipv6

    echo "
    net.ipv6.conf.all.disable_ipv6=1
    net.ipv6.conf.default.disable_ipv6=1
    net.ipv6.conf.lo.disable_ipv6=1
    " | sudo tee -a /etc/sysctl.conf 重新启动”