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. ...
随机推荐
- VS2005编译QT4.8.2
为什么要编译? 因为安装安装版的QT4.8.2,vs2005编译报错. 1.下载QT4.8.2,qt-everywhere-opensource-src-4.8.2.zip,下载vs-AddIn1.1 ...
- 2、Python的IDE之PyCharm的使用
一.Python集成开发环境-Pycharm介绍 PyCharm是一款功能强大的,用于编写复杂需要结构化的功能代码,下面介绍一下 在Windows下如何安装PyCharm . 操作系统:Windows ...
- pyinstaller打包多个py文件和去除cmd黑框
1.打包多个py文件并且去除cmd黑框 格式:pyinstaller.exe -F 路径\文件名.py空格路径\文件名.py空格--noconsole pyinstaller.exe -F ui.py ...
- hdu6172&&hdu6185&&P5487——BM算法
hdu6172 模板的简单应用 先根据题中的表达式求出前几项,再上BM,注意一下n的大小关系. #include <bits/stdc++.h> using namespace std; ...
- go 学习 (二):基本语法
一.数据类型 布尔型:布尔型的值只可以是常量 true 或者 false.eg:var bo bool = true.布尔型无法参与数值运算,也无法与其他类型进行转换 数字类型:整型 int .浮点型 ...
- webpack的plugin原理
plugin是webpack生态的重要组成,它为用户提供了一种可以直接访问到webpack编译过程的方式.它可以访问到编译过程触发的所有关键事件. 1. 基本概念 1. 如何实现一个插件 1. plu ...
- Java操作Excel中HSSFCell.CELL_TYPE_STRING、BOOLEAN、NUMERIC无定义解决方法
错误原因:jar包版本更新,官方改动: 解决方法: 导入CellType包import org.apache.poi.ss.usermodel.CellType使用CellType.STRING代替H ...
- rust所有权
所有权与函数 fn main() { let s = String::from("hello"); takes_ownership(s); //s的值移动到函数里 let x = ...
- PTA中如何出Java编程题?
很多第一次出Java编程题的老师,不知道Java在PTA中是如何处理输入的.写一篇文章供大家参考. 有多种类型输入的编程题: 类型1:固定数量输入 从控制台读入**两个**数,然后将其相加输出. 对于 ...
- Netty 多客户端连接与通信
实现场景: 聊天 服务端,客户端A,客户端B,客户端C.当客户端发送消息给服务端后,服务端在将这条消息广播个所有客户端户端A,客户端B,客户端C. 需求1: 客户端上线后,会通知所有客户端上线. 如客 ...