本站所有文章均为原创,如您有所获益,恳请帮忙点击站内广告支持一下,您的帮助是我持续更新的动力!
  • 首页
  • ELK Stack
  • ELK Stack (2)——Elasticsearch 常用API与数据操作

ELK Stack (2)——Elasticsearch 常用API与数据操作

发布:TangLu2019-10-7 10:08分类: ELK Stack 标签: ELK ES elasticsearh

通过curl命令可以调用ES API接口,方便集群与数据的管理,比如查看集群节点装啊提、索引状态、管理集群节点和索引及元数据、执行增删改查操作、其他高级操作等。下面是一些常用的API命令:


1、打印指定API下所有功能

直接调用API可以打印出该API下的所有功能,比如图中的indices就是一个用于检查所有索引的功能、health用于检查集群状态

catapi1.png


2、查看ES集群健康状态

使用_cluster/health API可以打印出集群当前状态信息。green代表主分片与副本分片都分配正常;yellow代表主分片正常,有副本分片未正常分配;red代表有主分片未分配 。如果集群成为red状态,需要检查是否有集群离线,如果有离线节点,通过重启恢复即可。如果是索引问题,则需要删除错误索引。


http://localhost:9200/_cluster/health  #如果状态非green,可以关注unassigned_shard查看未分配的分片数
http://localhost:9200/_cluster/health?pretty #加上pretty会将内容格式化再输出,更美观

http://localhost:9200/_cat/health  
http://localhost:9200/_cat/health?v  #?v可以让显示信息更详尽

http://localhost:9200/_cluster/state?pretty #可以看主节点信息等

GET /_cluster/allocation/explain  #集群red的原因


3、查询Elasticsearch所有节点列表


curl http://localhost:9200/_cat/nodes?v


4、查询Elasticsearch所有索引


curl http://localhost:9200/_cat/indices?v


5、为Elasticsearch创建索引或数据,数据需要是json格式,如果对已存在数据进行操作会进行覆盖,属于updated

curl -XPUT "10.4.0.221:9200/nginx_web_log.2019.03.01"  #新增一个索引nginx_web_log.2019.03.01
curl -XPUT "10.4.0.221:9200/nginx_web_log.2019.03.01/users/1{
  "name":"tanglu",
  "age": 30
}" 


6、查询Elasticsearch数据

cutl -XGET /nginx_web_log.2019.03.01/users/1 #返回的source就是ES里的数据


7、删除Elasticsearch中的索引或者数据

curl -XDELETE http://10.4.0.221:9201/nginx_web_log.2019.03.*  #支持通配符


8、ES数据备份与迁移

elasticdump --input=http://源IP:9200/索引名 --output=http://目标IP:9200/索引名 --type=settings
elasticdump --input=http://源IP:9200/索引名 --output=http://目标IP:9200/索引名 --type=mapping
elasticdump --input=http://源IP:9200/索引名 --output=http://目标IP:9200/索引名 --type=data


下面是更贴近实际操作的curl命令,插入了两条数据


#为blog索引新增两条记录,指定type为article,ID为2和3
curl -XPUT -H "Content-Type: application/json" 'localhost:9201/blog/article/2?pretty' -d '
{
  "title": "test",
  "content":"testsfsdfdsfdsf",
  "PV":10
}'

curl -XPUT -H "Content-Type: application/json" 'localhost:9201/blog/article/3?pretty' -d '
{
  "title": "test",
  "content":"testsfsdfdsfdsf",
  "PV":23
}'
温馨提示如有转载或引用以上内容之必要,敬请将本文链接作为出处标注,谢谢合作!
版权所有:《Linux运维技术学习站点
文章标题:《ELK Stack (2)——Elasticsearch 常用API与数据操作
除非注明,文章均为 《Linux运维技术学习站点》 原创
转载请注明本文短网址:http://www.linuxe.cn/post-639.html  [生成短网址]
et_highlighter51

已有 0/520 人参与

发表评论:

欢迎分享Linux运维技术学习站点

欢迎使用手机扫描访问本站,还可以关注微信哦~