执行kubectl get pods报错:无法获取服务器API组列表求助
kubectl连接minikube集群失败排查与解决
问题现象
反复创建销毁多个Terraform项目数小时后,执行kubectl get pods出现以下错误:
kubectl get pods E0117 14:10:23.537699 21524 memcache.go:238] couldn't get current server API group list: Get "https://192.168.59.102:8443/api?t E0117 14:10:33.558130 21524 memcache.go:238] couldn't get current server API group list: Get "https://192.168.59.102:8443/api?t
已尝试Docker Desktop恢复并清理数据,问题未解决。当前.kube/config配置如下:
apiVersion: v1 clusters: - cluster: certificate-authority-data: DATA+OMITTED server: https://kubernetes.docker.internal:6443 name: docker-desktop - cluster: certificate-authority: C:\Users\dani0\.minikube\ca.crt extensions: - extension: last-update: Tue, 17 Jan 2023 14:04:24 IST provider: minikube.sigs.k8s.io version: v1.28.0 name: cluster_info server: https://192.168.59.102:8443 name: minikube contexts: - context: cluster: docker-desktop name: docker-desktop - context: extensions: - extension: last-update: Tue, 17 Jan 2023 14:04:24 IST provider: minikube.sigs.k8s.io version: v1.28.0 name: context_info namespace: default user: minikube name: minikube current-context: minikube kind: Config preferences: {} users: - name: docker-desktop user: client-certificate-data: DATA+OMITTED client-key-data: DATA+OMITTED - name: minikube user: client-certificate: C:\Users\dani0\.minikube\profiles\minikube\client.crt client-key: C:\Users\dani0\.minikube\profiles\minikube\client.key
解决步骤
- 检查minikube集群状态:执行
minikube status,确认集群是否正常运行。若已停止,执行minikube start重启集群。 - 验证网络连通性:用
ping 192.168.59.102测试能否访问minikube节点,若不通,执行minikube delete && minikube start重建集群,重置网络配置。 - 检查证书文件有效性:确认
C:\Users\dani0\.minikube\ca.crt、C:\Users\dani0\.minikube\profiles\minikube\client.crt和client.key文件是否存在,若缺失,执行minikube update-context重新生成kubeconfig配置。 - 切换上下文测试:执行
kubectl config use-context docker-desktop,尝试连接Docker Desktop内置集群。若能正常执行kubectl get pods,说明问题出在minikube集群本身,而非kubectl全局配置。 - 清理Terraform残留资源:确保所有Terraform项目执行
terraform destroy彻底清理资源,避免残留的K8s资源导致集群状态异常。
内容的提问来源于stack exchange,提问作者zolo
相关产品推荐
相关产品推荐

