elasticsearch管理常用命令
Posted zhangan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了elasticsearch管理常用命令相关的知识,希望对你有一定的参考价值。
elasticsearch rest api遵循的格式为:
curl -X<REST Verb> <Node>:<Port>/<Index>/<Type>/<ID>
1、检查es版本信息
curl IP:9200
2、查看集群是否健康
http://IP:9200/_cat/health?v curl ‘IP:9200/_cat/health?v‘
3、查看节点列表
http://IP:9200/_cat/nodes?v curl ‘IP:9200/_cat/nodes?v‘
4、列出所有索引及存储大小
http://IP:9200/_cat/indices?v curl ‘IP:9200/_cat/indices?v‘--查询所有索引及数据大小
5、创建索引
创建索引名为XX,默认会有5个分片,1个索引 curl -XPUT ‘IP:9200/XX?pretty‘
6、添加一个类型
curl -XPUT ‘IP:9200/XX/external/2?pretty‘ -d ‘ "gwyy": "John" ‘
7、更新一个类型
curl -XPOST ‘IP:9200/XX/external/1/_update?pretty‘ -d ‘ "doc": "name": "Jaf" ‘
8、删除指定索引
curl -XDELETE ‘IP:9200/_index?pretty‘
9、ES数据定期删除
如果不删除ES数据,将会导致ES存储的数据越来越多,磁盘满了之后将无法写入新的数据。这时可以使用脚本定时删除过期数据。
#/bin/bash #es-index-clear #只保留15天内的日志索引 LAST_DATA=`date -d "-15 days" "+%Y.%m.%d"` #删除上个月份所有的索引(根据自己的所有格式编写) curl -XDELETE ‘http://ip:port/*-‘$LAST_DATA‘*‘
crontab -e添加定时任务:每天的凌晨一点清除索引。
0 1 * * * /search/odin/elasticsearch/scripts/es-index-clear.sh
索引管理
查询索引状态 curl ‘localhost:9200/_cat/indices?v‘
创建索引
curl -XPUT ‘localhost:9200/goods_v1?pretty‘
删除索引
curl -XDELETE ‘localhost:9200/goods_v1?pretty‘
优化索引
curl -XPOST "http://127.0.0.1:9200/logstash-2015.10.28/_optimize" curl -XGET ‘http://localhost:9200/logstash-2015.10.28/_search?pretty=true‘ -d ‘ "query" : "matchAll" : ‘
创建别名
curl -XPOST localhost:9200/_aliases -d ‘ "actions": [ "add": "alias": "goods", "index": "goods_v1" ] ‘
删除并更新别名
curl -XPOST ‘http://localhost:9200/_aliases‘ -d ‘ "actions" : [ "remove" : "index" : "goods_v2", "alias" : "goods" , "add" : "index" : "goods_v1", "alias" : "goods" ] ‘
查看已有别名
curl -XGET ‘localhost:9200/_cat/aliases‘
查看别名对应的索引
curl -XGET ‘localhost:9200/_alias/help‘
以上是关于elasticsearch管理常用命令的主要内容,如果未能解决你的问题,请参考以下文章