ElasticSearch集群的基本原理

Posted parent-absent-son

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ElasticSearch集群的基本原理相关的知识,希望对你有一定的参考价值。

几个特点:

1- 快速扩容,主要是横向扩容;
2- 共同承担数据和负载的压力。当有节点加入集群中或者从集群中移除节点时,集群将会重新平均分布所有的数据。
3- 当一个节点被选举成为主节点时,它将负责管理集群范围内的所有变更,例如增加、删除索引,或者增加、删除节点等。 而主节点并不需要涉及到文档级别的变更和搜索等操作,所以当集群只拥有一个主节点的情况下,即使流量的增加它也不会成为瓶颈。

获取集群的健康状态:

GET /_cluster/health

得到的结果:

{
  "cluster_name": "es",
  "status": "green",
  "timed_out": false,
  "number_of_nodes": 3,
  "number_of_data_nodes": 3,
  "active_primary_shards": 130,
  "active_shards": 266,
  "relocating_shards": 0,
  "initializing_shards": 0,
  "unassigned_shards": 0,
  "delayed_unassigned_shards": 0,
  "number_of_pending_tasks": 0,
  "number_of_in_flight_fetch": 0,
  "task_max_waiting_in_queue_millis": 0,
  "active_shards_percent_as_number": 100
}

status是我们最关心的,指示着当前集群在总体上是否工作正常。它的三种颜色含义如下:

green       所有的主分片和副本分片都正常运行。
yellow      所有的主分片都正常运行,但不是所有的副本分片都正常运行。
red           有主分片没能正常运行。
 

三:创建名为 blogs 的索引。 索引在默认情况下会被分配5个主分片

PUT /blogs
{
   "settings" : {
      "number_of_shards" : 3,      //三个主分片
      "number_of_replicas" : 1         //每个主分片备份一个分片
   }
}
把副本数从默认的 1 增加到 2 :
PUT /blogs/_settings
{
   "number_of_replicas" : 2
}

 

参考文献:ElasticSearch权威指南

以上是关于ElasticSearch集群的基本原理的主要内容,如果未能解决你的问题,请参考以下文章

elasticsearch高可用 原理

Day123.ElasticSearch:CAP定理集群搭建架构原理及分片倒排索引面试题

走进Elasticsearch

ElasticSearch 内部原理之分布式文档搜索

ElasticSearch集群的文档读写原理

分布式搜索引擎ElasticSearch---ElasticSearch进阶使用深入理解搜索技术集群架构原理