ECS: xDoctor RAP153 Na uzlech ECS bylo dosaženo limitu (1 000), žádné nové připojení
Summary: Čtení a zápis aplikací do systému ECS nemůže navázat více připojení soketů. V některých scénářích může tento problém způsobit potenciální nedostupnost dat, pokud aplikace otevírá nadměrné množství připojení větší, než jsou výchozí limity připojení. ...
Symptoms
Aplikace nemůže navázat nová síťová připojení pro požadavky HTTPs.
Cause
Uzly ECS mají limit 1 000 připojení na uzel. Pokud je tento limit překročen, dataheadsvc zobrazí následující chybu:
169.xxx.2.9 2021-02-24T21:13:08,792 [qtp85102332-247-acceptor-1@4fda771a-TrafficMetricsNetworkTrafficServerConnector@49de2cc4{HTTP/1.1,[http/1.1]}{10.xxx.xxx.xxx:9020}] INFO ConnectionLimit.java (line 177) Connection Limit(1000) reached for [TrafficMetricsNetworkTrafficServerConnector@49de2cc4{HTTP/1.1,[http/1.1]}{10.xxx.xxx.xxx:9020}, TrafficMetricsNetworkTrafficServerConnector@4e293c35{SSL,[ssl, http/1.1]}{10.xxx.xxx.xxx:9021}]
Pokud chcete zobrazit další informace, analyzujte protokoly pomocí svc_log spočítat položky pro "Dosažen limit připojení (1000)" za posledních 30 minut.
Příkazy:
# svc_log dataheadsvc "Connection Limit(1000) cleared" -start "30 minutes ago" -sh -st minute # svc_log dataheadsvc "Connection Limit(1000) cleared" -start "24 hour ago" -sh -st hour
Příklad:
admin@node1:~># svc_log dataheadsvc "Connection Limit(1000) cleared" -start "30 minutes ago" -sh -st minute
svc_log v1.0.24 (svc_tools v1.8.6.0) Started 2021-02-26 18:47:10
Running on nodes: <All nodes>
Time range: 2021-02-24 21:00:00 - 2021-02-24 21:30:59
Filter string(s): 'Connection Limit(1000) cleared'
Show nodename(s): True
Search reclaim logs (if any): False
Count of message occurrences per minute:
# Log
Time Entries
------------------------------
2021-02-24 21:01:xx 0
2021-02-24 21:02:xx 0
2021-02-24 21:03:xx 0
2021-02-24 21:04:xx 41
2021-02-24 21:05:xx 134
2021-02-24 21:06:xx 8
2021-02-24 21:07:xx 10
2021-02-24 21:08:xx 11
2021-02-24 21:09:xx 0
2021-02-24 21:10:xx 0
2021-02-24 21:11:xx 0
2021-02-24 21:12:xx 412
2021-02-24 21:13:xx 650
2021-02-24 21:14:xx 0
2021-02-24 21:15:xx 0
2021-02-24 21:16:xx 0
2021-02-24 21:17:xx 0
2021-02-24 21:18:xx 0
2021-02-24 21:19:xx 0
2021-02-24 21:20:xx 0
2021-02-24 21:21:xx 0
2021-02-24 21:22:xx 0
2021-02-24 21:23:xx 0
2021-02-24 21:24:xx 0
2021-02-24 21:25:xx 0
2021-02-24 21:26:xx 0
2021-02-24 21:27:xx 0
2021-02-24 21:28:xx 0
2021-02-24 21:29:xx 0
2021-02-24 21:30:xx 0
Total: 1266
Resolution
Tento problém se obecně týká způsobu, jakým aplikace otevírá a zavírá síťová připojení. Aplikace nebo nástroj pro vyrovnávání zatížení uživatele by měl zpracovat připojení a po dokončení by měl připojení zavřít. Aplikace by se před změnou systému ECS měla vždy nejprve pokusit vyřešit problém na své straně, protože to způsobí větší zatížení systému ECS.
K identifikaci problému použijte netstat během události, abyste získali IP adresy, které navázaly připojení.
Příkaz:
# sudo ss | grep 9020
Příklad:
admin@ecsnode1:~> sudo ss | grep 9020 ESTAB 0 0 [::ffff:10.xx.xxx.71]:9020 [::ffff:10.xxx.xxx.9]:56134
Chcete-li zobrazit počet připojení v aktuálním čase, použijte tento příkaz:
admin@ecsnode1:~> sudo ss -tn sport = :9020 | wc -l