美文网首页
【elasticsearch】23、分片与集群的故障转移

【elasticsearch】23、分片与集群的故障转移

作者: cutieagain | 来源:发表于2020-03-23 22:21 被阅读0次

    primary shard - 提升系统的存储容量

    • 分片是elasticsearch分布式存储的基石
      • 主分片 / 副本分片
    • 通过主分片,将数据分布在所有的节点上
      • primary shard,可以将一份索引的数据,分散在多个data node上,实现存储的水平拓展
      • 主分片(primary shard)数在索引创建的时候指定,后续默认不能修改,如需修改,需要重建索引

    replica shard - 提高数据的可用性

    • 数据可用性
      • 通过引入副本分片(replica shard)提高数据的可用性,一旦主分片丢失,副本分片可以promote成主分片。副本分骗术可以动态调整,每个节点上都有完备的数据,如果不设置副本分片,一旦出现节点硬件故障,就有可能造成数据丢失
    • 提升系统的读取性能
      • 副本分片由主分片(primary shard)同步,通过支持增加replica个数,一定程度上可以提高读取的吞吐量

    分片数的设定

    • 如何规划一个索引的主分片书和副本分片数
      • 主分片数过小:例如创建了一个primary shard的index
        • 如果该索引增长很快,集群无法通过增加节点实现对这个索引的数据拓展
    • 主分片设置过大:导致单个shard容量很小,引发一个节点上有过多分片,影响性能
    • 副本分片数设置过多,会降低集群整体的写入性能

    单节点集群

    • 副本无法分片,集群状态黄色
    • 副本分片必须和主分片分配到不同的节点上


      image.png
      image.png

    增加一个数据节点

    • 节点状态转为绿色
    • 集群具备故障转移能力
    • 尝试将replica设置成2和3,查看集群的状况


      image.png

    在增加一个数据节点

    • 节点具备故障转移能力
    • master节点会觉得分片分配到哪个节点
    • 通过增加节点,提高集群的计算能力


      image.png

    故障转移

    • 三个节点共同组成,包含了一个索引,索引设置了3个primary shard和一个replica
    • 节点1是master节点,节点意外出现故障,集群重新选举master节点
    • node 3上的R0提成成P0,集群变黄
    • R0和R1分配,集群变绿


      image.png

    集群健康状态

    • green 健康状态,所有的主分片和副本分片都可用
    • yellow 亚健康,所有的主分片可用,部分副本分片不可用
    • red 不健康状态,部分主分片不可用


      image.png

    相关文章

      网友评论

          本文标题:【elasticsearch】23、分片与集群的故障转移

          本文链接:https://www.haomeiwen.com/subject/qtrbyhtx.html