Amazon web services 默认http后端:80(<;错误:端点";默认http后端";未找到>;)

Amazon web services 默认http后端:80(<;错误:端点";默认http后端";未找到>;),amazon-web-services,kubernetes,kubernetes-ingress,nginx-ingress,Amazon Web Services,Kubernetes,Kubernetes Ingress,Nginx Ingress,我的两个域one.example.com和two.example.com的连接都超时 我已经使用kops在AWS上设置了集群 入口位于默认名称空间内,代理的服务也位于默认名称空间内 apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: ingress-service-api annotations: kubernetes.io/ingress.class: nginx nginx.ingress.ku

我的两个域
one.example.com
two.example.com
的连接都超时

我已经使用kops在AWS上设置了集群

入口位于默认名称空间内,代理的服务也位于默认名称空间内

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: ingress-service-api
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/use-regex: "true"
    nginx.ingress.kubernetes.io/rewrite-target: /$1
    certmanager.k8s.io/cluster-issuer: "letsencrypt-example-prod"
    nginx.ingress.kubernetes.io/ssl-redirect: "true"
spec:
  tls:
    - hosts:
        - one.example.in
      secretName: api-example-in
  rules:
    - host: one.example.in
      http:
        paths:
          - path: /customer/?(.*)
            pathType: Prefix
            backend:
              service:
                name: customer-srv
                port:
                  number: 3000
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: ingress-service-monitor
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/use-regex: "true"
    certmanager.k8s.io/cluster-issuer: "letsencrypt-example-prod"
    nginx.ingress.kubernetes.io/ssl-redirect: "true"
spec:
  tls:
    - hosts:
        - two.example.in
      secretName: api-example-in
  rules:
    - host: two.example.in
      http:
        paths:
        - path: /
          pathType: Prefix
          backend:
            service:
              name: kube-prometheus-grafana
              port:
                number: 80
我在这里列出了关于入口部署的其他信息

[ec2-user@ip ~]$ kubectl get all -n ingress-nginx
NAME                                            READY   STATUS      RESTARTS   AGE
pod/ingress-nginx-admission-create-5wpwn        0/1     Completed   0          3h39m
pod/ingress-nginx-admission-patch-6z2wx         0/1     Completed   2          3h39m
pod/ingress-nginx-controller-7fc74cf778-64vk2   1/1     Running     0          91m

NAME                                         TYPE           CLUSTER-IP      EXTERNAL-IP                                                                      PORT(S)                      AGE
service/ingress-nginx-controller             LoadBalancer   100.68.82.233   5e06c70e0a8b9d4b.elb.ap-south-1.amazonaws.com   80:31336/TCP,443:30936/TCP   3h39m
service/ingress-nginx-controller-admission   ClusterIP      100.64.118.59   <none>                                                                           443/TCP                      3h39m

NAME                                       READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/ingress-nginx-controller   1/1     1            1           91m

NAME                                                  DESIRED   CURRENT   READY   AGE
replicaset.apps/ingress-nginx-controller-7fc74cf778   1         1         1       91m

NAME                                       COMPLETIONS   DURATION   AGE
job.batch/ingress-nginx-admission-create   1/1           10s        3h39m
job.batch/ingress-nginx-admission-patch    1/1           21s        3h39m
[ec2-user@ip ~]$
[ec2-user@ip~]$kubectl获得全部-n入口nginx
名称就绪状态重新启动
吊舱/入口-nginx-admission-create-5wpwn 0/1完成0 3h39m
吊舱/入口-nginx-admission-patch-6z2wx 0/1完成2 3h39m
pod/ingress-nginx-controller-7fc74cf778-64vk2 1/1运行0 91米
名称类型CLUSTER-IP外部IP端口年龄
service/ingress nginx控制器负载平衡器100.68.82.233 5e06c70e0a8b9d4b.elb.ap-south-1.amazonaws.com 80:31336/TCP,443:30936/TCP 3h39m
服务/入口nginx控制器准入群集IP 100.64.118.59 443/TCP 3h39m
姓名就绪最新可用年龄
deployment.apps/ingress-nginx-controller 1/191M
名称所需的当前就绪年龄
replicaset.apps/ingress-nginx-controller-7fc74cf778 1 91m
姓名完成期限年龄
job.batch/ingres-nginx-admission-create 1/1 10s 3h39m
job.batch/ingres-nginx-admission-patch 1/1 21s 3h39m
[ec2-user@ip ~]$

检查您正在运行的API版本或入口支持的API版本

