对于集群中具有两个节点的专用计算机,ES_HEAP_SIZE 的正确值

2023-12-26

我有一台 ES 2.2.0 的专用机器。它运行在 Windows Server 2012 R2 上,拥有 128GB 内存。关于ES,我计划在这台机器上的集群中有两个节点。根据elasticsearch.yml中ES的推荐:

确保ES_HEAP_SIZE环境变量设置为大约一半的内存

我要设置ES_HEAP_SIZE = 50g

这个值合适吗?

UPDATE

我进一步搜索并找到了此信息

https://discuss.elastic.co/t/can-i-run-multiple-elaticsearch-nodes-on-the-same-machine/67 https://discuss.elastic.co/t/can-i-run-multiple-elaticsearch-nodes-on-the-same-machine/67

看起来 ”Max heap size for each node instance should be < 32Gb"

有人可以对此发表评论吗?


最好的做法是切勿提供超过 32GB 的空间 https://www.elastic.co/guide/en/elasticsearch/guide/current/heap-sizing.html#compressed_oops的 RAM 分配给 Elasticsearch(安全起见为 31GB),其余部分留给文件系统缓存和操作系统。由于 Lucene 不使用太多堆,因此它将使用大部分剩余的可用空间来管理其段。

32GB 限制的原因是,只有当您不分配超过 32GB 的 RAM 时,Java 才能使用压缩指针,如果有更多 RAM,Java 将恢复使用普通指针,并且 CPU 内存带宽性能将下降,即使您分配的 RAM 不超过 32GB。有更多的记忆。

因此,既然你有一台拥有充足内存的大机器,你可以做的就是在上面运行两个节点,为每个节点分配 31GB,这样就留下 66GB 用于文件系统缓存,Lucene 会很高兴地吞噬它来完成它的事情。

