参考:

https://zhuanlan.zhihu.com/p/34727867(3个es技巧)

 

查看集群信息

之前我们需要查看集群信息都是通过集群API获取,但是返回数据为JSON格式,不利于理解,而且也不便于记忆。为快速方便看集群的各种监控或者配置情况,我们可以通过使用一个友好API, cat API

curl localhost:9200/_cat
=^.^=
/_cat/allocation  # 返回分片分配和磁盘使用的信息
/_cat/shards # 返回关于分片的信息
/_cat/shards/{index} 
/_cat/master # 返回当选主节点信息
/_cat/nodes # 返回集群拓扑相关信息
/_cat/tasks 
/_cat/indices # 返回所有索引信息
/_cat/indices/{index}
/_cat/segments # 索引段包括分片布局的API信息
/_cat/segments/{index}
/_cat/count # 为所有索引返回文档个数的信息
/_cat/count/{index}
/_cat/recovery # 返回还原过程的视图
/_cat/recovery/{index}
/_cat/health # 集群健康度 加上?v可以把字段打印出来
/_cat/pending_tasks # 正在等待执行任务信息
/_cat/aliases # 返回有关别名信息
/_cat/aliases/{alias}
/_cat/thread_pool #集群范围内的线程池统计信息
/_cat/thread_pool/{thread_pools}
/_cat/plugins # 插件信息
/_cat/fielddata # 字段数据信息使用堆内存
/_cat/fielddata/{fields}
/_cat/nodeattrs # 输出显示自定义节点属性
/_cat/repositories # 输出集群中注册快照存储库
/_cat/snapshots/{repository} # 输出属于指定仓库的快照信息
/_cat/templates # 输出当前正在存在的模板信息

使用alias(别名)管理索引

首先我们要说的是索引alias

alias就是一个快捷方式或者说软链接,可以指向1个或者多个索引,通过alias我们可以实现更好的实现索引的管理, 比如查找搜索,分类数据,切换索引等。

curl -XPOST 'localhost:9200/_aliases' -d 
{
  "actions": [
      {"remove": {"index": "day1", "alias": "week2"}},
      {"add": {"index": "day1", "alias": "week1"}},
      {"add": {"index": "day2", "alias": "week1"}}
  ]
}
在这里add,remove方法也可以分开单独写。

通过上面添加alias,我们就可以用week1获取操作几天的索引数据了。

之前: curl localhost:9200/day1,day2/_search
现在: curl localhost:9200/week1/_search

 

维护节点推迟再平衡

在服务版本升级或者需要进行一些维护操作,我们通常会重启服务,但是我当我们关闭一个节点的时候,集群会发现节点丢失会进行再平衡,如果集群维护时间短(集群数据量大),这样会造成数据分片再平衡花费较长时间。

通过下面方式关闭分片分配:

PUT /_cluster/settings
{
    "transient" : {
        "cluster.routing.allocation.enable" : "none"
    }
}

然后关闭单个节点,维护升级,重启,最后进行如下设置:

PUT /_cluster/settings
{
    "transient" : {
        "cluster.routing.allocation.enable" : "all"
    }
}

 

相关文章:

  • 2021-08-27
  • 2021-06-15
  • 2021-10-15
  • 2021-11-12
  • 2021-11-05
  • 2022-12-23
  • 2022-01-07
  • 2021-08-18
猜你喜欢
  • 2021-07-22
  • 2021-09-02
  • 2021-07-19
  • 2022-02-22
  • 2021-04-15
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案