三人行必有我师

ROOT用户启动ES后出现Too many open files异常

Elasticsearch | 作者 zhangg7723 | 发布于2018年07月05日 | 阅读数:7194

在一个单机环境通过root用户启动ES,共有690个分片,却出现Too many open files异常,部分分片无法启动,系统的句柄数配置为65534,感觉应该是够了,却不知为何出现这种异常,可能跟启动用户有关。
已邀请:

medcl - 今晚打老虎。

赞同来自:

这个原因有很多,首先你要确认的是 Elasticsearch 具体的可用句柄数到底是多少,Elasticsearch 有 API 可以看的。

http://localhost:9200/_nodes/stats?pretty

在 process 节点下面找到:

...
"process" : {
"timestamp" : 1530755737626,
"open_file_descriptors" : 620,
"max_file_descriptors" : 10240,
...

可以看到当前打开的和最大的设置。

kennywu76 - Wood

赞同来自:

单机环境,共有690个结点是什么鬼? 单机上部署了690个结点吗? 每个结点有多少数据呢?  一般来说一台机器上65534个文件句柄对于ES来说足够用了,除非很夸张了的在单机上存储了大量的小索引。   另外要确认ES的启动用户,以及改用户的文件句柄书设置的确正确并生效了。 切换到对应的用户下,用ulimit -n 复核一下。

qq171563857 - 90后程序猿

赞同来自:

ulimit -a 查看max user processes属性
每个用户的都不一样
这个也可以看看
 

要回复问题请先登录注册