elasticsearch常用的一些集群命令

查看集群健康状态

get请求
/_cat/health?v epoch timestamp cluster status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent
1543918646 18:17:26 haha-elk yellow 1 1 3481 3481 0 0 3480 0 - 50.0%
时间戳 utc时间 集群名称 集群状态 总的节点数 储存节点 分片数量 复制分片数量 主要讲下 status
集群的状态有三种 green,yellow,red
- green 集群状态健康完善
- yellow 所有数据可用,但没有副本,当我们是单点集群的时候,我们就是yellow状态
- red 某些数据由于某种原因不可用。

查看集群的节点列表

get请求
/_cat/nodes?v
通过这个命令我们可以查看我们集群中有几个节点 ip heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name
127.0.0.1 72 89 9 0.23 0.26 0.21 mdi * haha-elastic-1
地址 堆所占百分比 内存使用的百分比 cpu 负载 1分钟 2分钟 15分钟(top) 是否为主节点 节点名称

查看所有的索引

get请求
/_cat/indices?v health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
yellow open ljf-order-service-2018-10-04 XhIN9cfFTO6ZaGLg4Ucuog 5 1 2874 0 1.1mb 1.1mb
yellow open ljf-account-service-2018-11-01 1NXXkKZnSxub5quXwNQqUQ 5 1 7603 0 2.4mb 2.4mb 健康状态 状态 索引名称 id 主分片 一个副本(默认值) 文档数量 删除文档的数量 大小 副本大小 您可能还注意到客户索引标记了黄色运行状况。回想一下我们之前的讨论,黄色表示某些副本尚未(尚未)分配。此索引发生这种情况的原因是因为默认情况下Elasticsearch为此索引创建了一个副本。由于我们目前只有一个节点在运行,因此在另一个节点加入集群的较晚时间点之前,尚无法分配一个副本(用于高可用性)。将该副本分配到第二个节点后,此索引的运行状况将变为绿色。

删除索引

get请求
XDELETE /'索引名称'?pretty 删除成功返回值
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size

查询索引的某个文档内容

get请求
/indexname/type/id indexname ---> 索引名称 示例:l1-online-h5-service-2018-12-05 type ---> 文档类型 (一般为doc) id ---> id值

更新文档

elasticsearch  更新文档的时候是会删除旧的文档,给新的文档编制索引。

POST  /indexname/type/id/_update?pretty
{
"doc": { "name": "Jane Doe" }
}

删除文档

DELETE /indexname/type/id?pretty

查看分片的分布和里面文档的大小

get 请求

/_cat/shards?v

返回内容解析

index(索引名称)                      shard(分片位置)   prirep(主分片还是副本) state(状态)    docs(文档数量)    store(储存大小) ip(节点地址)           node(节点名称)
ljf-online-user-service-2018-11-13 2 p STARTED 4189 2.1mb 172.16.2.208 djx-elastic-1
ljf-online-user-service-2018-11-13 2 r STARTED 4189 2.1mb 172.16.2.209 djx-elastic-2
ljf-online-user-service-2018-11-13 3 p STARTED 4172 2.1mb 172.16.2.208 djx-elastic-1
ljf-online-user-service-2018-11-13 3 r STARTED 4172 2.1mb 172.16.2.209 djx-elastic-2
ljf-online-user-service-2018-11-13 1 p STARTED 4110 2.1mb 172.16.2.208 djx-elastic-1

截止LUCENE-5843,最大文档数限制是2,147,483,519(= Integer.MAX_VALUE - 128)文档。

自动创建索引

elasticsearch.yml 下的action.auto_create_index

默认是开启的,如果我们需要关闭的话,我们需要允许x-apck去创建索引。

添加以下内容:

action.auto_create_index: .security,.monitoring*,.watches,.triggered_watches,.watcher-history*,.ml*

定时删除索引

#!/bin/bash
######################################################
# $Name: clean_amazon_index.sh
# $Version: v1.0
# $Function: clean amazon log index
# $Author: djx
# $Create Date: 2017-10-18
# $Description: shell
######################################################
#本文未加文件锁,需要的可以加
#脚本的日志文件路径
CLEAN_LOG="/var/log/clean_amazon_index.log"
#索引前缀
INDEX_PRFIX="amazon-mysql-log"
#elasticsearch 的主机ip及端口
SERVER_PORT=192.168.1.123:9200
#取出已有的索引信息
INDEXS=$(curl -s "${SERVER_PORT}/_cat/indices?v" |grep "${INDEX_PRFIX}"|awk '{print $3}')
#删除多少天以前的日志,假设输入10,意味着10天前的日志都将会被删除
DELTIME=10
# seconds since 1970-01-01 00:00:00 seconds
SECONDS=$(date -d "$(date +%F) -${DELTIME} days" +%s)
#判断日志文件是否存在,不存在需要创建。
if [ ! -f "${CLEAN_LOG}" ]
then
touch "${CLEAN_LOG}"
fi
#删除指定日期索引
echo "----------------------------clean time is $(date +%Y-%m-%d_%H:%M:%S) ------------------------------" >>${CLEAN_LOG}
for del_index in ${INDEXS}
do
indexDate=$( echo ${del_index} |cut -d "-" -f 4,5,6 )
#根据索引的名称的长度进行切割,不同长度的索引在这里需要进行对应的修改
indexSecond=$( date -d ${indexDate} +%s )
if [ $(( $SECONDS- $indexSecond )) -gt 0 ]
then
echo "${del_index}" >>${CLEAN_LOG}
#取出删除索引的返回结果
delResult=`curl -s -XDELETE "${SERVER_PORT}/"${del_index}"?pretty" |sed -n '2p'`
#写入日志
echo "clean time is $(date)" >>${CLEAN_LOG}
echo "delResult is ${delResult}" >>${CLEAN_LOG} fi
done

