Marathon-lb没有返回保持活跃的标题

时间:2017-05-26 14:54:51

标签: marathon dcos

我们正在将微服务应用程序迁移到dcos。当前版本的应用程序使用nginx作为反向代理。在转向dcos时,我们想用marathon-lb替换nginx。这很有效,只有一个例外。 Nginx返回预期的http-server-close http标头,但marathon-lb不返回。

我们没有以任何方式更改marathon-lb的默认配置,据我所知,haproxy具有预期的默认值。具体来说,defaults load-server-state-from-file global log global retries 3 backlog 10000 maxconn 10000 timeout connect 3s timeout client 30s timeout server 30s timeout tunnel 3600s timeout http-keep-alive 1s timeout http-request 15s timeout queue 30s timeout tarpit 60s option dontlognull option http-server-close option redispatch 选项。这是配置中的一个片段。

  "labels": {
    "HAPROXY_0_PATH": "-i /alerts",
    "HAPROXY_0_HTTP_BACKEND_PROXYPASS_PATH": "/alerts",
    "HAPROXY_0_VHOST": "foo.bar.com",
    "HAPROXY_GROUP": "external"
  }

我的服务的标签格式如下:

{{1}}

我做错了什么?

1 个答案:

答案 0 :(得分:0)

尝试使用option http-keep-aliveoption prefer-last-server

请参阅:Haproxy + netty: Way to prevent exceptions on connection reset?

您可以按HAPROXY_GLOBAL_DEFAULT_OPTIONS覆盖默认配置。

请参阅:https://github.com/mesosphere/marathon-lb#haproxy-global-default-options