您可以运行:kubectl api资源-o wide

检查网络支持的API版本。如果它支持
扩展/v1beta1
,您可以使用它,示例如下

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    certmanager.k8s.io/cluster-issuer: secret
    cert-manager.io/cluster-issuer: secret
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/proxy-body-size: 50m
    nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
    nginx.ingress.kubernetes.io/proxy-connect-timeout: "3600"
    nginx.ingress.kubernetes.io/proxy-send-timeout: "3600"
    nginx.ingress.kubernetes.io/rewrite-target: /
    nginx.ingress.kubernetes.io/secure-backends: "true"
    nginx.ingress.kubernetes.io/ssl-redirect: "true"
    nginx.ingress.kubernetes.io/websocket-services: core
    nginx.org/websocket-services: core
  name: service-ingress
  namespace: default
spec:
  rules:
  - host: app.example.io
    http:
      paths:
      - backend:
          serviceName: core
          servicePort: 80
  tls:
  - hosts:
    - app.example.io
    secretName: secret

请检查您正在运行的API版本或入口支持的API版本

您可以运行:kubectl api资源-o wide

检查网络支持的API版本。如果它支持
扩展/v1beta1
,您可以使用它,示例如下

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    certmanager.k8s.io/cluster-issuer: secret
    cert-manager.io/cluster-issuer: secret
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/proxy-body-size: 50m
    nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
    nginx.ingress.kubernetes.io/proxy-connect-timeout: "3600"
    nginx.ingress.kubernetes.io/proxy-send-timeout: "3600"
    nginx.ingress.kubernetes.io/rewrite-target: /
    nginx.ingress.kubernetes.io/secure-backends: "true"
    nginx.ingress.kubernetes.io/ssl-redirect: "true"
    nginx.ingress.kubernetes.io/websocket-services: core
    nginx.org/websocket-services: core
  name: service-ingress
  namespace: default
spec:
  rules:
  - host: app.example.io
    http:
      paths:
      - backend:
          serviceName: core
          servicePort: 80
  tls:
  - hosts:
    - app.example.io
    secretName: secret

您已将入口应用于存在服务的特定名称空间?该安装cmd本身创建了名称空间
ingres nginx
,因此为ingre控制器部署的POD正在该名称空间上运行。但这两个文件的入口都在默认名称空间中,因为我已经列出了“在入口上描述”的输出。您是否已将入口应用于存在服务的特定名称空间?安装cmd本身创建了名称空间
ingres nginx
,因此为ingre控制器部署的POD和POD正在该名称空间上运行。但这两个文件的入口都在默认名称空间中,因为我已经列出了描述入口的输出,我已经尝试过了,但我收到了弃用警告。一切正常。nginx控制器吊舱下降时发生问题。我不得不删除部署并创建一个新的部署。您部署的可能是最新版本,与运行maybeI的旧版本相比,只是运行了这个命令
kubectl apply-fhttps://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v0.44.0/deploy/static/provider/aws/deploy.yaml
version我正在与api版本一起使用
extensions/v1beta1
quay.io/kubernetes入口控制器/nginx入口控制器:0.23.0
我正在使用的版本是0.20,可能我已经尝试过了,但我收到了弃用警告。一切正常。nginx控制器吊舱下降时发生问题。我不得不删除部署并创建一个新的部署。您部署的可能是最新版本,与运行maybeI的旧版本相比,只是运行了这个命令
kubectl apply-fhttps://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v0.44.0/deploy/static/provider/aws/deploy.yaml
version我正在与api版本一起使用
extensions/v1beta1
quay.io/kubernetes入口控制器/nginx入口控制器:0.23.0
我使用的版本可能是0.20
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    certmanager.k8s.io/cluster-issuer: secret
    cert-manager.io/cluster-issuer: secret
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/proxy-body-size: 50m
    nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
    nginx.ingress.kubernetes.io/proxy-connect-timeout: "3600"
    nginx.ingress.kubernetes.io/proxy-send-timeout: "3600"
    nginx.ingress.kubernetes.io/rewrite-target: /
    nginx.ingress.kubernetes.io/secure-backends: "true"
    nginx.ingress.kubernetes.io/ssl-redirect: "true"
    nginx.ingress.kubernetes.io/websocket-services: core
    nginx.org/websocket-services: core
  name: service-ingress
  namespace: default
spec:
  rules:
  - host: app.example.io
    http:
      paths:
      - backend:
          serviceName: core
          servicePort: 80
  tls:
  - hosts:
    - app.example.io
    secretName: secret