【问题标题】:Server side event is not working Kubernetes ingress controller and erred out服务器端事件不起作用 Kubernetes 入口控制器并出错
【发布时间】:2020-06-28 14:15:57
【问题描述】:

我们有一个 API,它将创建一个集群并等待状态,直到它在数据库中创建并执行查询。

我们通过 Ingress 进行了尝试,但正在超时。

并且我们在入口规则中设置如下:

nginx.ingress.kubernetes.io/configuration-snippet: |
    location / {
        proxy_set_header Connection "";
        proxy_http_version 1.1;
    }

错误:

nginx.ingress.kubernetes.io/proxy-read-timeout: "600"

如果我们设置它,它会在 /data 路径下创建,这是我们的主要 API 路径,它不会按预期工作。

有没有直接注解来使用服务器端事件?

如果我们在入口规则中使用上面的 sn-p 并在控制器日志中得到这个错误。

以下错误错误:

exit status 1
2020/06/26 04:57:22 [emerg] 132#132: location "/" is outside location "/data/" in /tmp/nginx-cfg140739857:11409
nginx: [emerg] location "/" is outside location "/data/" in /tmp/nginx-cfg140739857:11409
nginx: configuration file /tmp/nginx-cfg140739857 test failed.

【问题讨论】:

  • 你能分享你的 Ingress YAMLs 配置吗? IT 本地环境还是云?你用的是什么 K8s 版本?

标签: nginx kubernetes-ingress


【解决方案1】:

正如doc 所建议的那样,您永远不应该使用/ 来托管您的数据。它应该在/data/* 的某个地方。

任何文件系统中的某些目录都不应该用于托管数据。其中包括/root。您永远不应该将它们用作您的文档根目录。 这样做会让您在预期区域之外收到返回私人数据的请求。

永远不要这样做!!!

server {
    root /;

    location / {
       
    }
}

【讨论】:

  • 我们正在使用的入口控制器 0.17.1 ,是否有任何直接注释?否则有没有其他方法可以实现这一点。
猜你喜欢
  • 2020-05-14
  • 1970-01-01
  • 2020-04-23
  • 1970-01-01
  • 2021-01-28
  • 1970-01-01
  • 2018-10-29
  • 1970-01-01
  • 2021-04-17
相关资源
最近更新 更多