本文属于极客时间Elasticsearch核心技术与实战学习笔记系列。
ES 的分布式架构带来的好处
ES 的分布式架构
节点是一个 ES 的实例
处理请求的节点,叫 Coordinating Node
所有节点默认都是 Coordinating Node
通过将其他类型设置成 False ,使其成为 Dedicated Coordinating Node
bin/elasticsearch -E node.name=node1 -E cluster.name=geektime -E path.data=node1_data
bin/elasticsearch -E node.name=node2 -E cluster.name=geektime -E path.data=node2_data
bin/elasticsearch -E node.name=node3 -E cluster.name=geektime -E path.data=node3_data
创建的索引:2个节点:02为master,索引aaa 2个分片,副本数1.
可以保存数据的节点,叫做 Data Node
Data Node 的职责
通过增加数据节点
Master Node 的职责
Master Node 的最佳实践
一个集群,支持配置多个 Master Eligble 节点。这些节点可以在必要时(如 Master 节点出现故障,网络故障时)参与选主流程,成为 Master 节点。
每个节点启动后,默认就是一个 Master eligible 节点。
当集群内的第一个 Master eligible 节点时候,它会将自己选举成 Master 节点。
集群状态信息(Cluster State),维护了一个集群中,必要的信息
在每个节点都保存了集群的状态信息
但是,只有 Master 节点才能修改集群的状态信息,并负责同步给其他节点
Split-Brain ,分布式系统的经典网络问题,当出现网络问题,一个节点和其他节点无法连接
Node 2 和 Node 3 会被重新选举 Master
Node 1 自己还是作为 Master,组成一个集群,同时更新 Cluster State
导致 2 个 master,维护不同的 cluster state。当网络恢复是,无法选择正确恢复
这里老师一带而过,没有解释为什么选的node3,我有些疑惑,按照前面的说法选择节点小的应该选2,哪位大神看到可以给个解释。多谢。
限定一个选举条件,这是 quorum(仲裁),只有在 Master eligble 节点数大于 quorum 时,才能进行选举
从 7.0 开始,无需这个配置
学习了本节,就是扫盲了一些基本概念。还是迷惑。