由于系统中打开的文件太多,Kubernetes 无法启动
Kubernetes can't start due to too many open files in system
我正在尝试使用 Kubernetes 创建一堆 pods、服务和部署,但是当我 运行 kubectl describe
命令时,不断出现以下错误。
for "POD" with RunContainerError: "runContainer: API error (500): Cannot start container bbdb58770a848733bf7130b1b230d809fcec3062b2b16748c5e4a8b12cc0533a: [8] System error: too many open files in system\n"
我已经终止了所有 pods 并尝试重新启动机器,但这并没有解决问题。我不是 Linux 专家,所以我只是想知道如何找到所有打开的文件并关闭它们?
您可以通过运行确认哪个进程正在占用文件描述符:
lsof | awk '{print }' | sort | uniq -c | sort -n
这将为您提供打开的 FD 计数的排序列表以及进程的 pid。然后你可以查找每个进程 w/
ps -p <pid>
如果主要的猪是docker/kubernetes,那么我建议跟随caesarxuchao引用的issue。
我正在尝试使用 Kubernetes 创建一堆 pods、服务和部署,但是当我 运行 kubectl describe
命令时,不断出现以下错误。
for "POD" with RunContainerError: "runContainer: API error (500): Cannot start container bbdb58770a848733bf7130b1b230d809fcec3062b2b16748c5e4a8b12cc0533a: [8] System error: too many open files in system\n"
我已经终止了所有 pods 并尝试重新启动机器,但这并没有解决问题。我不是 Linux 专家,所以我只是想知道如何找到所有打开的文件并关闭它们?
您可以通过运行确认哪个进程正在占用文件描述符:
lsof | awk '{print }' | sort | uniq -c | sort -n
这将为您提供打开的 FD 计数的排序列表以及进程的 pid。然后你可以查找每个进程 w/
ps -p <pid>
如果主要的猪是docker/kubernetes,那么我建议跟随caesarxuchao引用的issue。