博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
elasticsearch多磁盘扩容
阅读量:4213 次
发布时间:2019-05-26

本文共 1551 字,大约阅读时间需要 5 分钟。

1、问题

由于早前elasticsearch集群数据存储路径只配置了一个,所以某天磁盘突然爆满,集群差点当机。需重新配置多路径存储路径,因为在生产环境,得保证集群不死掉,只能一台一台配置重启。

2、修改配置文件

修改elasticsearch.yml中path.data属性,添加多路径以逗号分隔

path.data : /opt/data1,/opt/data2

 

3、查看集群状态

curl -XGET "http://xxxx:9200/_cat/indices"curl -XGET "http://xxxx:9200/_cat/nodes"curl -XGET "http://xxxx:9200/_cat/health"

 

 

4、关闭索引自动平衡

curl -XPUT "http://xxxx:9200/_cluster/settings" -d'{  "transient" : {       "cluster.routing.allocation.enable" : "none"   } }'

 

5、重启节点

6、开启自动平衡

curl -XPUT "http://xxxx.52:9200/_cluster/settings" -d'{  "transient": {    "cluster.routing.allocation.enable": "all"  }}'

 

7、重复4-6步骤

8、遇到的问题

有一个索引的某个分片一直处理UNASSIGNED状态,需进行手动分配。

curl -XGET 'http://xxxx:9200/_cat/shards' | grep UNASSIGNED    #查看未分配的索引分片curl -XGET "http://xxxx:9200/_cat/shards/index?v" #查看索引分片

 

 

使用reroute接口进行分配。 

reroute 接口支持五种指令:allocate_replica, allocate_stale_primary, allocate_empty_primary,move 和 cancel。 
常用的一般是 allocate 和 move,allocate_* 指令。 
因为负载过高等原因,有时候个别分片可能长期处于 UNASSIGNED 状态,我们就可以手动分配分片到指定节点上。默认情况下只允许手动分配副本分片(即使用 allocate_replica),所以如果要分配主分片,需要单独加一个 accept_data_loss 选项

分配主分片

curl -XPOST "http://xxxx:9200/_cluster/reroute" -d  '{  "commands" : [ {        "allocate_stale_primary" :            {              "index" : "index", "shard" : 4, "node" : "node56", "accept_data_loss" : true            }        }  ]}'

 

分配副分片

curl -XPOST "http://xxxx:9200/_cluster/reroute" -d  '{  "commands" : [ {        "allocate_replica" :            {              "index" : "index", "shard" : 4, "node" : "node56"            }        }  ]}'

 

 

9、kibana进和查询命令

fuser -n tcp 5601

转载地址:http://fvfmi.baihongyu.com/

你可能感兴趣的文章
(六) Git--标签管理
查看>>
Android——ImageSwitcher轮流显示动画
查看>>
java反射详解
查看>>
JPA 注解
查看>>
JQuery 简介
查看>>
Java创建对象的方法
查看>>
Extjs自定义组件
查看>>
TreeGrid 异步加载节点
查看>>
Struts2 标签库讲解
查看>>
Google Web工具包 GWT
查看>>
材料与工程学科相关软件
查看>>
windows 下AdNDP 安装使用
查看>>
Project 2013项目管理教程(1):项目管理概述及预备
查看>>
ssh客户端后台运行
查看>>
【React Native】把现代web科技带给移动开发者(一)
查看>>
Launch Sublime Text 3 from the command line
查看>>
【数据库之mysql】mysql的安装(一)
查看>>
【数据库之mysql】 mysql 入门教程(二)
查看>>
【HTML5/CSS/JS】A list of Font Awesome icons and their CSS content values(一)
查看>>
【HTML5/CSS/JS】<br>与<p>标签区别(二)
查看>>