首页 文章

GKE Ingress:下载文件时出现502错误

提问于
浏览
1

我在GKE部署了集群,并使用Ingress进行了公开 . 静态资源和多数或REST请求工作正常 . 但是我在下载文件请求时收到了502 Server Error . 错误消息是: The server encountered a temporary error and could not complete your request.Please try again in 30 seconds.

如果没有Ingres,当使用LoadBalancer时,下载工作正常 . 我怀疑Ingress不喜欢后端响应 . 这是成功响应标头(没有Ingress):

HTTP/1.1 200 OK
transfer-encoding: chunked
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, OPTIONS, DELETE
Access-Control-Max-Age: 3600
Access-Control-Allow-Headers: x-requested-with, authorization, Content-Type, Authorization, credential, X-XSRF-TOKEN
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Transfer-Encoding: chunked
Date: Wed, 28 Mar 2018 13:55:39 GMT

我尝试过的:

  • 将 Cloud 控制台中的入口转发规则的后端服务超时从默认的30秒增加到100秒

  • 搜索stackdriver日志 - 没有找到Ingress控制器的任何日志 .

为什么这个请求不能与Ingress一起使用,如何解决?我在哪里可以找到GKE的Ingress日志?

1 回答

  • 0

    据我所知,没有特定的入口日志,但您可以检查入口状态和详细信息:

    kubectl get ingress
    
    kubectl describe ingress [YOUR INGRESS]
    

    然后检查哪个是配置的后端pod并检查那里的日志 .

    kubectl logs [BACKEND POD NAME]
    

相关问题