Elasticsearch 在部署时,对 Linux 的设置有哪些优化方法?

1、64 GB 内存 的 机 器 是 非 常 理 想 的 , 但是 32 GB 和 16 GB 机器 也 是 很 常 见 的 。少于 8 GB 会适 得 其 反 。

2、如 果 你 要 在 更 快 的 CPUs 和更 多 的 核 心 之 间 选 择 , 选 择 更 多 的 核 心 更 好 。 多个内 核 提 供 的 额 外 并 发 远 胜 过 稍 微 快 一 点 点 的 时 钟 频 率 。

3、 如果 你 负 担 得 起 SSD, 它将 远 远 超 出 任 何 旋 转 介 质 。 基于 SSD 的节 点 , 查询和 索 引 性 能 都 有 提 升 。 如 果 你 负 担 得 起 , SSD 是一 个 好 的 选 择 。

4、即使 数 据 中 心 们 近 在 咫 尺 ,也要 避 免 集 群 跨 越 多 个 数 据 中 心 。绝对 要 避 免 集 群跨越 大 的 地 理 距 离 。

5、请 确 保 运 行 你 应 用 程 序 的 JVM 和服 务 器 的 JVM 是完 全 一 样 的 。 在Elasticsearch 的几 个 地 方 , 使 用 Java 的本 地 序 列 化 。

6、通 过 设 置 gateway.recover_after_nodesgateway.expected_nodes、

gateway.recover_after_time 可以 在 集 群 重 启 的 时 候 避 免 过 多 的 分 片 交 换 , 这 可能会 让 数 据 恢 复 从 数 个 小 时 缩 短 为 几 秒 钟 。

7、 Elasticsearch 默认 被 配 置 为 使 用 单 播 发 现 , 以 防 止 节 点 无 意 中 加 入 集 群 。 只有在 同 一 台 机 器 上 运 行 的 节 点 才 会 自 动 组 成 集 群 。 最 好 使 用 单 播 代 替 组 播 。

8、不 要 随 意 修 改 垃 圾 回 收 器 ( CMS)和 各 个 线 程 池 的 大 小 。

9、把 你 的 内 存 的 ( 少 于 ) 一 半 给 Lucene(但 不 要 超 过 32 GB!) , 通 过ES_HEAP_SIZE 环境 变 量 设 置 。

10、内 存 交 换 到 磁 盘 对 服 务 器 性 能 来 说 是 致 命 的 。 如 果 内 存 交 换 到 磁 盘 上 , 一 个100 微秒 的 操 作 可 能 变 成 10 毫秒 。 再想 想 那 么 多 10 微秒 的 操 作 时 延 累 加 起来。 不难 看 出 swapping 对于 性 能 是 多 么 可 怕 。

11、 Lucene 使用 了大量的文件 。 同 时 , Elasticsearch 在节 点 和 HTTP 客 端之间 进 行 通 信 也 使 用 了 大 量 的 套 接 字 。 所有 这 一 切 都 需 要 足 够 的 文 件 描 述 符 。你应该 增 加 你 的 文 件 描 述 符 , 设 置 一 个 很 大 的 值 , 如 64,000。

补充 : 索 引 阶 段 性 能 提 升 方 法

1、使 用 批 量 请 求 并 调 整 其 大 小 : 每 次 批 量 数 据 5-- 15 MB 大是 个 不 错 的 起 始 点 。

2、存 储 : 使 用 SSD

3、段和 合 并 :Elasticsearch 默认 值 是 20 MB/s,对机 械 磁 盘 应 该 是 个 不 错 的 设置 。如果 你 用 的 是 SSD,可以 考 虑 提 高 到 100-- 200 MB/s。如果 你 在 做 批 量 导 入 ,完全 不 在 意 搜 索 , 你 可 以 彻 底 关 掉 合 并 限 流 。 另 外 还 可 以 增 加index.translog.flush_threshold_size 设置 , 从 默 认 的 512 MB 到更 大 一 些 的值, 比 如 1 GB,这 可 以 在 一 次 清 空 触 发 的 时 候 在 事 务 日 志 里 积 累 出 更 大 的 段 。

4、如 果 你 的 搜 索 结 果 不 需 要 近 实 时 的 准 确 度 , 考 虑 把 每 个 索 引 的index.refresh_interval 改到 30s。

5、如果 你 在 做 大 批 量 导 入 ,考虑 通 过 设 置 index.number_of_replicas: 0 关闭 副本。

相关推荐
Sui_Network10 分钟前
Walrus 2025 年度回顾
大数据·前端·人工智能·深度学习·区块链
Elasticsearch13 分钟前
Elasticsearch:在 Streams 中使用 ML 自动化 log 解析
elasticsearch
一条闲鱼_mytube24 分钟前
CI/CD: K8S + Tekton + ArgoCD 深入浅出完全指南
大数据·argocd
一条闲鱼_mytube1 小时前
CI/CD: Argo 深入浅出教程
大数据·elasticsearch·argocd
是阿威啊1 小时前
【用户行为归因分析项目】- 【企业级项目开发第二站】项目通用代码开发
大数据·服务器·数据仓库·hive·hadoop
武子康1 小时前
大数据-201 决策树从分裂到剪枝:信息增益/增益率、连续变量与CART要点
大数据·后端·机器学习
老吴学AI1 小时前
第二篇:智能五层模型:定义你的AI应用战略高度
大数据·人工智能·aigc
不一样的故事1261 小时前
1. 公司质量体系的维护与申办监管•
大数据·运维·人工智能
向量引擎小橙1 小时前
数字孪生进阶版:“全脑城市”如何改变我们的生活
大数据·人工智能·深度学习·生活·集成学习
GEO AI搜索优化助手1 小时前
数据、AI与人的新协同——构建GEO时代的智能营销引擎
人工智能·算法·搜索引擎·生成式引擎优化·geo搜索优化