zoukankan      html  css  js  c++  java
  • ElasticSearch-集群

    安装说明,安装三个节点,一个master ,两个slave。
    集群名称 ip-端口
    myEsCluster (master) 127.0.0.1:9500
    myEsCluster(slave) 127.0.0.1:9600
    myEsCluster(slave) 127.0.0.1:9700

    集群名称ip-端口
    myEsCluster (master) 127.0.0.1:9500
    myEsCluster(slave) 127.0.0.1:9600
    myEsCluster(slave) 127.0.0.1:9600

    Es安装包解压出三份ES,修改每个 elasticsearch安装目录 /config/elasticsearch.yml 这个配置文件。
    master配置说明:

    # 设置支持elasticsearch-head
    http.cors.enabled: true
    http.cors.allow-origin: "*"
    
    # 设置集群master配置信息
    # 首先要指定 集群的名字 ,名字随便起,符合常规命名规则
    cluster.name: myEsCluster
    # 节点的名字,一般为master 或者 slave
    node.name: master
    # 节点是否为master,设置为true的话,说明此节点为master节点
    node.master: true
    # 设置网络,如果是本机的话就是127.0.0.1,其他服务器配置对应的IP地址即可
    network.host: 127.0.0.1
    # 默认端口为 9200,可以修改默认设置
    http.port: 9500

     slave配置说明:

    # 设置集群slave配置信息
    # 首先要指定 集群的名字 ,名字随便起,符合常规命名规则
    cluster.name: myEsCluster
    # 节点的名字,一般为master 或者 slave
    node.name: slave1
    # 节点是否为master,设置为true的话,说明此节点为master节点
    node.master: false
    # 默认端口为 9200,可以修改默认设置
    http.port: 9600
    # 设置网络,如果是本机的话就是127.0.0.1,其他服务器配置对应的IP地址即可
    network.host: 127.0.0.1
    # 设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点。可以是一个数组。
    # #discovery.zen.ping.unicast.hosts: ["host1", "host2"]
    discovery.zen.ping.unicast.hosts: ["127.0.0.1"]

    两个slave配置只需要改相应的端口号即可!一个slave1:9600 ,一个slave2:9700。
    从上面的安装来看,Es的安装相对还是比较简单,并且在安装分布式的时候,通过简单的配置就可以快速扩展多个ES节点,能够快速的进行扩容,非常灵活,方便!
    Cluster State
    es集群相关的配置称为Cluster State,主要记录如下信息:

    • 节点信息:比如节点名称、连接地址等
    • 索引信息:比如索引信息、配置等

    Mater Node

    • 可以修改Cluster State的节点别称做Mater Node,一个集群只能有一个。
    • Cluster State储存在每个节点上,master维护最新版本并同步给其他节点。
    • master节点是通过集群中所有节点选举产生的,可以被选举成为master的节点称为master-eligable节点,需要添加配置 node.master:true(默认)

    Cluster Health
    通过api可以查看集群状态:

    • green:健康状态,所有主副分片都正常分配。
    • yellow:所有主分片都正常分配,但是有副本分片未正常分配。
    • red:有主分片未分配。

    故障转移

    文档分布式存储
    当创建索引时会根据一定规则将索引创建到特别到node上。

    文档创建流程

    shard详解
    当新的文档创建的时候,如何构建倒排索引呢?es的倒排索引一旦创建就不会修改,新文档创建时会根据新文档重新构建倒排索引。查询是会查询所有的倒排索引。

    lucene倒排索引结构:

     

    refresh

    translog

    flush

    删除和更新文档

    整体视角

    Segment Merging

    郭慕荣博客园
  • 相关阅读:
    每日一练ACM 2019.0417
    每日一练ACM 2019.0416
    每日一练ACM 2019.04.13
    每日一练ACM 2019.04.14
    创建线程的方法
    类和对象的概念
    接口的概念
    Mysql添加取消自增属性
    SpringMVC不支持PUT表单提交
    SSM框架整合报org.springframework.beans.factory.NoSuchBeanDefinitionException
  • 原文地址:https://www.cnblogs.com/jelly12345/p/15018776.html
Copyright © 2011-2022 走看看