如何解决特使,如何避免:恐慌:侦听器接受失败:打开的文件太多
我在Ubuntu 18.04(2核,8G)上运行Envoy 1.5,并且我已经将FD增加到非常大的数目。但是,当WebSocket连接达到约500个时,Envoy总是崩溃。这是一个很小的数目。
上游是2个服务器的群集。真的被这个烦人的问题弄糊涂了。我检查了历史上的类似问题,但无法解决。
如果我仅用Haproxy替换Envoy,它就可以支持2000 WebSocket连接,而无需任何其他设置。
在Nginx中,我提高了worker_connections的数量。是否有任何等效的设置,例如worker_connections?
感谢在这个问题上的任何成功。
ulimit -a
core file size (blocks,-c) 0
data seg size (kbytes,-d) unlimited
scheduling priority (-e) 0
file size (blocks,-f) unlimited
pending signals (-i) 31705
max locked memory (kbytes,-l) 16384
max memory size (kbytes,-m) unlimited
open files (-n) 400000
pipe size (512 bytes,-p) 8
POSIX message queues (bytes,-q) 819200
real-time priority (-r) 0
stack size (kbytes,-s) 8192
cpu time (seconds,-t) unlimited
max user processes (-u) 65535
virtual memory (kbytes,-v) unlimited
file locks (-x) unlimited
迷恋之前:
cat /proc/net/sockstat
sockets: used 1141
TCP: inuse 1000 orphan 0 tw 0 alloc 1001 mem 4
UDP: inuse 2 mem 1
UDPLITE: inuse 0
RAW: inuse 0
FRAG: inuse 0 memory 0
Somaxconn:
cat /proc/sys/net/core/somaxconn
10240
日志:
Nov 1 06:07:42 portal bash[1076]: [2020-11-01 06:07:42.001][1422][critical][assert] [external/envoy/source/common/network/listener_impl.cc:111] panic: listener accept failure: Too many open files
Nov 1 06:07:42 portal bash[1076]: [2020-11-01 06:07:42.001][1422][critical][backtrace] [bazel-out/k8-opt/bin/external/envoy/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:104] Caught Aborted,suspect faulting address 0x49b
Nov 1 06:07:42 portal bash[1076]: [2020-11-01 06:07:42.001][1422][critical][backtrace] [bazel-out/k8-opt/bin/external/envoy/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:91] Backtrace (use tools/stack_decode.py to get line numbers):
Nov 1 06:07:42 portal bash[1076]: [2020-11-01 06:07:42.001][1422][critical][backtrace] [bazel-out/k8-opt/bin/external/envoy/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:92] Envoy version: 670a4a60080f5889d9f7c022a009dcf25f1062ca/1.15.1/clean-getenvoy-a5345f6-envoy/RELEASE/BoringSSL
Nov 1 06:07:42 portal bash[1076]: [symbolize_elf.inc : 951] RAW: /proc/self/task/1179/maps: errno=24
Nov 1 06:07:42 portal bash[1076]: [2020-11-01 06:07:42.001][1422][critical][backtrace] [bazel-out/k8-opt/bin/external/envoy/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #0: [0x7f76d77b78a0]
Nov 1 06:07:42 portal bash[1076]: [2020-11-01 06:07:42.001][1422][critical][backtrace] [bazel-out/k8-opt/bin/external/envoy/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #1: [0x55dcd2da1c15]
Nov 1 06:07:42 portal bash[1076]: [2020-11-01 06:07:42.001][1422][critical][backtrace] [bazel-out/k8-opt/bin/external/envoy/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #2: [0x55dcd2d9fd6b]
Nov 1 06:07:42 portal bash[1076]: [2020-11-01 06:07:42.001][1422][critical][backtrace] [bazel-out/k8-opt/bin/external/envoy/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #3: [0x55dcd2d9e5ee]
Nov 1 06:07:42 portal bash[1076]: [2020-11-01 06:07:42.001][1422][critical][backtrace] [bazel-out/k8-opt/bin/external/envoy/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #4: [0x55dcd29212f4]
Nov 1 06:07:42 portal bash[1076]: [2020-11-01 06:07:42.002][1422][critical][backtrace] [bazel-out/k8-opt/bin/external/envoy/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #5: [0x55dcd2e50e43]
Nov 1 06:07:42 portal bash[1076]: [2020-11-01 06:07:42.002][1422][critical][backtrace] [bazel-out/k8-opt/bin/external/envoy/source/server/_virtual_includes/backtrace_lib/server/backtrace.h:98] #6: [0x7f76d77ac6db]
Nov 1 06:07:42 portal bash[1076]: /opt/envoy/envoy.sh: line 1: 1081 Aborted sudo envoy -c /opt/envoy/envoy.yaml
Nov 1 06:07:42 portal systemd[1]: envoy.service: Main process exited,code=exited,status=134/n/a
Nov 1 06:07:42 portal systemd[1]: envoy.service: Failed with result 'exit-code'.
Nov 1 06:07:52 portal systemd[1]: envoy.service: Service hold-off time over,scheduling restart.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。