我正试图从本地在远程服务器上运行kubectl命令,但似乎它正试图在本地主机上运行,而我可以在远程上运行所有其他命令(ls,date(。
command = 'kubectl get pod -n namespace'
stdin,stdout,stderr=ssh.exec_command(command)
错误:
The connection to the server localhost:8080 was refused - did you specify the right host or port?
知道如何在远程运行kubectl以连接到pod并在pod内运行一些命令吗?
检查ssh连接是否为非root用户,当您尝试以非root用户身份执行kubectl命令时会出现此错误。
解决方案:
- 添加sudo作为命令的前缀。这将解决当前用户本身的问题
- 与root用户建立ssh连接