首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用consul-template向nginx.conf呈现2000+服务

使用consul-template向nginx.conf呈现2000+服务
EN

Stack Overflow用户
提问于 2020-05-02 02:26:28
回答 1查看 539关注 0票数 0

我们有一个nginx conf文件,它是使用consul-template for 2000+服务生成的,运行Consul 1.6.1。

我们正在尝试升级到Consul 1.7.2,但遇到了consul-template DDoSes Consul节点代理的问题。

节点/客户端代理v1.6.1工作正常,但是节点/客户端代理v1.7.2开始拒绝来自consul-template的连接。

有问题的模板(简化版本)是:

代码语言:javascript
复制
{{- range services }}
{{- if (in .Tags "nginxqa1") }}
{{- range service .Name }}
{{ .Address }}
{{- end }}
{{- end }}
{{- end }}

在节点/客户端领事上添加以下限制配置项似乎可以解决此问题:

代码语言:javascript
复制
http_max_conns_per_client = 5000

但是,这有什么影响吗?

有没有更好的方法来做这件事?我看到了这些消息:

代码语言:javascript
复制
2020/05/01 18:24:51.653257 [WARN] (runner) watching 2631 dependencies - watching this many dependencies could DDoS your consul cluster

如有任何想法/建议,欢迎光临。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-05 01:28:09

hashicorp/consul#7159中引入了http_max_conns_per_client参数来寻址CVE-2020-7219。对于大多数用例,默认值200似乎是一个合理的默认值。但是,在像您这样的场景中,提高此值是有意义的。

提高这一点的唯一缺点是,任何能够与Consul API通信的客户端都将能够创建多达5000个连接。不能仅针对特定客户端提高此限制。在将这些更改推向生产时,请记住这一点。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61548455

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档