elasticsearch
ES 8.x 从入门到精通
简单 单节点模式下启动ES服务
系统初始化
Install Elasticsearch with Docker
重要Elasticsearch配置
配置文件参数介绍
多实例集群
本文档使用 MrDoc 发布
-
+
首页
重要Elasticsearch配置
## 数据、日志路径设置 如果您正在使用 `.zip` 或 `.tar.gz` 归档, data 和 logs 目录在都在 `$ES_HOME` 下。如果这些比较重要的文件夹保留在默认位置,则 Elasticsearch 升级到新版本时,很有可能被删除。 在生产环境中,你可以通过下面这种方式修改数据和日志文件所在的位置: ``` path: logs: /var/log/elasticsearch data: /var/data/elasticsearch ``` `path.data` 可以设置为多个路径,在这种情况下,所有路径将用于存储数据 (属于单个分片的文件将全部存储在同一数据路径上): ``` path: data: - /mnt/elasticsearch_1 - /mnt/elasticsearch_2 - /mnt/elasticsearch_3 ``` ## 集群名称 当节点与集群中的所有其他节点共享 `cluster.name` 时,该节点就能加入集群。 默认名称是 elasticsearch,但是你应该将其更改为描述集群用途的适当名称。 ``` cluster.name: logging-prod ``` 确保不要在不同的环境中重复使用相同的集群名称,否则最终可能会导致节点加入错误的集群 ## 节点名称 Elasticsearch 使用 `node.name` 作为 Elasticsearch 特定实例的可读标识符,因此它被包含在许多 API 的响应中。它默认机器在 Elasticsearch 启动时的主机名,但可以在 elasticsearch.yml 中更改配置,如下所示: ``` node.name: prod-data-2 ``` ## 主机网络 默认情况下, Elasticsearch 仅绑定回送地址,例如 `127.0.0.1` 和 `[::1]`,这样足以在服务器上运行单节点集群。 **TIP**: 实际上,可以从单节点上相同的 $ ES_HOME 位置启动多个节点。这对于测试 Elasticsearch 形成集群的能力很有用,但不建议在生产中使用此配置。 为了与其他服务器上的节点形成集群,您的节点将需要绑定到非回送地址。尽管有许多网络设置方式,但通常您需要配置的只是 `network.host`: ``` network.host: 192.168.1.10 ``` network.host 还可以设置一些特殊值,例如_local_,_site_,_global_ 以及诸如 :ip4 和 :ip6, 详细信息可以在 network.host 的特殊值. `重要: 为 network.host 提供自定义设置后,Elasticsearch 会假设你正在从开发者模式过渡到生产模式,并将许多系统启动检查从警告升级到异常。有关更多信息,请参考开发模式与生产模式` ## 重要的发现和集群初始化设置 在投入生产之前,应配置两个重要的发现和集群形成设置,以便集群中的节点可以彼此发现并选举一个主节点。 ``` discovery.seed_hosts ``` 开箱即用,无需任何网络配置,Elasticsearch 将绑定到可用的回送地址,并将扫描本地端口 9300 至 9305,以尝试连接到在同一服务器上运行的其他节点,这里 ES 提供了自动群集检查,而无需进行任何配置。 如果要与其他主机上的节点组成集群,则必须设置 discovery.seed_hosts,提供集群中其他主机的列表,这些节点都具备主机资格,并且可能在其中处于活动状态并可以联系,以便为发现过程。此设置通常应包含群集中所有符合主机条件的节点的地址,是主机地址数组或逗号分隔的字符串。每个值都采用 host:port 或者 host 形式(其中 port 默认设置为 transport.profiles.default.port,如果未设置则返回 transport.port)。注意,IPV6 主机放在方括号里。默认值是: 127.0.0.1, [::1]. ``` cluster.initial_master_nodes ``` 首次启动全新的 Elasticsearch 集群时,会出现集群选举 情况,该步骤确定了在第一次选举中符合主机资格的节点的集合。在开发模式中 , 如果没有配置了发现设置,则此步骤由节点本身自动执行。由于这种自动引导是 不安全的 , 当你开启新的集群是 生产模式 , 你必须明确列出首次选举中符合主机资格的节点,使用 cluster.initial_master_nodes 参数设置该列表。重新启动集群或者有新节点加入集群时,不应使用此设置。 ``` discovery.seed_hosts: - 192.168.1.10:9300 - 192.168.1.11 - seeds.mydomain.com cluster.initial_master_nodes: - master-node-a - master-node-b - master-node-c ```
admin
2023年7月4日 17:45
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码