【问题标题】:Kubernetes ingress block in creating stateKubernetes 入口块在创建状态
【发布时间】:2018-10-23 10:51:58
【问题描述】:

我已经使用 Google Kubernetes Engine 部署了一个应用。所有功能都运行良好,但我有一个奇怪的问题。如果我在 Google 云控制台中检查状态,则入口始终处于创建阶段。

你可以在图片中看到它:

您有什么建议可以解决吗?

谢谢

[编辑]

kubectl describe ingress: 
Name:             ++++++-nginx-ingress
Namespace:        ++++++
Address:
Default backend:  default-http-backend:80 (10.4.0.4:8080)
Rules:
  Host                        Path  Backends
  ----                        ----  --------
  ++++++-back.*******.net
                                 ++++++-nginx-np:80 (<none>)
  ++++++.*******.net
                                 ++++++-front-np:80 (<none>)
Annotations:
  ingress.kubernetes.io/backends:                    {"k8s-be-30141--93abcf3e6a0e0671":"HEALTHY","k8s-be-32338--93abcf3e6a0e0671":"HEALTHY","k8s-be-32589--93abcf3e6a0e0671":"HEALTHY"}
  ingress.kubernetes.io/url-map:                     k8s-um-++++++-++++++-nginx-ingress--93abcf3e6a0e0671
  kubectl.kubernetes.io/last-applied-configuration:  {"apiVersion":"extensions/v1beta1","kind":"Ingress","metadata":{"annotations":{"kubernetes.io/ingress.allow-http":"false","kubernetes.io/ingress.global-static-ip-name":"++++++-nginx-ingress-ip"},"labels":{"app":"++++++-nginx-ingress"},"name":"++++++-nginx-ingress","namespace":"++++++"},"spec":{"rules":[{"host":"++++++-back.*******.net","http":{"paths":[{"backend":{"serviceName":"++++++-nginx-np","servicePort":80}}]}},{"host":"++++++.*******.net","http":{"paths":[{"backend":{"serviceName":"++++++-front-np","servicePort":80}}]}}]}}

  kubernetes.io/ingress.allow-http:             false
  kubernetes.io/ingress.global-static-ip-name:  ++++++-nginx-ingress-ip
Events:   

                                  <none>

YAML 文件:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
 name: ++++++-nginx-ingress
 labels:
   app: ++++++-nginx-ingress
 annotations:
     kubernetes.io/ingress.global-static-ip-name: ++++++-nginx-ingress-ip
     kubernetes.io/ingress.allow-http: "false"
 namespace: ++++++
spec:
 rules:
 - host: ++++++-back.++++++.net
   http:
     paths:
     - backend:
         serviceName: ++++++-nginx-np
         servicePort: 80
 - host: ++++++.++++++.net
   http:
     paths:
     - backend:
         serviceName: ++++++-front-np
         servicePort: 80

【问题讨论】:

  • ingress 卡在创建状态有不同的根本原因,你能从控制台通过 ingress yaml 文件吗?
  • 你能发布kubectl describe ingress的输出吗?

标签: kubernetes kubernetes-ingress google-kubernetes-engine nginx-ingress


【解决方案1】:

检查您的输出我可以看到负载平衡器未创建或在Spec.Backend 之后通常没有获取您的静态 IP ++++++-nginx-ingress-ip

status:
  loadBalancer:
    ingress:
    - ip: xx.xx.xx.xx

在配置入口的 TLS 时使用注解 kubernetes.io/ingress.allow-http: "false"

另一件事你可以检查 L7 HTTP 负载平衡插件 在创建集群时是否默认启用

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-08-30
    • 2020-02-11
    • 2021-01-06
    • 2020-11-04
    • 1970-01-01
    • 2023-03-09
    • 2020-05-19
    • 2022-01-15
    相关资源
    最近更新 更多