前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >es集群管理

es集群管理

作者头像
爱撒谎的男孩
发布2019-12-31 15:43:06
8610
发布2019-12-31 15:43:06
举报
文章被收录于专栏:码猿技术专栏码猿技术专栏

文章目录

1. 集群管理

1.0.1. cluster

1.0.2. shards

1.0.3. replicas

1.0.4. recovery

1.0.5. river

1.0.6. gateway

1.0.7. discovery.zen

1.0.8. Transport

1.1. 注意事项

1.2. 监控集群健康状况

1.3. 监控单个节点

1.4. 索引统计

1.5. cat API

1.6. 重要配置的修改

1.7. 参考文章

集群管理

cluster

代表一个集群,集群中有多个节点,其中有一个为主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的。es的一个概念就是去中心化,字面上理解就是无中心节点,这是对于集群外部来说的,因为从外部来看es集群,在逻辑上是个整体,你与任何一个节点的通信和与整个es集群通信是等价的。

shards

代表索引分片,es可以把一个完整的索引分成多个分片,这样的好处是可以把一个大的索引拆分成多个,分布到不同的节点上。构成分布式搜索。分片的数量只能在索引创建前指定,并且索引创建后不能更改。

replicas

代表索引副本,es可以设置多个索引的副本,副本的作用一是提高系统的容错性,当某个节点某个分片损坏或丢失时可以从副本中恢复。二是提高es的查询效率,es会自动对搜索请求进行负载均衡。

recovery

代表数据恢复或叫数据重新分布,es在有节点加入或退出时会根据机器的负载对索引分片进行重新分配,挂掉的节点重新启动时也会进行数据恢复。

river

代表es的一个数据源,也是其它存储方式(如:数据库)同步数据到es的一个方法。它是以插件方式存在的一个es服务,通过读取river中的数据并把它索引到es中,官方的river有couchDB的,RabbitMQ的,Twitter的,Wikipedia的。

gateway

代表es索引快照的存储方式,es默认是先把索引存放到内存中,当内存满了时再持久化到本地硬盘。gateway对索引快照进行存储,当这个es集群关闭再重新启动时就会从gateway中读取索引备份数据。es支持多种类型的gateway,有本地文件系统(默认),分布式文件系统,Hadoop的HDFS和amazon的s3云存储服务。

discovery.zen

代表es的自动发现节点机制,es是一个基于p2p的系统,它先通过广播寻找存在的节点,再通过多播协议来进行节点之间的通信,同时也支持点对点的交互。

Transport

代表es内部节点或集群与客户端的交互方式,默认内部是使用tcp协议进行交互,同时它支持http协议(json格式)、thrift、servlet、memcached、zeroMQ等的传输协议(通过插件方式集成)。

注意事项

  1. 同一个索引的分片和副本不能存在同一台机器上,因为在一台机器上没有意义,因此你如果使用的是单机版的话,不必指定副本的个数,即使指定了,那么es也不会将其存放在一台机器上的

监控集群健康状况

  • https://www.elastic.co/guide/cn/elasticsearch/guide/current/_cluster_health.html#_cluster_health
  • API:GET _cluster/health。返回的结果如下:
    • number_of_nodesnumber_of_data_nodes 这个命名完全是自描述的。
    • active_primary_shards 指出你集群中的主分片数量。这是涵盖了所有索引的汇总值。
    • active_shards 是涵盖了所有索引的所有分片的汇总值,即包括副本分片。
    • relocating_shards 显示当前正在从一个节点迁往其他节点的分片的数量。通常来说应该是 0,不过在 Elasticsearch 发现集群不太均衡时,该值会上涨。比如说:添加了一个新节点,或者下线了一个节点。
    • initializing_shards 是刚刚创建的分片的个数。比如,当你刚创建第一个索引,分片都会短暂的处于 initializing 状态。这通常会是一个临时事件,分片不应该长期停留在 initializing 状态。你还可能在节点刚重启的时候看到 initializing 分片:当分片从磁盘上加载后,它们会从 initializing 状态开始。
    • unassigned_shards 是已经在集群状态中存在的分片,但是实际在集群里又找不着。通常未分配分片的来源是未分配的副本。比如,一个有 5 分片和 1 副本的索引,在单节点集群上,就会有 5 个未分配副本分片。如果你的集群是 red 状态,也会长期保有未分配分片(因为缺少主分片)
代码语言:javascript
复制
{
   "cluster_name": "elasticsearch_zach",     //集群名称
   "status": "green",    //集群的状态名称
   "timed_out": false,     
   "number_of_nodes": 1,    //节点的个数
   "number_of_data_nodes": 1,    
   "active_primary_shards": 10,    //主分片的个数
   "active_shards": 10,     //涵盖了所有索引的_所有_分片的汇总值,即包括副本分片。
   "relocating_shards": 0,    //分片的个数
   "initializing_shards": 0,   
   "unassigned_shards": 0
}
  • 其中的status状态如下:
    • green:所有的主分片和副本分片都已分配。你的集群是 100% 可用的。
    • yellow:所有的主分片已经分片了,但至少还有一个副本是缺失的。不会有数据丢失,所以搜索结果依然是完整的。不过,你的高可用性在某种程度上被弱化。如果 更多的 分片消失,你就会丢数据了。把 yellow 想象成一个需要及时调查的警告。
    • red:至少一个主分片(以及它的全部副本)都在缺失中。这意味着你在缺少数据:搜索只能返回部分数据,而分配到这个分片上的写入请求会返回一个异常。
  • 使用GET _cluster/health?level=indices能够获取更加详细的信息
  • GET _cluster/health?level=shards
    • shards 选项会提供一个详细得多的输出,列出每个索引里每个分片的状态和位置。这个输出有时候很有用,但是由于太过详细会比较难用。如果你知道哪个索引有问题了,本章讨论的其他 API 显得更加有用一点。

监控单个节点

索引统计

cat API

重要配置的修改

参考文章

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-09-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 集群管理
    • cluster
      • shards
        • replicas
          • recovery
            • river
              • gateway
                • discovery.zen
                  • Transport
                    • 注意事项
                      • 监控集群健康状况
                        • 监控单个节点
                          • 索引统计
                            • cat API
                              • 重要配置的修改
                                • 参考文章
                                相关产品与服务
                                Elasticsearch Service
                                腾讯云 Elasticsearch Service(ES)是云端全托管海量数据检索分析服务,拥有高性能自研内核,集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群,也支持免运维、自动弹性、按需使用的 Serverless 模式。使用 ES 您可以高效构建信息检索、日志分析、运维监控等服务,它独特的向量检索还可助您构建基于语义、图像的AI深度应用。
                                领券
                                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档