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

基于Kubernetes部署Apache服务无法本地访问问题求助

问题排查与解决

核心问题:Service与Pod标签不匹配

你的Deployment中Pod的标签是app: test,但Service的selector配置为app: apache,这导致Service无法找到对应的Pod,流量根本无法传递到容器内部。

修复步骤

  • 修正Service的Selector
    将Service部分的selector改为app: test,与Pod的标签保持一致:

    apiVersion: v1
    kind: Service
    metadata:
      name: apache-service
    spec:
      selector:
        app: test  # 此处需与Pod标签匹配
      type: LoadBalancer
      ports:
      - protocol: TCP
        port: 80
        targetPort: 80
        nodePort: 30001
    
  • 验证关联状态
    执行以下命令确认Service是否成功绑定Pod:

    kubectl get svc apache-service
    kubectl describe svc apache-service
    

    查看输出的Endpoints字段,若显示Pod的IP,说明关联成功。

  • 检查容器内服务状态
    如果调整后仍无法访问,先确认容器内Apache是否正常运行:

    kubectl exec -it <你的Pod名称> -- curl localhost
    

    若能返回Apache默认页面,说明容器内服务正常,再确认Service端口映射是否生效。

  • 优化容器启动命令(可选)
    用apache2ctl -D FOREGROUND替代service apache2 start && tail -f /dev/null,让Apache直接前台运行,无需依赖tail命令维持容器存活:

    command: ["/bin/sh", "-c", "apt update -y && apt install -y apache2 && apache2ctl -D FOREGROUND"]
    

完整修正后的配置

apiVersion: apps/v1
kind: Deployment
metadata:
  name: test-deployment
  labels:
    app: apache
spec:
  selector:
    matchLabels:
      app: test
  replicas: 1
  template:
    metadata:
      labels:
        app: test
    spec:
      containers:
      - name: test
        image: ubuntu:20.04
        command: ["/bin/sh", "-c", "apt update -y && apt install -y apache2 && apache2ctl -D FOREGROUND"]
        ports:
        - name: http
          containerPort: 80
        env:
        - name: DEBIAN_FRONTEND
          value: noninteractive
---
apiVersion: v1
kind: Service
metadata:
  name: apache-service
spec:
  selector:
    app: test
  type: LoadBalancer
  ports:
  - protocol: TCP
    port: 80
    targetPort: 80
    nodePort: 30001

内容的提问来源于stack exchange,提问作者kevP-Sirius

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 09:50:25