Dockerized .Net core «Нет места на устройстве» ошибка - PullRequest
0 голосов
/ 30 мая 2019

В проекте мы столкнулись с проблемой, связанной с аварийным завершением агента докера «На устройстве не осталось места».

На одном из узлов кластера K8S мы выполнили команду:

# ps -eLf | grep './DotNetApp' | awk '{print $10}' | wc -l
13882

Это означает, что все мои процессы .Net имеют 13882 потока.На узле с этой утечкой ограничено максимальное количество потоков.

Чтобы проверить лимит, вы можете выполнить:

root@ip-172-20-104-47:~# cat /proc/sys/kernel/pid_max
32768

«Потоки» - это сумма, но pid_max относится к пулу идентификаторов.И стручки могут легко достигнуть этого предела и вызвать аварийную остановку на узле.

Мы используем CentOS для работника K8S.Мы попробовали Ubuntu и получили тот же результат.

У вас есть идеи, почему у нас такая утечка потоков на узлах Linux в .net core 2.2?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...