You need to enable JavaScript to run this app. Kubernetes minikube访问NodePort服务报Connection refused错误求助
优惠活动
大模型
产品
解决方案
定价
更多

Kubernetes minikube访问NodePort服务报Connection refused错误求助

根因

你的Service配置的标签选择器与Pod的实际标签不匹配,导致Service没有关联任何后端Pod,所有访问请求都无法转发,最终返回连接拒绝。
具体配置差异:

  • Deployment中Pod模板设置的标签为 hello: hi
  • Service的selector字段配置为 name: deploymnt,二者完全无法匹配。

验证方法

你可以执行以下命令确认问题:

kubectl get endpoints demoservice

正常情况下该命令会返回2个关联的Pod IP+端口,你的环境下执行会显示没有关联的后端地址。

修复步骤

  1. 修改Service.yaml的selector配置,替换为和Pod标签一致的内容:
kind: Service
apiVersion: v1
metadata:
 name: demoservice
spec:
 ports:
  - port: 80
    nodePort: 32201
 selector:
   hello: hi # 这里修改为匹配Pod的标签
 type: NodePort
  1. 重新应用配置:
kubectl apply -f Service.yaml
  1. 等待几秒后再次验证关联关系:
kubectl get endpoints demoservice

确认返回2个后端地址后,再用minikube service demoservice返回的地址访问即可正常访问httpd服务。

额外说明

你在本地主机直接curl ClusterIP(10.105.148.95)加NodePort的操作本身不符合Kubernetes网络规则:ClusterIP是集群内部可访问的IP,仅在集群网络内部生效,NodePort服务需要用节点IP(也就是minikube的IP 192.168.49.2)加NodePort端口访问。

内容的提问来源于stack exchange,提问作者Pawan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.10 00:15:03