Elasticsearch 配置文件

以下是 Elasticsearch 配置文件(elasticsearch.yml 中各参数的详细解释:


1. 集群相关参数

cluster.name
  • 说明: 集群的名称,用于标识该 Elasticsearch 集群。
  • 当前值: es-795e6273
  • 用途: 同一集群的所有节点必须具有相同的 cluster.name
cluster.routing.allocation.awareness.attributes
  • 说明: 用于分片分配的感知属性,通常用来根据物理或逻辑条件(如节点名称或区域)分布分片。
  • 当前值: k8s_node_name
  • 用途:
    • 分片会根据 k8s_node_name 这一属性均匀分布。
    • 防止所有分片被分配到同一个节点或区域。

2. 节点发现和网络相关参数

discovery.seed_providers
  • 说明: 节点发现的种子提供者,用于指定节点如何发现其他节点。
  • 当前值: file
  • 用途: 使用 file 模式读取静态节点配置。
http.publish_host
  • 说明: 用于其他节点与客户端访问该节点的 HTTP 公开地址。
  • 当前值: ${POD_NAME}.${HEADLESS_SERVICE_NAME}.${NAMESPACE}.svc
  • 用途: 在 Kubernetes 环境中动态配置服务访问地址。
network.host
  • 说明: 指定网络接口绑定的地址。
  • 当前值: "0"
  • 用途: 绑定到所有网络接口地址。
network.publish_host
  • 说明: 节点之间通信的网络地址。
  • 当前值: ${POD_IP
  • 用途: 动态绑定为 Kubernetes 中的 Pod IP。

3. 节点角色与属性

node.name
  • 说明: 节点名称,用于唯一标识 Elasticsearch 节点。
  • 当前值: ${POD_NAME
  • 用途: Kubernetes 中根据 Pod 名称动态设置节点名称。
node.roles
  • 说明: 指定节点的角色。
  • 当前值:
    • data: 处理数据存储。
    • master: 参与集群管理。
    • ingest: 执行数据预处理(如管道)。

https://weread.qq.com/web/reader/2a532390813ab8882g016839kaab325601eaab3238922e53

node.attr.k8s_node_name
  • 说明: 自定义属性 k8s_node_name
  • 当前值: ${NODE_NAME
  • 用途: 用于分片分配感知。

4. 数据路径和日志路径

path.data
  • 说明: 数据存储路径。
  • 当前值: /usr/share/elasticsearch/data
  • 用途: 保存索引、分片数据。
path.logs
  • 说明: 日志存储路径。
  • 当前值: /usr/share/elasticsearch/logs
  • 用途: 保存日志文件。
path.repo
  • 说明: 快照仓库路径。
  • 当前值:
    • /mnt/backup/es-795e6273
    • /mnt/backup/es-c6a76f44
  • 用途: 定义快照备份的存储位置。

5. X-Pack 安全和认证

xpack.license.upload.types
  • 说明: 支持的许可证类型。
  • 当前值:
    • trial
    • enterprise
  • 用途: 限制许可证上传类型。
xpack.security.authc.realms
  • 说明: 配置认证方式。
  • 当前值:
    • file: 从文件中加载用户信息。
    • native: 从内部存储中加载用户信息。
  • 用途: 配置多种认证方式和优先级。
xpack.security.authc.reserved_realm.enabled
  • 说明: 是否启用保留的认证域(默认用于超级用户)。
  • 当前值: "false"
  • 用途: 禁用内置的保留认证域。
xpack.security.enabled
  • 说明: 是否启用 X-Pack 安全功能。
  • 当前值: "true"
  • 用途: 启用认证和加密功能。

6. HTTP 和传输层加密

xpack.security.http.ssl
  • 说明: 配置 HTTP 层的 SSL/TLS 加密。
  • 当前值:
    • certificate: 证书路径。
    • certificate_authorities: 证书颁发机构路径。
    • enabled: false(当前未启用)。
    • key: 私钥路径。
xpack.security.transport.ssl
  • 说明: 配置节点间传输的 SSL/TLS 加密。
  • 当前值:
    • certificate: 节点传输证书路径。
    • certificate_authorities: CA 证书路径。
    • key: 私钥路径。
    • enabled: "true"(启用加密)。
    • verification_mode: certificate(严格验证)。

总结

这份配置文件是为 Kubernetes 环境 优化的 Elasticsearch 配置,重点在于:

  1. 动态网络配置(通过 Pod 环境变量)。
  2. 分片分配策略优化 (基于 k8s_node_name 属性)。
  3. 安全功能启用(包括认证与加密)。
  4. 支持快照仓库和多种节点角色

如果需要进一步调整或优化,可以根据实际的资源和业务需求进行微调。

相关推荐
阿里云大数据AI技术1 小时前
ODPS 十五周年实录 | 为 AI 而生的数据平台
大数据·数据分析·开源
哈哈很哈哈2 小时前
Spark 运行流程核心组件(三)任务执行
大数据·分布式·spark
即兴小索奇2 小时前
AI应用商业化加速落地 2025智能体爆发与端侧创新成增长引擎
人工智能·搜索引擎·ai·商业·ai商业洞察·即兴小索奇
Elasticsearch3 小时前
使用 FastAPI 的 WebSockets 和 Elasticsearch 来构建实时应用
elasticsearch
我星期八休息3 小时前
大模型 + 垂直场景:搜索/推荐/营销/客服领域开发新范式与技术实践
大数据·人工智能·python
最初的↘那颗心4 小时前
Flink Stream API - 源码开发需求描述
java·大数据·hadoop·flink·实时计算
白鲸开源4 小时前
收藏!史上最全 Apache SeaTunnel Source 连接器盘点 (2025版),一篇通晓数据集成生态
大数据·数据库·开源
爱疯生活4 小时前
车e估牵头正式启动乘用车金融价值评估师编制
大数据·人工智能·金融
Lx3525 小时前
MapReduce作业调试技巧:从本地测试到集群运行
大数据·hadoop
计算机程序员小杨5 小时前
计算机专业的你懂的:大数据毕设就选贵州茅台股票分析系统准没错|计算机毕业设计|数据可视化|数据分析
java·大数据