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 -s -XGET 'http://IP:9200/_cat/health?v'
1 绿色,最健康的状态,代表所有的分片包括备份都可用
2 黄色,预警状态,所有主分片功能正常,但至少有一个副本是不能正常工作的。此时集群是可以正常工作的,但是高可用性在某种程度上会受影响。
3 红色,集群不可正常使用。某个或某些分片及其副本异常不可用,这时集群的查询操作还能执行,但是返回的结果会不准确。对于分配到这个分片的写入请求将会报错,最终会导致数据的丢失。

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

10、查看分片状态

curl -XGET http://localhost:9200/_cat/shards

11、查看群集状态

curl -s -XGET 'http://localhost:9200/_cluster/stats?pretty'

12、索引管理

查询全部索引状态
curl 'localhost:9200/_cat/indices?v'
查询状态为red的索引
curl -s -XGET 'http://IP:9200/_cat/indices?health=red

13、创建索引

curl -XPUT 'localhost:9200/goods_v1?pretty' 

14、查看索引

curl '172.31.15.228:9200/goods_v1?pretty'

15、删除索引

curl -XDELETE 'localhost:9200/goods_v1?pretty'

16、优化索引

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 'http://127.0.0.1:9200/index_name/_refresh'  #单个索引刷新
curl -XPOST 'http://127.0.0.1:9200/_refresh' #全部索引刷新

flush释放该索引所占用的内存,并将索引数据保存在磁盘

curl -XPOST 'http://127.0.0.1:9200/index_name/_flush?force'

清理缓存

curl  -XPOST 'http://127.0.0.1:9200/_cache/clear'

  

17、创建别名

curl -XPOST localhost:9200/_aliases -d '
{
"actions": [
{ "add": {
"alias": "goods",
"index": "goods_v1"
}}
]
}'

18、删除并更新别名

curl -XPOST 'http://localhost:9200/_aliases' -d '
{
"actions" : [
{ "remove" : { "index" : "goods_v2", "alias" : "goods" } },
{ "add" : { "index" : "goods_v1", "alias" : "goods" } }
]
}'

19、查看已有别名

curl -XGET 'localhost:9200/_cat/aliases'

20、查看别名对应的索引

curl -XGET 'localhost:9200/_alias/help'

21、查看文件描述符打开数量

curl -s -XGET '127.0.0.1:9200/_nodes/stats/process/?pretty'

22、查看分片状态

curl -XGET "http://127.0.0.1:9200/_cat/shards"

23、查看热点线程 

curl -XGET 'http://127.0.0.1:9200/_nodes/hot_threads'

24、针对不使用的index,进行close。我们需要的时候再进行open,可以节约内存和减轻系统的压力

curl -XPOST 127.0.0.1:9200/index_name/_close
curl -XPOST 127.0.0.1:9200/index_name/_open 25 18520796770

25、查看线程状态

curl -XGET "http://127.0.0.1:9200/_nodes/thread_pool/"

  

elasticsearch 管理常用命令集合的更多相关文章

  1. Linux - 远程管理常用命令

    远程管理常用命令 目标 关机/重启 shutdown 查看或配置网卡信息 ifconfig ping 远程登录和复制文件 ssh scp 01. 关机/重启 序号 命令 对应英文 作用 01 shut ...

  2. CentOS7 常用命令集合

    CentOS7 常用命令集合 文件与目录操作 touch test.txt: 创建一个文本文件 文本内容处理 查询操作 压缩.解压 yum安装器 网络相关 系统相关 XSheel 5相关操作 窗体快捷 ...

  3. centos7常用命令集合

    版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[+]   CentOS7 常用命令集合 这两天一直在对CentOS 7.2进行初体验,各种学习命令肿么用,不过其实大多和DOS是一 ...

  4. No-5.远程管理常用命令

    远程管理常用命令 目标 关机/重启 shutdown 查看或配置网卡信息 ifconfig ping 远程登录和复制文件 ssh scp 01. 关机/重启 序号 命令 对应英文 作用 01 shut ...

  5. 【Linux】CentOS7 常用命令集合

    CentOS7 常用命令集合 常用命令 文件与目录 操作命令解析 cd /home 进入 ‘/home’ 目录cd .. 返回上一级目录cd ../.. 返回上两级目录cd - 返回上次所在目录cp ...

  6. MYSQL常用命令集合(转载)

    文章出处:http://www.cnblogs.com/q1ng/p/4474501.html 1.导出整个数据库mysqldump -u 用户名 -p --default-character-set ...

  7. MYSQL常用命令集合

    1.导出整个数据库 mysqldump -u 用户名 -p --default-character-set=latin1 数据库名 > 导出的文件名(数据库默认编码是latin1) mysqld ...

  8. MySQL 安装 用户管理 常用命令

    MySQL目录 数据库概览   数据库介绍 Why Choose MySQL MySQL的前世今生 MySQL的安装   Windows安装MySQL5.721 installer版 Windows安 ...

  9. Linux文件与目录管理常用命令

    Linux文件与目录常用命令管理: 文件权限/目录权限: -rwxr-xr-x. root root Mar : zeng.txt r():可读 w():可写 x():可执行 drwxr-xr-x. ...

随机推荐

  1. 如何让VS像CB一样使用

    之前用VS,先是完成了GLUT库下的opengl使用: 然后得知GLUT有些过时,又按照教程接触了GLFW库下,反正对我来说是有些复杂. 今天正式试一试用VS来写ACM的题目,发现不能定义string ...

  2. npm run build打包时修改的路径

  3. 修改idea,webstrom,phpstrom 快捷键double shift 弹出search everywhere

    这个问题很困惑,因为这个功能很好用,查找什么很方便,but! 我用了十年的搜狗输入法,大家都知道搜狗输入法按shift中英文切换很方便,特别在写代码时候...所以就和这个double shift功能冲 ...

  4. 内部cms系统测试

    转载至51testing:http://www.51testing.com/html/34/n-4463534.html 内部系统的功能以及如何测试 前文有提到,我定义的内部系统,是一个由目前主流语言 ...

  5. Java web开发——文件的上传和下载

    一. 功能性需求与非功能性需求 要求操作便利,一次选择多个文件和文件夹进行上传:支持PC端全平台操作系统,Windows,Linux,Mac 支持文件和文件夹的批量下载,断点续传.刷新页面后继续传输. ...

  6. hibernate工具类

    因为hibernate的代码大部分都是固定的,为了将减少重复的代码的书写,可以将这些代码封装为一个工具类,获取hibernate的session对象. 1.工具类: package pers.zhb. ...

  7. @Aspect注解并不属于@Component的一种

    也就是一个类单纯如果只添加了@Aspect注解,那么它并不能被context:component-scan标签扫描到. 想要被扫描到的话,需要追加一个@Component注解

  8. mysql 获取学生个人科目平均分

    mysql> select * from test; +----+----------+-------+-----------+ | id | name | score | subject | ...

  9. Stringbuilde方法的用法以及其作用

    Stringbuilde的方法有以下几种(常用的):(java中的语法) 在程序开发过程中,我们常常碰到字符串连接的情况,方便和直接的方式是通过"+"符号来实现,但是这种方式达到目 ...

  10. Linux+Apache环境下安装SSL证书

    一.安装证书 (温馨提示:安装证书前请先备份您需要修改的服务器配置文件) 1.确认证书文件及证书路径.  例证书文件为:zzidc.com.jks,放置目录为Tomcat的conf目录下.  2.配置 ...