You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kubernetes中Pod1无法与Pod3通信(ScrapyRT连接失败)

问题排查与解决方案

核心问题分析

从你的配置和报错信息来看,主要存在两个关键问题:

1. 服务名称拼写错误

你的Python代码中调用的服务名称是getcookie-14805-service.default,但实际Kubernetes中创建的服务名称是getcookie-service(从kubectl get svc输出可确认)。错误的服务名会导致DNS解析失败,直接引发连接拒绝错误。

2. ScrapyRT 可能仅监听本地回环地址

Pod3的日志仅在容器内部执行curl localhost:14805时才会生成,而外部访问服务无日志输出,说明ScrapyRT可能只绑定了127.0.0.1,导致集群内其他Pod无法访问该应用。


分步解决

步骤1:修正Pod1中的服务调用地址

将Python代码里的endpoint中的服务名改为正确的getcookie-service:

# 原错误地址
# endpoint = 'http://getcookie-14805-service.default/crawl.json?spider_name=getCookie&url=http://images.google.com/'

# 修正后的地址(同命名空间下可省略.default)
endpoint = 'http://getcookie-service/crawl.json?spider_name=getCookie&url=http://images.google.com/'

步骤2:配置ScrapyRT监听所有网络接口

修改Pod3的Deployment配置,添加SCRAPYRT_HOST环境变量,让ScrapyRT监听0.0.0.0:

# getcookie-14805-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: getcookie-pod
  labels:
    app: getcookie-pod
spec:
  replicas: 1
  selector:
    matchLabels:
      app: getcookie-pod
  template:
    metadata:
      labels:
        app: getcookie-pod
    spec:
      containers:
      - name: getcookie-pod
        image: privaterepo/myproject-scrapy:latest
        imagePullPolicy: Always
        ports:
        - containerPort: 14805
        envFrom:
        - secretRef:
            name: scrapy-env
        env:
        - name: SCRAPYRT_PORT
          value: "14805"
        # 添加以下环境变量
        - name: SCRAPYRT_HOST
          value: "0.0.0.0"
      imagePullSecrets:
      - name: docker-credentials

重新部署Pod3:

kubectl apply -f getcookie-14805-deployment.yaml

步骤3:验证连通性

  1. 在Pod1中测试服务DNS解析:
nslookup getcookie-service

应返回服务的ClusterIP(10.106.14.183)。

  1. 测试端口连通性:
telnet getcookie-service 80

如果能成功连接,说明网络通路正常;若仍拒绝连接,可直接测试Pod3的IP:

# 先获取Pod3的IP
kubectl get pods getcookie-pod-59b8575ffc-8dcqb -o jsonpath='{.status.podIP}'
# 在Pod1中curl该IP的14805端口
curl http://<pod3-ip>:14805

若直接curl PodIP也失败,需检查ScrapyRT的启动命令是否强制绑定了127.0.0.1,可能需要修改镜像内的启动脚本。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 14:38:34