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. postgres —— 有序集与假象聚集

    有序集 -- 有序集.分组后,按给定顺序排序,再进行计算 SELECT region, percentile_disc(0.5) WITHIN GROUP (order by production) ...

  2. shell脚本中向hive动态分区插入数据

    在hive上建表与普通分区表创建方法一样: CREATE TABLE `dwa_m_user_association_circle`( `device_number` string, `oppo_nu ...

  3. RDD&Dataset&DataFrame

    Dataset创建 object DatasetCreation { def main(args: Array[String]): Unit = { val spark = SparkSession ...

  4. TreeMap 的简单解释

    TreeMap的构造函数   可以传入 自定义的比较器.Map.SortedMap.   put方法: public V put(K key, V value) { Entry<K,V> ...

  5. Spring框架的JDBC模板技术和事物

    Spring框架的JDBC模板技术         技术分析之Spring框架的JDBC模板技术概述  1. Spring框架中提供了很多持久层的模板类来简化编程,使用模板类编写程序会变的简单     ...

  6. invoke和begininvoke 区别

    一直对invoke和begininvoke的使用和概念比较混乱,这两天看了些资料,对这两个的用法和原理有了些新的认识和理解. 首先说下,invoke和begininvoke的使用有两种情况: 1. c ...

  7. 二、python介绍

    python第一篇-------python介绍 一.python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,Guido开始写Python语 ...

  8. S1_搭建分布式OpenStack集群_08 网络服务(neutron)安装部署

    一.数据库配置(控制节点)创建数据库以及用户:# mysql -uroot -p12345678MariaDB [(none)]> CREATE DATABASE neutron;MariaDB ...

  9. WinDbg常用命令系列---!dlls

    !dlls 简介 !dlls扩展显示所有加载模块或指定线程或进程正在使用的所有模块的表条目. 使用形式 !dlls [Options][LoaderEntryAddress] !dlls -h 参数 ...

  10. php7 configure: error: Cannot find OpenSSL's <evp.h> 问题解决

    开始以为是没有安装openssl, openssl-devel,安装后发现还是提示这个错误,搜索了一下evp.h,这个文件也存在.GOOGLE 了一下,在stackoverflow,找到了答案,原来是 ...