【Elasticsearch】Elasticsearch 的`path.settings`是用于配置 Elasticsearch 数据和日志存储路径的重要设置

Elasticsearch 的`path.settings`是用于配置 Elasticsearch 数据和日志存储路径的重要设置,这些路径在`elasticsearch.yml`配置文件中定义。以下是关于 Elasticsearch 的路径设置(`path.data`和`path.logs`)以及快照存储库配置的详细说明:

1.`path.data`配置

`path.data`是 Elasticsearch 用于存储索引数据和集群状态的目录。默认情况下,Elasticsearch 将数据存储在`$ES_HOME/data`目录下。

多路径配置

在 7.13 版本之前,Elasticsearch 支持在`path.data`中配置多个路径,允许将数据分散存储到多个磁盘上。例如:

```yaml

path.data: /mnt/disk1,/mnt/disk2,/mnt/disk3

```

这种配置类似于软件级的 RAID-0,可以提高 I/O 性能。然而,Elasticsearch 不会在多个路径之间自动平衡分片的存储,且单个路径的高磁盘使用率可能触发整个节点的高磁盘水位线。

官方建议

从 7.13 版本开始,多路径支持已被弃用,官方建议使用单路径配置,并通过添加新节点来扩展存储容量。

2.`path.logs`配置

`path.logs`是 Elasticsearch 用于存储日志文件的目录。默认情况下,日志存储在`$ES_HOME/logs`目录下。您可以根据需要修改此路径,例如:

```yaml

path.logs: /var/log/elasticsearch

```

3.快照存储库配置

快照存储库是用于存储快照数据的路径或存储服务。在创建快照之前,必须先定义一个存储库。

配置存储库

在`elasticsearch.yml`文件中,通过`path.repo`指定快照存储库的路径。例如:

```yaml

path.repo: "/data/es_snapshot"

```

然后,通过 API 创建存储库:

```bash

PUT /_snapshot/my_backup

{

"type": "fs",

"settings": {

"location": "/data/es_snapshot"

}

}

```

• `type`:存储库类型,`fs`表示本地文件系统。

• `location`:快照数据的存储路径。

创建快照

定义存储库后,可以通过以下命令创建快照:

```bash

PUT /_snapshot/my_backup/snapshot_1

{

"indices": "index_1,index_2",

"ignore_unavailable": true,

"include_global_state": false

}

```

4.注意事项

• 数据安全性:多路径配置类似于软件级 RAID-0,没有数据冗余。如果其中一个磁盘故障,存储在该磁盘上的分片数据将丢失。

• 快照存储库权限:确保 Elasticsearch 有权限访问`path.repo`指定的路径。

• 滚动重启:修改`elasticsearch.yml`文件后,需要滚动重启集群以使配置生效。

通过合理配置`path.data`和`path.logs`,以及设置快照存储库,可以优化 Elasticsearch 的数据存储和备份策略,提高集群的性能和可靠性。Elasticsearch 的 path.settings 是用于配置 Elasticsearch 数据和日志存储路径的重要设置。这些设置在 elasticsearch.yml 配置文件中定义,用于指定 Elasticsearch 数据和日志文件的存储位置。以下是关于 Elasticsearch path.settings 的详细说明:1. 默认路径在 Elasticsearch 的默认安装中, data 和 logs 目录通常位于 ES_HOME 目录下。 ES_HOME 是 Elasticsearch 的安装根目录。例如: data 目录:存储 Elasticsearch 的索引数据和集群状态信息。 logs 目录:存储应用程序日志,包括集群健康信息、操作日志等。然而,这种默认设置在生产环境中并不推荐,因为 ES_HOME 目录中的文件可能会在升级过程中被覆盖或删除。2. 推荐的路径设置为了提高数据安全性和灵活性,Elasticsearch 官方建议在生产环境中将 path.data 和 path.logs 配置为 ES_HOME 之外的路径。例如:yaml复制path:

data: /var/data/elasticsearch

logs: /var/log/elasticsearch

