文件描述符

编辑

这仅适用于 Linux 和 macOS,如果在 Windows 上运行 Elasticsearch,则可以安全地忽略它。在 Windows 上,JVM 使用一个仅受可用资源限制的 API

Elasticsearch 使用大量文件描述符或文件句柄。文件描述符耗尽可能是灾难性的,并且很可能导致数据丢失。请确保将运行 Elasticsearch 的用户的打开文件描述符数量限制增加到 65,535 或更高。

对于 .zip.tar.gz 包,在启动 Elasticsearch 之前,以 root 身份设置 ulimit -n 65535,或者在 /etc/security/limits.conf 中将 nofile 设置为 65535

在 macOS 上,您还必须将 JVM 选项 -XX:-MaxFDLimit 传递给 Elasticsearch,以便它可以使用更高的文件描述符限制。

RPM 和 Debian 包已经默认将最大文件描述符数设置为 65535,不需要进一步配置。

您可以使用 节点统计 API 检查每个节点配置的 max_file_descriptors,方法是

resp = client.nodes.stats(
    metric="process",
    filter_path="**.max_file_descriptors",
)
print(resp)
response = client.nodes.stats(
  metric: 'process',
  filter_path: '**.max_file_descriptors'
)
puts response
const response = await client.nodes.stats({
  metric: "process",
  filter_path: "**.max_file_descriptors",
});
console.log(response);
GET _nodes/stats/process?filter_path=**.max_file_descriptors