ElasticSearch之文件描述符的数量

ElasticSearch在运行过程中,涉及大量文件的打开、关闭、读、写等操作。因此当ElasticSearch进程的文件描述符数量不足时可能导致丢失数据等故障现象。

因此为保障ElasticSearch正常运行,需保证ElasticSearch可以使用至少65535个文件描述符。

查看Linux系统当前用户的文件描述符的数量,命令如下:

shell 复制代码
ulimit -a

执行结果的样例,如下:

shell 复制代码
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 15172
max locked memory       (kbytes, -l) 65536
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
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) 15172
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

或者执行如下命令:

shell 复制代码
ulimit -n

执行结果的样例,如下:

shell 复制代码
1024

在启动ElasticSearch前,使用root用户指定文件描述符的数量,命令样例如下:

shell 复制代码
ulimit -n 65535
./bin/elasticsearch

使用root用户修改Linux系统的配置文件/etc/security/limits.conf,增加如下内容:

shell 复制代码
elasticsearch        hard    nofile           65535
elasticsearch        soft    nofile           65535

查看当前Elasticsearch进程的文件描述符的最大数量,命令如下:

shell 复制代码
curl -X GET "https://localhost:9200/_nodes/stats/process?filter_path=**.max_file_descriptors&pretty" --cacert $ES_HOME/config/certs/http_ca.crt -u "elastic:ohCxPH=QBE+s5=*lo7F9"

执行结果的样例,如下:

shell 复制代码
{
  "nodes" : {
    "aKgBu7LgS9a6iPYH8n2JPw" : {
      "process" : {
        "max_file_descriptors" : 1048576
      }
    }
  }
}

相关资料

相关推荐
石兴稳27 分钟前
Ceph client 写入osd 数据的两种方式librbd 和kernel rbd
linux·ceph
大G哥2 小时前
python 数据类型----可变数据类型
linux·服务器·开发语言·前端·python
爱吃土豆的马铃薯ㅤㅤㅤㅤㅤㅤㅤㅤㅤ2 小时前
idea 弹窗 delete remote branch origin/develop-deploy
java·elasticsearch·intellij-idea
BillKu2 小时前
Linux设置Nginx开机启动
linux·运维·nginx
baidu_375528812 小时前
光感传感器 芯片stk3171 linux驱动程序
linux·运维·服务器
飞腾开发者3 小时前
飞腾平台Arm NN软件栈安装使用指南
linux·运维·人工智能·机器学习·计算机视觉
夜暝3 小时前
Iotop使用
linux
鸠摩智首席音效师3 小时前
.NET Core 应用程序如何在 Linux 中创建 Systemd 服务 ?
linux·运维·.netcore
不是三毛没有半4 小时前
Centos 7 安装wget
linux
叫我龙翔4 小时前
【计网】实现reactor反应堆模型 --- 多线程方案优化 ,OTOL方案
linux·运维·网络