Windows 2016 kubectl.exe:无法建立连接,因为目标计算机主动拒绝了它

时间:2019-02-25 16:28:32

标签: docker kubernetes

我已经开始在Windows Server 2016中使用docker学习kubernetes。我已经在本地计算机上成功使用minikube进行了测试。但是这次我想通过docker启动它。但不幸的是,它失败并出现以下错误:

PS C:\WINDOWS\system32> install-kubectl.ps1 -Downloadlocation $HOME/.kube
==>Getting download link from  https://kubernetes.io/docs/tasks/tools/install-kub
ectl/
==>analyzing Downloadlink
==>starting Download from https://storage.googleapis.com/kubernetes-release/relea
se/v1.13.0/bin/windows/amd64/kubectl.exe using Bitstransfer
==>starting 'C:\Users\Siva_Sankara_Rao_Bac\.kube\kubectl.exe version'
Client Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.0", GitComm
it:"ddf47ac13c1a9483ea035a79cd7c10005ff21a6d", GitTreeState:"clean", BuildDate:"2
018-12-03T21:04:45Z", GoVersion:"go1.11.2", Compiler:"gc", Platform:"windows/amd6
4"}
kubectl.exe : Unable to connect to the server: dial tcp [::1]:8080: connectex: 
No connection could be made because the target machine actively refused it.
At C:\Users\Siva_Sankara_Rao_Bac\Documents\WindowsPowerShell\Scripts\install-kub
ectl.ps1:47 char:1
+ .$Downloadfile version
+ ~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (Unable to conne...ely refused it.: 
   String) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError

我试图弄清楚它,但是我的知识甚至无法从google获得。尝试了不同网站中指示的许多方法。但没有运气。

1 个答案:

答案 0 :(得分:0)

  

kubectl.exe:无法连接到服务器:拨打tcp [:: 1]:8080:   connectex:由于目标计算机无法建立连接   积极拒绝。

之所以会看到此错误,是因为在运行kubectl version时,它将首先显示客户端版本(kubectl二进制文件),然后显示Kubernetes集群的版本。它尝试使用.kube/config中的当前上下文连接到群集。

您似乎没有群集,或者您没有在$HOME/.kube/config

中对其进行配置

在没有正确配置的情况下,kubectl使用诸如localhost:8080之类的默认值,并且显然kube-apiserver上没有运行IPaddress:port,因此kubectl无法获得Kubernetes集群版本并显示连接错误消息。

如果使用 minikube 后激活了台式机集群,则可能需要在docker图标上下文菜单中切换kubectl上下文。

最重要的kubectl或在计算机上的安装都没有问题。要解决此问题,您需要创建一个集群并将正确的连接配置放入kubectl配置文件中。