最后添加到定时任务即可。

elasticsearch(四) 之 elasticsearch常用的一些集群命令的更多相关文章

  1. hbase 在线修复集群命令

    前提:HDFS fsck确保hbase根目录下文件没有损坏丢失,如果有,则先进行corrupt block移除. 切记:一定要在所有Region都上线之后再修复,否则修复之后可能出现重复Region. ...

  2. redis集群命令及常规操作

    集群命令 [root@redis06 etc]# redis-cli --cluster help Cluster Manager Commands: create host1:port1 ... h ...

  3. Elasticsearch 6.x版本全文检索学习之集群调优建议

    1.系统设置要到位,遵照官方建议设置所有的系统参数. https://www.elastic.co/guide/en/elasticsearch/reference/6.7/setup.html 部署 ...

  4. Elasticsearch学习系列七(Es分布式集群)

    核心概念 集群(Cluster) 一个Es集群由多个节点(Node)组成,每个集群都有一个共同的集群名称作为标识 节点(Node) 一个Es实例就是一个Node.Es的配置文件中可以通过node.ma ...

  5. 分布式缓存技术redis学习系列(四)——redis高级应用(集群搭建、集群分区原理、集群操作)

    本文是redis学习系列的第四篇,前面我们学习了redis的数据结构和一些高级特性,点击下面链接可回看 <详细讲解redis数据结构(内存模型)以及常用命令> <redis高级应用( ...

  6. 分布式缓存技术redis学习(四)——redis高级应用(集群搭建、集群分区原理、集群操作)

    本文是redis学习系列的第四篇,前面我们学习了redis的数据结构和一些高级特性,点击下面链接可回看 <详细讲解redis数据结构(内存模型)以及常用命令> <redis高级应用( ...

  7. 分布式缓存技术redis系列(四)——redis高级应用(集群搭建、集群分区原理、集群操作)

    本文是redis学习系列的第四篇,前面我们学习了redis的数据结构和一些高级特性,点击下面链接可回看 <详细讲解redis数据结构(内存模型)以及常用命令> <redis高级应用( ...

  8. Tomcat学习四步走:内核、集群、参数及性能

    主题简介: 内核实现原理 分布式集群 生产部署关键参数 性能监控和分析 一.内核实现原理 HTTP Web服务器与浏览器之间以HTTP协议通信,浏览器要访问服务器即向服务器发送HTTP请求报文. 如图 ...

  9. kubernetes实战(四):k8s持久化安装rabbitmq集群

    1.下载文件 https://github.com/dotbalo/k8s/ 2.创建namespace kubectl create namespace public-service 如果不使用pu ...

随机推荐

  1. windows下C++实现遍历本地文件

    1.假设本地 d:/ 下存放着0.txt,1.txt两个文件 2.开发工具VS,开发语言C++,怎么遍历得到两个文件呢? 废话不多,具体代码请看下面: /** * 入参:文件存放文件夹路径,例如D:\ ...

  2. ubuntu18.04 编译安装 apache php

    1. apache apache 需要依赖几个模块:apr, apr-util, pcre,也分别源码安装. 1.1 编译安装 1.1.1 apr apr-util 下载地址:http://apr.a ...

  3. What if you are involved in an automobile accident in the US

    What if you are involved in an automobile accident in the US With increasing Chinese tourists and vi ...

  4. windows eclipse IDE打开当前类所在文件路径

    1. 展开如下菜单: Run ---- External Tools ---- External Tools Configurations 2. 在 program 下面新建一个工具 program- ...

  5. JS的__proto__与prototype

    一.prototype和__proto__的概念 prototype是函数的一个属性(每个函数都有一个prototype属性),这个属性是一个指针,指向一个对象.它是显示修改对象的原型的属性. __p ...

  6. python 删除一个目录下的所有文件

    一个目录下有文件,文件夹,文件夹里又有文件.文件夹....用python脚本,实现,递归删除一个目录下的所有文件: 目录结构如下: 其中我们要删除所有文件 代码实现如下: import os CUR_ ...

  7. python——回文函数(reversed)

    回文数:正向排列与反向排列所得结果是相等的(即从左到右和从右到左的结果是相等的),例如:“123321”,“0000”等. reversed函数:反转一个序列对象,将其元素从后向前颠倒构建成一个新的迭 ...

  8. C# 一些代码小结--datGirdView 保存到csv文件

    if (dataGridView1.Rows.Count == 0) { MessageBox.Show("No data available!", "Prompt&qu ...

  9. 解决oninput在输入中文时,会获取拼音的问题

    (1)起因:在今天做项目测试的时候发现的问题,在用微软自带的输入法的时候,输入中文,文本框会获得拼音 如图所示: (2)解决办法:经过一段时间的百度查找,最后通过这篇文章找到了解决的方法,这里给出网址 ...

  10. JavaScript编程题(含腾讯2016校招题)

    作者:ManfredHu 链接:http://www.manfredhu.com/2016/04/02/15-veryGoodForUsing/ 声明:版权所有,转载请保留本段信息,否则请不要转载 几 ...