【问题标题】:Getting "503 Service Temporarily Unavailable" error while pointing domain to Kubernetes Ingress controller IP将域指向 Kubernetes 入口控制器 IP 时出现“503 服务暂时不可用”错误
【发布时间】:2021-05-23 14:56:42
【问题描述】:

我在 kubernetes 集群上公开了服务,我有一个入口控制器将流量路由到服务,但它返回 503,一切都已连接和配置,并且服务在使用其外部 IP 执行时正在工作,但在连接时入口返回 503 这是 INGRESS YAML-

apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
  name: yucreat-ingress
  annotations:
    cert-manager.io/cluster-issuer: "letsencrypt-prod"
spec:
  tls:
  - hosts:
    - yuccoin.org
    secretName: echo-tls
  rules:
  - host: yuccoin.org
    http:
      paths:
      - backend:
          serviceName: yucdocker1
          servicePort: 80

工作 scv YAML-

kind: Service
apiVersion: v1
metadata:
  name: yucdocker1
  namespace: default
  uid: 13bb70c3-8....
  resourceVersion: '3449902'
  creationTimestamp: '2021-05-05T13:55:53Z'
  labels:
    app: yucdocker1
  annotations:
    kubernetes.digitalocean.com/load-balancer-id: e25202f7-8422-4...
  managedFields:
    - manager: kubectl-expose
      operation: Update
      apiVersion: v1
      time: '2021-05-05T13:55:53Z'
      fieldsType: FieldsV1
      fieldsV1:
        'f:metadata':
          'f:labels':
            .: {}
            'f:app': {}
        'f:spec':
          'f:externalTrafficPolicy': {}
          'f:ports':
            .: {}
            'k:{"port":8080,"protocol":"TCP"}':
              .: {}
              'f:port': {}
              'f:protocol': {}
              'f:targetPort': {}
          'f:selector':
            .: {}
            'f:app': {}
          'f:sessionAffinity': {}
    - manager: digitalocean-cloud-controller-manager
      operation: Update
      apiVersion: v1
      time: '2021-05-05T13:58:25Z'
      fieldsType: FieldsV1
      fieldsV1:
        'f:metadata':
          'f:annotations':
            .: {}
            'f:kubernetes.digitalocean.com/load-balancer-id': {}
    - manager: k8saasapi
      operation: Update
      apiVersion: v1
      time: '2021-05-21T08:24:07Z'
      fieldsType: FieldsV1
      fieldsV1:
        'f:spec':
          'f:type': {}
spec:
  ports:
    - protocol: TCP
      port: 8080
      targetPort: 4500
  selector:
    app: yucdocker1
  clusterIP: 10.245.171.173
  clusterIPs:
    - 10.245.171.173
  type: ClusterIP
  sessionAffinity: None
status:
  loadBalancer: {}

所以,我已经尝试将 svc 从 loadBalancer 更改为 clusterIP...但没有任何效果,欢迎提供任何帮助。

【问题讨论】:

    标签: kubernetes kubernetes-ingress


    【解决方案1】:

    您的入口正在向端口 80 上的服务发送流量:

    - backend:
        serviceName: yucdocker1
        servicePort: 80
    

    但您的服务仅公开端口 8080:

    spec:
      ports:
      - protocol: TCP
        port: 8080
    

    端口必须匹配,您的入口才能正常工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-04
      • 2013-10-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-25
      • 2018-08-18
      • 1970-01-01
      相关资源
      最近更新 更多