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 -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 管理常用命令集合的更多相关文章
- Linux - 远程管理常用命令
远程管理常用命令 目标 关机/重启 shutdown 查看或配置网卡信息 ifconfig ping 远程登录和复制文件 ssh scp 01. 关机/重启 序号 命令 对应英文 作用 01 shut ...
- CentOS7 常用命令集合
CentOS7 常用命令集合 文件与目录操作 touch test.txt: 创建一个文本文件 文本内容处理 查询操作 压缩.解压 yum安装器 网络相关 系统相关 XSheel 5相关操作 窗体快捷 ...
- centos7常用命令集合
版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] CentOS7 常用命令集合 这两天一直在对CentOS 7.2进行初体验,各种学习命令肿么用,不过其实大多和DOS是一 ...
- No-5.远程管理常用命令
远程管理常用命令 目标 关机/重启 shutdown 查看或配置网卡信息 ifconfig ping 远程登录和复制文件 ssh scp 01. 关机/重启 序号 命令 对应英文 作用 01 shut ...
- 【Linux】CentOS7 常用命令集合
CentOS7 常用命令集合 常用命令 文件与目录 操作命令解析 cd /home 进入 ‘/home’ 目录cd .. 返回上一级目录cd ../.. 返回上两级目录cd - 返回上次所在目录cp ...
- MYSQL常用命令集合(转载)
文章出处:http://www.cnblogs.com/q1ng/p/4474501.html 1.导出整个数据库mysqldump -u 用户名 -p --default-character-set ...
- MYSQL常用命令集合
1.导出整个数据库 mysqldump -u 用户名 -p --default-character-set=latin1 数据库名 > 导出的文件名(数据库默认编码是latin1) mysqld ...
- MySQL 安装 用户管理 常用命令
MySQL目录 数据库概览 数据库介绍 Why Choose MySQL MySQL的前世今生 MySQL的安装 Windows安装MySQL5.721 installer版 Windows安 ...
- Linux文件与目录管理常用命令
Linux文件与目录常用命令管理: 文件权限/目录权限: -rwxr-xr-x. root root Mar : zeng.txt r():可读 w():可写 x():可执行 drwxr-xr-x. ...
随机推荐
- linux sed 批量替换文件中的字符串或符号
sed -i :直接修改读取的文件内容,而不是输出到终端. sed -i 就是直接对文本文件进行操作的 替换每行第一次出现的字符串 sed -i 's/查找的字符串/替换的字符串/' 文件 ...
- SignalR入门一、通过 SignalR 2 进行实时聊天
一:什么是signalR Asp.net SignalR是微软为实现实时通信的一个类库.一般情况下,signalR会使用JavaScript的长轮询(long polling)的方式来实现客户端和服务 ...
- linux 出错 “INFO: task java: xxx blocked for more than 120 seconds.” 的3种解决方案
1 问题描述 最近搭建的一个linux最小系统在运行到241秒时在控制台自动打印如下图信息,并且以后每隔120秒打印一次. 仔细阅读打印信息发现关键信息是“hung_task_timeout_secs ...
- am335x system upgrade kernel tf(五)
1 Scope of Document This document describes TF hardware design 2 Requiremen 2.1 Functi ...
- Xamarin.Forms 入门
介绍 Xamarin.Forms是一个开源UI框架,Xamarin.Forms允许开发人员从单个共享代码库构建Android,iOS和Windows应用程序. Xamarin.Forms允许开发人员使 ...
- DotNetty 常用库
https://github.com/Azure/DotNetty DotNetty中几个重要的库(程序集): DotNetty.Buffers: 对内存缓冲区管理的封装. DotNetty.Code ...
- 定量变量和定性变量的转换(Transform of Quantitative & Qualitative Variables)
定量变量(Quantitative Variables):也称为数值型变量(Numerical Variables),可以用连续值或离散值表示.比如:气温(连续值),学生人数(离散值). 为什么要对定 ...
- BMP文件格式详解(BMP file format)
BMP文件格式,又称为Bitmap(位图),或是DIB(Device-Independent Device,设备无关图),是windows系统中广泛使用的图片文件格式,由于它可以不作任何变换地址保存图 ...
- 【python驱动】python进行selenium测试时GeckoDriver放在什么地方?
背景:用python进行selenium 关于b/s架构的测试,需要配置驱动否则程序无法执行 情况1:windows下放置GeckoDriver 步骤1:下载驱动 GeckoDriver下载地址fir ...
- manjaro系统的回滚操作
作为linux系统的爱好者,自从使用linux后,就喜欢追求新的软件,连系统都换成了滚动升级的版本.manjaro基于arch linux,同时也是kde的支持系统,升级非常频繁.使用了几年,很少碰到 ...