path.data :指定存储 Elasticsearch 数据的目录。 path.logs :指定存储日志文件的目录。通过将数据和日志存储在独立路径中,可以避免在升级或重新安装 Elasticsearch 时丢失数据。3. 支持的路径格式Elasticsearch 支持的路径格式因操作系统而异:Linux 和 macOS:支持 Unix 风格的路径,例如 /var/data/elasticsearch 。Windows:支持 Windows 风格的路径,例如 C:\data\elasticsearch 。4. 多路径支持(已弃用)在早期版本中,Elasticsearch 支持为 path.data 配置多个路径,例如:yaml复制path:

data:

  • /mnt/elasticsearch_1

  • /mnt/elasticsearch_2

  • /mnt/elasticsearch_3

这种配置允许 Elasticsearch 在多个磁盘路径中存储数据,但每个分片的数据会存储在同一个路径中。然而,从 7.13 版本开始,多路径支持已被弃用,并将在未来版本中完全移除。

  1. 从多路径迁移到单路径如果您当前使用的是多路径配置,建议迁移到单路径配置。以下是迁移步骤:

  2. 创建快照:在迁移之前,创建一个集群快照以保护数据。

  3. 使用分配过滤器迁移数据:将数据从目标节点迁移到其他节点。

  4. 关闭目标节点:按照滚动重启的步骤关闭目标节点。

  5. 确保集群健康状态:确保集群健康状态为 yellow 或 green 。

  6. 移除分配过滤器:如果之前设置了分配过滤器,需要移除。

  7. 清理数据路径:删除目标节点的数据路径中的内容。

  8. 重新配置存储:将多个磁盘合并为一个文件系统(例如使用 LVM 或 RAID)。

  9. 重新配置节点:更新 elasticsearch.yml 文件中的 path.data 设置。

  10. 启动新节点:启动新配置的节点,并完成滚动重启过程。

  11. 验证集群状态:确保集群健康状态为 green ,所有分片已正确分配。

  12. 注意事项数据目录的安全性:不要修改数据目录中的内容,也不要运行可能干扰其内容的进程。否则可能会导致数据损坏或丢失。

备份和恢复:不要尝试对数据目录进行文件系统备份。建议使用 Elasticsearch 的快照和恢复功能进行安全备份。

磁盘使用率:Elasticsearch 不会在多个数据路径之间自动平衡磁盘使用率。如果某个路径的磁盘使用率过高,可能会触发整个节点的高磁盘使用率水位线,导致节点拒绝分片分配。

通过合理配置 path.settings ,可以提高 Elasticsearch 的数据安全性和集群的稳定性。在生产环境中,建议始终将数据和日志存储在 $ES_HOME 之外的路径,并避免使用已弃用的多路径配置。

相关推荐
Elastic 中国社区官方博客9 小时前
不到 5 分钟完成本地部署:Jina embedding 模型现已支持本地部署
大数据·人工智能·elasticsearch·搜索引擎·embedding·jina
二进制流水搬运工9 小时前
入职第一天拉了23个仓库,我写了个脚本解放双手
大数据·elasticsearch·搜索引擎
Elasticsearch10 小时前
在不到一小时内将 Datadog Kubernetes 仪表板迁移到 Elastic Observability
elasticsearch
.柒宇.11 小时前
Elasticsearch 核心概念与系统架构详解
elasticsearch·系统架构
风行無痕13 小时前
单机Elasticsearch 8.19.18安全升级到9.4.3的过程
大数据·elasticsearch·搜索引擎
Elastic 中国社区官方博客15 小时前
使用重新设计的 AutoOps 更快地进行 Elasticsearch 问题排查
大数据·运维·前端·人工智能·elasticsearch·搜索引擎·全文检索
阿拉雷️16 小时前
【搜索实战】Spring Boot 3.3 + AI Agent × Elasticsearch:让AI自动优化搜索策略,查询速度从2秒压到50毫秒
人工智能·spring boot·elasticsearch
阿里云大数据AI技术1 天前
阿里云 ES AI 引擎版:面向 Agent 场景,为亿级租户、千亿规模向量设计的搜索引擎
人工智能·elasticsearch·agent
阿里云大数据AI技术1 天前
FalconSeek 技术解析:阿里云 Elasticsearch 云原生内核如何让查询性能飙升600%
人工智能·elasticsearch
Elastic 中国社区官方博客1 天前
将你的 Grafana Kubernetes 仪表板迁移到 Elastic Observability:相同的 PromQL,30 倍更快的查询
大数据·人工智能·elasticsearch·搜索引擎·容器·kubernetes·grafana