Kubernetes pods 无法通过 Ingress 公开

Kubernetes pods can't be exposed with Ingress

我正在尝试设置一个带有几个后端服务的 kubernetes 集群,这些后端服务通过入口实例提供。

我已经在 kubernetes 中设置了 Deployment、Services 和 Ingress。然而,由于未知错误,我无法让入口工作并充当我的后端服务的负载平衡器。

Name                    | Status   |    Type     | Endpoints              | Pods    | Namespace |   Cluster
ev-ingress              |    OK    | Ingress     | */evauth               |  0 / 0  | default    |standard-cluster-1
ev-auth-service         |   OK     | Node port  |    <NODE_PORT_IP>:80 TCP| 1 / 1   |default |  standard-cluster-1

backend.yml

---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: ev-auth
spec:
  selector:
    matchLabels:
      app: ev-auth
  replicas: 1
  template:
    metadata:
      labels:
        app: ev-auth
    spec:
      containers:
      - name: ev-auth
        image: private_repository/ev-auth
        readinessProbe:
          httpGet:
            path: /health
            port: 3000
        livenessProbe:
          httpGet:
            path: /health
            port: 3000
        ports:
        - containerPort: 3000
        env:
        - name: PORT
          value: "3000"
        - name: AMQP_CONNECTION
          value: amqp://xxxxxxx
        - name: CALLBACK
          value: "CALLBACK"
        - name: CONSUMER_KEY
          value: xxxxxxxxx
        - name: CONSUMER_SECRET
          value: xxxxxxxx
---
apiVersion: v1
kind: Service
metadata:
  name: ev-auth-service
  labels:
    app: ev-auth
spec:
  type: NodePort
  selector:
    app: ev-auth
  ports:
  - name: normal
    port: 80
    targetPort: 3000
    protocol: TCP

ingress.yml

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: ev-ingress
spec:
  rules:
  - http:
      paths:
      - path: /evauth
        backend:
          serviceName: ev-auth-service
          servicePort: 80

我在这里错过了什么?我确保 /evauth 确实有效,(我不确定是否有必要匹配,但无论如何)。 Ingress 映射仍然显示 pods 的“0/0”。当我调用“http://cluster_ip/evauth”时,我得到 "default backend - 404"

感谢任何帮助。

谢谢。

原来是我仓促了。显然我不得不等待一段时间。

10 分钟后,一切正常。