es的节点和分片

Master-eligible nodes和Master eligible节点
每个节点启动后,默认就是一个Master eligible节点,可以设置node.master:false禁止
Master-eligible节点可以参加选主流程,成为Master节点
当第一个节点启动时候,它会将自己选举成Master节点
每个节点都保存了集群的状态,只有Master节点才能修改集群的状态信息
   集群状态(Cluster Starte),维护了一个集群中,必要的信息
   所有的节点信息
   所有的索引和其相关的Mapping与Setting信息
   分片的路由信息
Data Node
  可以保存数据的节点,叫做Data Node.负责保存分片数据.在数据扩展上起到至关重要的作用
Coordinating Node
  负责接受Client的请求,将请求分发到合适的节点,最终把结果汇聚到一起
  每个节点默认起到了Coordinating Node的职责
Hot & Warm Node 
 不同硬件配置的Data Node,用来实现Hot&Warm架构,降低集群部署成本
Machine Learning Node
 负责跑机器学习的Job,用来坐异常检测
Tribe Node
 (5.3开始使用Cross Cluster Search) Tribe Node连接到不同的Elasticsearch集群,并
  支持将这些集群当成一个单独的集群处理

分片(primary Shard &Replica Shard)
主分片.用以解决数据水平扩展的问题.通过主分片,可以将数据分布到集群内的所有的节点上
  一个分片是一个运行的Lucene的实例
  主分片数在索引创建时指定,后续不允许修改,除非Reindex
副本,用以解决数据的高可用的问题,分片是主分片的拷贝
   副本分片数,可以动态调整
   增加副本数,还可以在一定程度上提高服务的可用性(读取的吞吐)
分片的设定
 对于生产环境中的分片的设定,需要提前做好容量规划
  分片数设置过小 
     导致后续无法增加节点实现水平扩展
     单个分片的数据量太大,导致数据重新分配耗时
  分片数设置过大,7.0开始,默认主分片设置成1,解决了over-sharding问题
    影响搜索结果的相关性打分,影响统计结果的准确性
    单个节点上过多的分片,会导致资源浪费,同时也会影响性能

get _cat/nodes?v
GET /_nodes/es7_01,es7_02
GET /_cat/nodes?v
GET /_cat/nodes?v&h=id,ip,port,v,m


GET _cluster/health
GET _cluster/health?level=shards
GET /_cluster/health/kibana_sample_data_ecommerce,kibana_sample_data_flights
GET /_cluster/health/kibana_sample_data_flights?level=shards

#### cluster state
The cluster state API allows access to metadata representing the state of the whole cluster. This includes information such as
GET /_cluster/state

#cluster get settings
GET /_cluster/settings
GET /_cluster/settings?include_defaults=true

GET _cat/shards
GET _cat/shards?h=index,shard,prirep,state,unassigned.reason

你可能感兴趣的:(es)