【发布时间】:2015-08-12 02:16:26
【问题描述】:
我想了解 ElasticSearch 节点以尝试设置适当的高可用性设置:
(免责声明:我对 ES 还很陌生,所以如果对我的概念有一些误解,如果你能强调它,我将不胜感激)
当前设置是一个具有三个节点的集群,它们自动在它们之间委派主节点的责任,并且这三个节点都是数据节点。客户端应用程序 (.NET) 被硬编码以将请求定向到一个特定节点,因此当该节点关闭时,客户端应用程序将无法访问整个集群。
主要从我可以从the ES site 中获得的信息,我可以将无数据节点设置为专用管理节点,以避免数据加载的过程开销。我还可以设置处理搜索和合并开销的客户端节点,并使数据节点保持数据专用。
对于高可用性,似乎首选选项是在客户端使用包含集群中所有节点的连接池,因此如果第一个选项无法访问,它会将请求定向到其他节点。
从所有这些来看,我正在考虑将具有两个无数据、无 http 节点的集群设置为管理节点,并让它们相互故障转移。此外,设置两个无数据、无主节点作为“入口节点”,同时将当前的 3 个节点保留为无主节点、无 html 节点,并将它们仅用于数据处理。然后,我将在客户端应用程序上集中两个入口节点。
所以最终设置将是 2 个主节点、2 个入口节点、3 个数据加载。
这听起来合理吗?
非常感谢您的任何见解!
【问题讨论】:
标签: .net elasticsearch failover