为什么要修改?
- 原因1:Elasticsearch 在节点和 HTTP 客户端之间进行通信也使用了大量的套接字(注:sockets)。 所有这一切都需要足够的文件描述符。
- 原因2:许多现代的 Linux 发行版本,每个进程默认允许一个微不足道的 1024 文件描述符。这对一个小的 Elasticsearch 节点来说实在是太低了,更不用说一个处理数以百计索引的节点。
- 其实,我在用腾讯云轻量级服务器时发现,使用
ulimit -a
查看到 open files (-n) 100001,所以可以跳过此步骤。但是,我自己还是试验了一下。
⑴ 步骤1: 设置环境变量。
- 使用命令
sudo vim /etc/profile
,然后在文件末尾添加 ulimit -n 65535,最后使用source /etc/profile
使之生效。
⑵ 步骤2: 修改limits.conf配置文件。
- 使用命令
sudo vim /etc/security/limits.conf
,然后在文件末尾添加以下内容,用来限制打开文件数65535:* soft nofile 65535 * hard nofile 65536
soft,hard和-
soft指的是当前系统生效的设置值,软限制也可以理解为警告值。
hard表明系统中所能设定的最大值。soft的限制不能比hard限制高
–表明同时设置了soft和hard的值。
不过,我看了一下,腾讯云这个镜像原本就在文件 /etc/security/limits.conf 末尾加过一下东西了:
⑶ 步骤3: 验证是否成功。
使用命令 su elastic
切换到elastic用户,使用 ulimit -a
查看是否修改成功。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/198791.html