与版本 1.2.0 +1 有相同的问题
@xificurC @jankoprowski你检查过 apiserver 是否正在运行吗?
请查看我们的故障排除指南:
http://kubernetes.io/docs/troubleshooting/
如果您仍然需要帮助,请在 stackoverflow 上提问。
apiserver 失败:
F0421 14:28:55.140493 1 server.go:410] 无效的身份验证配置:打开 /srv/kubernetes/basic_auth.csv:没有这样的文件或目录
我也遇到了这个问题,我的 apiserver 没有失败,所有进程(apiserver、controller-manager、schdeuler、kublet 和 kube-proxy)都正常运行。 我的 docker 版本是 1.11.2,如果有人知道如何解决这个问题?
我也遇到过这个问题。 由于需要使用Kubernetes1.2.2,所以我使用docker来部署kubernetes。 发生同样的问题。 apiserver 已关闭。 日志在这里,
I0725 08:56:20.440089 1 genericapiserver.go:82] Adding storage destination for group batch
W0725 08:56:20.440127 1 server.go:383] No RSA key provided, service account token authentication disabled
F0725 08:56:20.440148 1 server.go:410] Invalid Authentication Config: open /srv/kubernetes/basic_auth.csv: no such file or directory
apiserver 失败,我无法部署 Kubernetes。 有人知道吗?
尝试使用 --server 指定您的主服务器:
kubectl --server=16.187.189.90:8080 获取 pod -o 宽
您好,我在 Centos 7 上收到以下错误,如何解决这个问题?
[root@ip-172-31-11-12 system]# kubectl get nodes
The connection to the server localhost:8080 was refused - did you specify the right host or port?
您可以使用“kubectl config”解决此问题:
$ kubectl config set-cluster demo-cluster --server=http://master.example.com:8080
$ kubectl config set-context demo-system --cluster=demo-cluster
$ kubectl config use-context demo-system
$ kubectl get nodes
NAME STATUS AGE
master.example.com Ready 3h
node1.example.com Ready 2h
node2.example.com Ready 2h
就我而言,我只需要删除上次尝试留下的~/.kube/config
即可。
你好,
我仍然遇到了这个问题
kubernetes-master-1.4.0-0.1.git87d9d8d.el7.x86_64
kubernetes-node-1.4.0-0.1.git87d9d8d.el7.x86_64
kubernetes-unit-test-1.4.0-0.1.git87d9d8d.el7.x86_64
kubernetes-ansible-0.6.0-0.1.gitd65ebd5.el7.noarch
kubernetes-client-1.4.0-0.1.git87d9d8d.el7.x86_64
kubernetes-1.4.0-0.1.git87d9d8d.el7.x86_64
如果我使用以下值配置 KUBE_API_ADDRESS
KUBE_API_ADDRESS="--insecure-bind-address=10.10.10.xx"
我遇到了这个错误,如果我将选项“--server=10.10.10.xx:8080”传递给cmd,它就可以工作
如果我使用以下值配置 KUBE_API_ADDRESS
KUBE_API_ADDRESS="--insecure-bind-address=0.0.0.0"
它运作良好。
我试图使用 ansible 从远程系统获取状态,但我遇到了同样的问题。
我试过了,它奏效了。
kubectl --kubeconfig ./admin.conf 获取 pods --all-namespaces -o wide
与@sumitkau类似,我解决了设置新 kubelet 配置位置的问题:
kubectl --kubeconfig /etc/kubernetes/admin.conf 没有
也可以把/etc/kubernetes/admin.conf 复制到~/.kube/config 下也行,就是不知道好不好用!
更新 /etc/kubernetes/apiserver 中的条目(在主服务器上)
KUBE_API_PORT="--port=8080"
然后执行 systemctl restart kube-apiserver
如果在 GCP 中发生这种情况,以下最有可能解决该问题:
gcloud container clusters get-credentials your-cluster --zone your-zone --project your-project
感谢@mamirkhani。 我解决了这个错误。
但是我刚刚在“kubeadm init”输出中找到了这样的信息:
_你的 Kubernetes master 已经初始化成功!
要开始使用您的集群,您需要运行(作为普通用户):
sudo cp /etc/kubernetes/admin.conf $HOME/
sudo chown $(id -u):$(id -g) $HOME/admin.conf
导出 KUBECONFIG=$HOME/admin.conf_
我认为这是推荐的解决方案。
我有同样的问题。 当通过谷歌云中的 web gui 创建集群并尝试运行 kubectl 我得到
The connection to the server localhost:8080 was refused - did you specify the right host or port?
您所要做的就是为您的集群获取 kubectl 配置,该配置将存储在 $HOME/.kubectl/config 中:
$ gcloud container clusters get-credentials guestbook2
Fetching cluster endpoint and auth data.
kubeconfig entry generated for guestbook2.
现在 kubectl 工作得很好
kubectl 期望 ~/.kube/config 作为其配置的文件名。
对我有用的快速修复是创建一个符号链接:
ln -s ~/.kube/config.conjure-canonical-kubern-e82 ~/.kube/config
注意这是一个“conjure-up kubernetes”部署。
这个问题让我困惑了 1 周,现在它似乎对我有用。 如果你有这个问题,首先你需要知道它发生在哪个节点上。
如果是主节点,则通过命令确保所有 Kubernetes pod 都在运行
kubectl get pods --all-namespaces
,
我的看起来像这样kube-system etcd-kubernetes-master01 1/1 Running 2 6d
kube-system kube-apiserver-kubernetes-master01 1/1 Running 3 6d
kube-system kube-controller-manager-kubernetes-master01 1/1 Running 2 6d
kube-system kube-dns-2425271678-3kkl1 3/3 Running 6 6d
kube-system kube-flannel-ds-brw34 2/2 Running 6 6d
kube-system kube-flannel-ds-psxc8 2/2 Running 7 6d
kube-system kube-proxy-45n1h 1/1 Running 2 6d
kube-system kube-proxy-fsn6f 1/1 Running 2 6d
kube-system kube-scheduler-kubernetes-master01 1/1 Running 2 6d
如果没有,请验证您的 /etc/kubernetes/ 目录中是否有这些文件,
admin.conf controller-manager.conf kubelet.conf manifests pki scheduler.conf
,如果你这样做,然后用普通用户(不是ROOT用户)复制这些文件mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
然后查看 kubectl 版本是否有效,如果仍然无效,请按照https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/上的教程进行操作并拆除您的集群并重建您的掌握。
如果它发生在(从)节点上,请确保您有文件kubelet.conf manifests pki
在 /etc/kubernetes/ 目录中,在这个 kubelet.conf 中,server 字段应该指向你的主 IP,这与你的主节点 admin.conf 的设置相同,
如果你没有 kubelet.conf,那可能是因为你还没有运行命令来将你的节点与你的 master 连接起来
kubeadm join --token f34tverg45ytt34tt 192.168.1.170:6443
,您应该在构建主节点后获取此命令(令牌)。
在(从)节点上以普通用户身份登录后,您可能不会在 ~/.kube 中看到配置文件,然后创建此文件夹,然后将 _admin.conf_ 从主节点复制到您的 ~/.kube/ 目录中(从) 使用普通用户作为 _config_ 节点,然后进行复制并尝试 kubectl 版本,它适用于我。
虽然我知道这里可能有多种失败的原因,但在我的情况下,删除~/.kube/cache
会立即有所帮助。
我有这个问题。 这个解决方案对我有用:
sudo cp /etc/kubernetes/admin.conf $HOME/
sudo chown $(id -u):$(id -g) $HOME/admin.conf
export KUBECONFIG=$HOME/admin.conf
如果您没有admin.conf
,请安装kubeadm
然后删除~/.kube/cache
rm -rf ~/.kube/cache
您需要切换上下文。
kubectl config use-context docker-for-desktop
大家好,
我们需要安装 sap vora,因为 kubernetes 和 Docker 是先决条件。 我们已经安装了 kubernetes master 和 kubectl, docker 。 但是当我们检查时
kubectl 集群信息
2018-05-09 06:47:57.905806 proto:已注册的重复 proto 类型:google.protobuf.Any
2018-05-09 06:47:57.905997 proto:已注册的重复 proto 类型:google.protobuf.Duration
2018-05-09 06:47:57.906019 proto:已注册的重复 proto 类型:google.protobuf.Timestamp
与服务器 10.xxx:6443 的连接被拒绝 - 您是否指定了正确的主机或端口?
当我们检查 systemctl status kubelet -l
kubelet.service - Kubernetes Kubelet 服务器
已加载:已加载(/usr/lib/systemd/system/kubelet.service;已启用)
活动:自美国东部时间 2018 年 5 月 9 日星期三 04:17:21 以来失败(结果:开始限制); 2 小时 28 分钟前
文档: https ://github.com/GoogleCloudPlatform/kubernetes
进程:2513 ExecStart=/usr/bin/hyperkube kubelet $KUBE_LOGTOSTDERR $KUBE_LOG_LEVEL $KUBELET_API_SERVER $KUBELET_ADDRESS $KUBELET_PORT $KUBELET_HOSTNAME $KUBE_ALLOW_PRIV $KUBELET_INITIAL_ARGS $KUBELET_ARGS(代码=退出,状态=203/EXEC)
主 PID:2513(代码=已退出,状态=203/EXEC)
我们执行了以下设置
sudo cp /etc/kubernetes/admin.conf $HOME/
sudo chown $(id -u):$(id -g) $HOME/admin.conf
导出 KUBECONFIG=$HOME/admin.conf
但没有用。 谁能帮忙
问候
卡提克
我有这个问题。 这个解决方案对我有用:
导出 KUBECONFIG=/etc/kubernetes/admin.conf
嗨地图,
我导出了高于 env,但没有用。 得到同样的错误。
2018-05-15 04:27:32.221744 proto:已注册的重复 proto 类型:google.protobuf.Any
2018-05-15 04:27:32.221912 proto:已注册的重复 proto 类型:google.protobuf.Duration
2018-05-15 04:27:32.221936 proto:已注册的重复 proto 类型:google.protobuf.Timestamp
与服务器 10.xxx:6443 的连接被拒绝 - 您是否指定了正确的主机或端口
我还更改了 kubelet 服务和配置文件条目,仍然没有用。
问候
卡提克
嗨,卡蒂克,
也许您可以尝试查看有关 kubelet 服务的日志。
我得到了错误
[admin ~]$ kubectl cluster-info
Kubernetes master is running at https://xxxxx:6443
To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
The connection to the server xxxxx:6443 was refused - did you specify the right host or port?
[admin~]$ kubectl cluster-info dump
The connection to the server xxxx:6443 was refused - did you specify the right host or port?
使用kubectl get pods --all-namespaces
时出现相同的错误
您好,我在 Centos 7 上收到以下错误,如何解决这个问题?
[root@ip-172-31-11-12 system]# kubectl get nodes The connection to the server localhost:8080 was refused - did you specify the right host or port?
我想你还没有安装 kubeadm .... 先安装 kubeadm 然后尝试
好的会这样做
2018 年 9 月 17 日星期一 08:04,Karthik Nair [email protected]写道:
您好,我在 Centos 7 上收到以下错误,如何解决这个问题
问题?[ root@ip-172-31-11-12系统]# kubectl 获取节点
与服务器localhost:8080的连接被拒绝 - 您是否指定了正确的主机或端口?我想你还没有安装 kubeadm .... 先安装 kubeadm 然后
尝试—
您收到此消息是因为您订阅了此线程。
直接回复此邮件,在 GitHub 上查看
https://github.com/kubernetes/kubernetes/issues/23726#issuecomment-421909051 ,
或使线程静音
https://github.com/notifications/unsubscribe-auth/AkFH4U0Cwjeg2Y4sL8irk5velVQDj6u2ks5sub0lzgaJpZM4H9nxM
.>
亲切的问候,
比什努·苏努瓦尔
您必须先运行这些命令 -
[ user@k8s-master ~]# mkdir -p $HOME/.kube
[ user@k8s-master ~]# cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
[ user@k8s-master ~]# chown $(id -u):$(id -g) $HOME/.kube/config
在 Mac OS High Sierra 上运行,我通过在 Docker 本身中启用 Kubernetes 来解决这个问题。
我遇到的问题是“与服务器 10.0.48.115:6443 的连接被拒绝 - 您是否指定了正确的主机或端口?”
客户端版本:version.Info{Major:"1", Minor:"12", GitVersion:"v1.12.1", GitCommit:"4ed3216f3ec431b140b1d899130a69fc671678f4", GitTreeState:"clean", BuildDate:"2018-10-05T16:46: 06Z”,GoVersion:“go1.10.4”,编译器:“gc”,平台:“linux/amd64”}
与服务器 10.0.48.115:6443 的连接被拒绝 - 您是否指定了正确的主机或端口?
谁能提供帮助? 欣赏
从 ~/.kube 中删除旧配置,然后重新启动 docker(对于 macos)并重建配置文件夹。 现在,当我执行“kubectl get nodes”时,一切都很好。
删除minikube虚机及配置文件,重新安装minikube(v0.25.2),其他版本可能会有坑
$ minikube delete
$ rm -rf ~/.minikube
$ curl -Lo minikube https://storage.googleapis.com/minikube/releases/v0.25.2/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/
使用以下命令。 它对我有用。
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
使用以下命令。 它对我有用。
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
谢谢! 这行得通!
在我的情况下,我已经重启了kubernetes的主节点,并且在重启时,内存交换的SWAP分区默认启用
systemctl status kubelet
kubelet.service - kubelet: The Kubernetes Node Agent
Loaded: loaded (/etc/systemd/system/kubelet.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/kubelet.service.d
└─10-kubeadm.conf, 90-local-extras.conf
Active: activating (auto-restart) (Result: exit-code) since 금 2018-04-20 15:27:00 KST; 6s ago
Docs: http://kubernetes.io/docs/
Process: 17247 ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_SYSTEM_PODS_ARGS $KUBELET_NETWORK_ARGS $KUBELET_DNS_ARGS $KUBELET_AUTHZ_ARGS $KUBELET_CADVISOR_ARGS $KUBELET_CGROUP_ARGS $KUBELET_CERTIFICATE_ARGS $KUBELET_EXTRA_ARGS (code=exited, status=255)
Main PID: 17247 (code=exited, status=255)
swapon -s
Filename type size Used priority
/dev/sda6 partition 950267 3580 -1
须藤swapoff /dev/sda6
须藤systemctl status kubelet
● kubelet.service - kubelet: The Kubernetes Node Agent
Loaded: loaded (/lib/systemd/system/kubelet.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/kubelet.service.d
└─10-kubeadm.conf
Active: active (running) since Mon 2019-01-14 08:28:56 -05; 15min ago
Docs: https://kubernetes.io/docs/home/
Main PID: 7018 (kubelet)
Tasks: 25 (limit: 3319)
CGroup: /system.slice/kubelet.service
└─7018 /usr/bin/kubelet --bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes
kubectl get nodes
NAME STATUS ROLES AGE VERSION
k8smaster Ready master 47h v1.13.2
k8snode1 Ready <none> 45h v1.13.2
k8snode2 Ready <none> 45h v1.13.2
我没有运行这个。
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
导致问题。
ip route add default via xxx.xxx.xxx.xxx on k8s master
$ kubectl apply -f Deployment.yaml
无法识别“Deployment.yaml”:获取http://localhost :8080/api?timeout=32s:拨打 tcp 127.0.0.1:8080:连接:连接被拒绝
无法识别“Deployment.yaml”:获取http://localhost :8080/api?timeout=32s:拨打 tcp 127.0.0.1:8080:连接:连接被拒绝
在 Mac OS High Sierra 上运行,我通过在 Docker 本身中启用 Kubernetes 来解决这个问题。
有用。 非常简单。 如果您使用的是桌面软件,最好先从偏好设置中找到解决方案。 哈哈。
在 Mac OS High Sierra 上运行,我通过在 Docker 本身中启用 Kubernetes 来解决这个问题。
tks
好吧,这听起来可能很愚蠢,但也许你没有安装 miniKube 来在本地运行你的集群
如果您有 minikube,请尝试重新安装或尝试使用kubectl proxy --port=8080
。
好的,在 docker for Mac (v 2.0.5.0) 上,有两个设置都需要切换。
docker rm -f $(docker ps -aq)
systemctl restart kubelet
[ mayuchau@cg-id .kube]$ kubectl 获取节点
与服务器localhost:8080的连接被拒绝 - 您是否指定了正确的主机或端口?
我正在克服错误。 我尝试了上述解决方案,但它对我不起作用。
[ mayuchau@cg-id .kube]$ kubectl 获取节点
与服务器localhost:8080的连接被拒绝 - 您是否指定了正确的主机或端口?我正在克服错误。 我尝试了上述解决方案,但它对我不起作用。
验证主节点中 /var/run/docker.sock 的权限后问题已解决
这是我解决它的方法:
确保已安装 kubectl。 检查它使用:
gcloud components list
如果没有先安装 kubectl。
转到 gcloud 平台上项目的 Kubernetes 引擎控制台。
在那里与您的项目所在的集群连接。 它将为您提供在本地命令提示符/终端中运行的命令。 例如,它看起来像:
gcloud container clusters get-credentials <Cluster_Name> --zone <Zone> --project <Project_Id>
成功运行此命令后,您将能够运行:
kubectl get nodes
浏览本指南以通过 docker 在本地设置 kubernetes,我最终会收到上述错误消息。
采取的步骤:
export K8S_VERSION='1.3.0-alpha.1'
(也试过 1.2.0)- 复制粘贴
docker run
命令- 下载适当的
kubectl
二进制文件并放入PATH
(which kubectl
有效)- (可选)设置集群
- 运行
kubectl get nodes
简而言之,没有魔法。 我在 Ubuntu 14.04、docker 1.10.3 上本地运行它。 如果您需要更多信息,请告诉我
谢谢!!!
这提醒我,我的 ~/.bashrc 中没有用于 KUBEKONFIG 系统变量的变量导出。
添加解决了我的问题!
例如:
### ADD in ~/.bashrc
export KUBECONFIG=$HOME/.kube/eksctl/clusters/serv-eks-dev
这个问题的一个可能原因是,kube config 中的current context
被一些工具删除了,并且没有保留当前上下文。
检查:
kubectl config get-contexts
如果没有current
上下文,请使用以下命令创建一个当前:
kubectl config use-context <context name>
我遇到了类似的问题,已解决export KUBECONFIG=/etc/kubernetes/admin.conf
如果它对任何人有帮助(我通过 Google 搜索错误来到这里),我的 Docker Desktop for Mac 默认禁用了 Kubernetes。 勾选Enabled Kubernetes
和Apply & Restart
可以解决错误。
在 Mac OS 中:我正在通过 Docker 在本地运行 Kubernetes,具体来说是https://k3d.io/-所以安装后,一旦创建集群,如果我执行命令kubectl cluster-info
返回
与服务器 0.0.0.0:51939 的连接被拒绝 - 您是否指定了正确的主机或端口? 有人对这个问题有任何指示吗?
PS: Docker , docker-machine 通过 Homebrew 安装
kubectl config get-contexts
返回@navkmurthy 是什么?
navkmurthy$ k3d 集群创建 -p 5432:30080@agent [0] -p 9082:30081@agent [0] --agents 3 --update-default-kubeconfig
信息 [0000] 创建网络 'k3d-k3s-default'
信息 [0000] 创建卷 'k3d-k3s-default-images'
信息 [0001] 创建节点“k3d-k3s-default-server-0”
信息 [0001] 创建节点“k3d-k3s-default-agent-0”
信息 [0002] 创建节点“k3d-k3s-default-agent-1”
信息 [0003] 创建节点“k3d-k3s-default-agent-2”
信息 [0004] 创建负载平衡器“k3d-k3s-default-serverlb”
INFO[0024] 集群“k3s-default”创建成功!
INFO[0024] 您现在可以像这样使用它:
kubectl 集群信息
navkmurthy$ kubectl 集群信息
要进一步调试和诊断集群问题,请使用“kubectl cluster-info dump”。
与服务器 0.0.0.0:53706 的连接被拒绝 - 您是否指定了正确的主机或端口?
navkmurthy$ kubectl 配置获取上下文
当前名称集群 AUTHINFO 命名空间
最有用的评论
您可以使用“kubectl config”解决此问题: