随着数据量和访问量的增长,单节点 Elasticsearch 已无法满足需求。本篇将介绍集群架构、性能优化方法以及常见故障排查,帮助你应对生产环境中的挑战。
1. 集群架构
1.1 节点角色(Master、Data、Ingest 等)
Elasticsearch 集群由多个节点组成,每个节点可扮演不同角色:
- Master 节点:管理集群状态,处理索引创建/删除。
- Data 节点:存储数据,执行查询和索引操作。
- Ingest 节点:预处理数据(如日志清洗)。
- 协调节点(Coordinating Node):负责请求分发和结果汇总,默认所有节点都承担此角色。
配置示例(elasticsearch.yml
):
node.master: true
node.data: false
node.ingest: false
Mermaid 图示 - 集群架构