现在,只需知道,如果您在一台计算机上运行集群,并且该机器出现故障,则您的集群将崩溃,您的客户端应用程序也会崩溃。然而,如果你有两台这么大的机器(似乎是这样 https://stackoverflow.com/questions/35677833/how-to-set-up-two-machines-for-a-cluster-with-two-nodes-on-each-machine),然后确保设置cluster.routing.allocation.same_shard.host: true为了确保主分片和副本分片不会落在同一主机上,因为您不会从高可用性中受益。

更多信息:

  • 了解 ES 决定的原因默认使用压缩oops https://github.com/elastic/elasticsearch/issues/13187
  • 阅读后面的详细信息压缩哎呀 https://docs.oracle.com/javase/8/docs/technotes/guides/vm/performance-enhancements-7.html#compressedOop增强
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

对于集群中具有两个节点的专用计算机,ES_HEAP_SIZE 的正确值 的相关文章

  • 如何连接Kafka和Elasticsearch?

    我是Kafka的新手 我使用kafka通过logstash收集netflow 可以 并且我想将数据从kafka发送到elasticsearch 但是存在一些问题 我的问题是如何将 Kafka 与 Elasticsearch 连接起来 net
  • 使elasticsearch中的所有对象嵌套对象

    是否可以让elasticsearch中的所有嵌套对象自动映射到默认嵌套的类型 而不是对象 是的 您可以使用以下方法来做到这一点动态模板 https www elastic co guide en elasticsearch referenc
  • 分割多重多边形

    我可以直接取出零件并把它们取出来作为它们自己的功能吗 或者这会涉及更复杂的东西吗 我正在尝试将其中一张地图拆分为较小的部分以对它们进行索引 https github com simonepri geo maps https github c
  • 分面搜索的后过滤器和全局聚合之间有什么区别?

    搜索界面中的一个常见问题是您想要返回结果的选择 但可能想返回有关所有文档的信息 例如 我想查看所有红色衬衫 但想知道什么 其他颜色可供选择 这有时被称为 多面结果 或者 多面导航 这Elasticsearch 参考中的示例 https ww
  • 在 ElasticSearch 7+ 中,如何搜索所有文本字段?

    我想在 Elasticsearch 7 3 中存储的文档中搜索单词 我希望在以前版本的 Elasticsearch 上运行的一个示例是 query bool must match all oliver must not should fro
  • 使用 KMS 的 AWS RDS 加密是否会影响性能?

    Amazon states https aws amazon com about aws whats new 2015 01 06 amazon rds encryption with kms mysql postgresql that 加
  • Logstash删除类型并保留_type

    我有一个logstash 客户端和服务器 客户端将带有logstash的udp输出的日志文件发送到服务器 服务器也运行logstash来获取这些日志 在服务器上 我有一个 json 过滤器 它会在实际日志的字段中提取 json 格式的消息
  • 如何在弹性搜索中生成多个布尔查询的查询

    我想使用 spring 框架在 elasticsearch 中动态生成多个布尔运算的查询 我在elasticsearch中的数据就像 masterID
  • 全文搜索 DynamoDB

    以下情况 我正在为我的客户将元素存储在 DyanmoDb 中 HashKey 是元素 ID Range Key 是客户 ID 除了这些字段之外 我还存储一个字符串数组 gt 标签 例如 Pets House 和多行文本 我想在我的应用程序中
  • 如何编写Elasticsearch多个必须脚本查询?

    我想使用查询来比较多个字段 我有字段 1 到 4 我想搜索字段 1 大于字段 2 的数据 并且下面的查询工作正常 size 0 source field1 field2 field3 field4 sort query bool filte
  • 在弹性搜索中使用 GET/POST 时的不同结果

    我正在通过 Elastic Search Head 插件尝试弹性搜索 当我通过 POST 提交查询时 结果符合预期 但是 当我使用 GET 尝试相同的查询时 我总是会返回索引中的所有值 那么 如何通过 GET 将查询传递到弹性搜索服务器 以
  • 我们可以同时使用拼音标记和同义词吗?

    我正在尝试同时启用语音分析器和同义词 这似乎不起作用 它们一起使用有错吗 在下面的实现中 我希望使用同义词转换搜索查询 然后使用语音分析器来检索结果 但我的同义词在这里完全被忽略了 如果我在创建索引时删除语音分析器 那么同义词就可以正常工作
  • Nest Elastic - 构建动态嵌套查询

    我必须使用 Nest 查询嵌套对象 但是查询是以动态方式构建的 下面的代码演示了以静态方式对嵌套 书籍 进行查询 QueryContainer qry qry new QueryStringQuery DefaultField name D
  • 弹性搜索 - search_after 参数

    我读了这个doc https www elastic co guide en elasticsearch reference 5 0 search request search after html要理解 search after 并有两个
  • search_after 在弹性搜索中如何工作?

    我一直在尝试在我们的应用程序中使用 Elasticsearch 但分页限制为 10k 对我们来说实际上是一个问题 并且由于必须超时问题 滚动 API 也不是推荐的选择 我发现 Elasticsearch 有一个叫做 search after
  • Elastic Beanstalk 添加多个 ssl 证书

    我有一个 Docker Django api 应用程序 可以从多个域 abc xyx com 或 def lmn com 调用 我已从 Elastic beanstalk 中的配置控制台成功添加了 abc xyz com 的 ssl 证书
  • 如何增加vm.max_map_count?

    我正在尝试在 Ubuntu EC2 计算机 t2 medium 中运行弹性搜索 但我收到消息 最大虚拟内存区域 vm max map count 65530 太低 至少增加到 262144 我怎样才能增加vm max map count v
  • Elasticsearch Nest 通配符查询(带空格)

    简洁版本 我想使用 Nest 编写一个弹性搜索查询来获取完整的索引项 ContentIndexables在我的例子中作为我的自定义类型 已被索引 该查询受 some string 术语查询的约束 即 String StartsWith 其中
  • Elasticsearch 无法写入日志文件

    我想激活 elasticsearch 的日志 当我运行 elasticsearch 二进制文件时 我意识到我在日志记录方面遇到问题 无法加载配置 这是输出 sudo usr share elasticsearch bin elasticse
  • 如何使用scala获取elasticsearch中_delete_by_query api的状态

    我正在 scala 中向 elasticsearch 发送 HTTP post Http s http elkIp 5051 indexName delete by query postData s query terms zip id k

随机推荐

  • Ckeditor:使用 Firefox 内置的拼写检查器

    我觉得这里有点进退两难 我想使用 Firefox 的内置拼写检查功能 而不禁用 Ckeditor 的上下文菜单 因为这会导致无法使用表格 有没有一种方法可以两全其美 您可以尝试设置禁用本机拼写检查器 http docs cksource c
  • 更改 tr 背景颜色

    我有这样的事情 tr style background color Yellow 当我单击一行时 我想更改其背景颜色 我这样做 function SetBackgroundColor rowId rowId css background c
  • 错误 LNK1104:无法打开文件“libboost_serialization-vc110-mt-gd-1_53.lib”

    我使用 Boost 序列化创建一个简单的 XML 文件 但是在调试时出现此错误 错误 LNK1104 无法打开文件 libboost serialization vc110 mt gd 1 53 lib 我已尝试按照以下答案解决我的问题这个
  • 如何使用 django 发送包含动态内容的 html 电子邮件?

    谁能帮我发送带有动态内容的 html 电子邮件 一种方法是将整个 html 代码复制到一个变量中 并在 Django 视图中填充其中的动态代码 但这似乎不是一个好主意 因为它是一个非常大的 html 文件 我将不胜感激任何建议 Thanks
  • 逗号分隔具有相同行数的值

    数据库结构 items id name users id username 用户项目 id user id item id 我目前有一个count on user items显示拥有最多项目的用户 john 13 bill 9 lily 9
  • 使用 OpenCV 检查图像的相似性

    OpenCV 是否支持比较两个图像 返回一些值 可能是百分比 来指示这些图像的相似程度 例如 如果相同的图像被传递两次 则返回 100 如果图像完全不同 则返回 0 我已经在 StackOverflow 上阅读了很多类似的主题 我也做了一些
  • 如何在 Laravel 中进行简单的重定向?

    我在 Laravel 中有一个函数 最后我想重定向到另一个函数 我如何在 Laravel 中做到这一点 我尝试过类似的东西 return redirect gt route listofclubs 这不起作用 listofclubs 的路线
  • 如何在 Bootstrap 中垂直居中容器?

    我正在寻找一种垂直居中的方法container里面的divjumbotron并将其设置在页面中间 The jumbotron必须适应屏幕的整个高度和宽度 这 containerdiv 的宽度为1025px并且应该位于页面的中间 垂直居中 我
  • 在 TensorFlow 中,如何使用 python 从张量中获取非零值及其索引?

    我想做这样的事情 假设我们有一个张量 A A 1 0 0 4 我想从中获取非零值及其索引 Nonzero values 1 4 Nonzero indices 0 0 1 1 Numpy 中也有类似的操作 np flatnonzero A
  • Google 跟踪代码管理器:事件跟踪不起作用

    我尝试使用标签管理器跟踪我网站上所有邮件链接的点击次数 但它根本不起作用 使用 firebug 查看网络传输 我可以看到没有任何内容提交给 Google 当然 我的 Analytics 界面中也没有出现任何内容 我已使用 jQuery 将推
  • C 动作和变量

    为什么当我使用 char paraula 15 int longparaula 0 copia paraula paraula longparaula 它说longparaula 0 paraula 没问题 并且包含我输入的字符的值 但 l
  • 将大的 2^63 十进制转换为二进制

    我需要将大十进制转换为二进制 我该怎么做 有问题的十进制是这个 3324679375210329505 怎么样 String binary Long toString 3324679375210329505L 2
  • 获取有关自动变量的帮助不起作用

    我正在研究 PowerShell 建议致电网站和书籍Get Help about Automatic Variables例如 获取返回的自动变量列表 我尝试打电话Get Help使用以下参数 但我总是得到返回的 cmdlet 列表 abou
  • PyQt 事件发出两次

    我正在尝试实现 拖放 项目QListWidget to QGraphicsView 我继承了自己的班级MooView from QGraphicsView并封装dragMove dragEnter and drop事件 但在测试时 我注意到
  • 使用“ec2-user”登录,而不是使用 aws 中的用户数据 root 登录

    我有一个基于 RHEL 6 4 64 位 AMI 的 Amazon EC2 实例 写完一些shell脚本后 我用它创建了自己的 AMI 映像 我正在编写用户数据部分 它将删除 home ec2 user sudo rm rf home ec
  • OpenSSL 在 PKCS12 导出期间挂起,并显示“将‘屏幕’加载到随机状态”

    我正在使用 OpenSSL 不是 makecert 生成自签名 SSL 证书 以在 IIS 中使用 openssl req x509 newkey rsa 2048 keyout key pem out cert pem days 365
  • 创建和使用 Laravel 4 命令

    编辑 找出我出错的地方并将答案放在最后 我正在尝试创建一个 Laravel 命令 我可以看到它与 Laravel 3 中的 任务 相比发生了很大的变化 但是我似乎无法让它运行 这些是我已采取的步骤 php artisan 命令 make 导
  • 禁用远程调试时应用程序在启动时崩溃

    我正在尝试在我的手机 iPhone 上安装我的反应本机应用程序 它安装正常 但在启动时崩溃并显示此错误消息 undefined is not an object evaluating navigator userAgent indexOf
  • java.security.cert.CertificateException:证书不符合算法约束

    我有一个地图应用程序可以添加地理信息系统 9 3 给定 URL 的底图 我想要添加的 URL 之一来自客户的 URL 并且是安全的 我的地图应用程序之前使用 Java 6 并且能够毫无问题地添加安全 URL 我现在升级到 Java 7 并得
  • 对于集群中具有两个节点的专用计算机,ES_HEAP_SIZE 的正确值

    我有一台 ES 2 2 0 的专用机器 它运行在 Windows Server 2012 R2 上 拥有 128GB 内存 关于ES 我计划在这台机器上的集群中有两个节点 根据elasticsearch yml中ES的推荐 确保ES HEA