在 Elasticsearch 集群中,所有节点必须相同,即具有相同的:
- 操作系统
- RAM 容量
- CPU 速度和核心数
- ETC。
或者是否允许节点不同?(除了同构集群比异构集群更容易配置、管理和监控这一显而易见的事实之外。)
答案1
视情况而定。它们不需要在硬件资源上完全相同。但它们在操作系统上应该完全相同(至少是 Linux 发行版或 Windows 版本),并且在 ES 版本上必须完全相同。
ES 不支持在一个集群中长期运行多个版本的 ES,因为在高版本上创建或迁移的索引无法迁移回旧版本(由于内部数据机制等),因此当新版本的节点出现故障时,您将遇到麻烦。
答案2
在 Elasticsearch 集群中,所有节点都必须相同,即具有相同的功能:还是允许节点不同?
不,它们不需要完全相同。根据集群的使用情况以及分配给每个节点的角色,硬件可能会有所不同。
答案3
除了运行兼容的 ES 版本外,ElasticSearch 节点不需要相同。由于查询通常跨越多个 ES 节点,因此您将受制于最慢的节点,并且差异将使其难以调整。