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

DigitalOcean Kubernetes中Flask应用LoadBalancer无法访问求助

问题排查与解决
  • 核心问题:Service标签选择器不匹配
    Deployment的Pod模板中定义的标签是app: unit-app,但LoadBalancer Service的selector设置为app: unit7-app-deploy,两者完全不匹配,导致Service无法关联到对应的Pod,外部流量无法转发到Flask应用。

  • 验证方法
    执行命令查看Service关联的Pod状态:

    kubectl get service unit7-app-service -o wide
    

    输出的ENDPOINTS字段会显示为空,说明没有Pod被Service选中。

    再查看Pod的标签确认:

    kubectl get pods --show-labels
    

    可见Pod的标签为app=unit-app,与Service的选择器不匹配。

  • 修复步骤
    修改LoadBalancer Service的配置文件,将selector修正为与Pod标签一致的app: unit-app,修改后的配置如下:

    apiVersion: v1
    kind: Service
    metadata:
      name: unit7-app-service
    spec:
      selector:
        app: unit-app
      ports:
      - port: 8080
        targetPort: 8080
        protocol: TCP
      type: LoadBalancer
    

    重新应用配置:

    kubectl apply -f service.yaml
    

    等待Service更新完成后,再次查看ENDPOINTS字段,会显示Pod的IP和端口,此时通过外部IP加8080端口即可正常访问Flask应用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 04:39:52