Elasticsearch基本CURD操作

当我们的ES集群搭建完成以后,我怎么能看到集群中各个节点状态以及主节点和健康情况呢,如下讲解使用curl命令来与ES集群进行交互、分别有查询主节点情况、集群状态、以及创建索引查看索引、查看分片以及对ES集群进行查询请求等操作。

CURL语法讲解

RESTful API:

    curl  -X<VERB> '<PROTOCOL>://<HOST>:<PORT>/<PATH>?<QUERY_STRING>' -d '<BODY>'
    -X:指定请求方式

    <VERB>:GET,POST,PUT,DELETE   一般请求为GET、提交变更为POST、上传文件为PUT、删除操作为DELETE

    <PROTOCOL>:协议,一般为HTTP协议

    <HOST>:主机,可为主机的IP地址或Hostname

    <PORT>:主机端口

    <PATH>:路径,主机端口后的路径,如下几个路径:/_cat, /_search, /_cluster   /_cat路径覆盖了大多数的信息内容,/_search为搜索所有的索引和文档类型

    <QUERY_STRING>:查询字符串匹配规则

    -d:指定主体内容

    <BODY>:json格式的请求主体

Elasticseearch基本查询语句

    //查看_cat支持的信息
    kibana: GET /_cat
    bash: curl -XGET -u elastic:26tBktGolYCyZD2pPISW 'http://192.168.31.215:9201/_cat'        

    //查看主节点信息
    kibana: GET /_cat/master?v
    bash: curl -XGET -u elastic:26tBktGolYCyZD2pPISW 'http://192.168.31.215:9201/_cat/master?v'        

    //查看集群所有节点
    kibana: GET /_cat/nodes?v
    bash: curl -XGET -u elastic:26tBktGolYCyZD2pPISW 'http://192.168.31.215:9201/_cat/nodes?v'        

    //查看所有索引信息
    kibana: GET /_cat/indices?v
    bash: curl -XGET -u elastic:26tBktGolYCyZD2pPISW 'http://192.168.31.215:9201/_cat/indices?v'        

    //查看单个索引信息
    kibana: GET /_cat/indices/movies?v
    bash: curl -XGET -u elastic:26tBktGolYCyZD2pPISW 'http://192.168.31.215:9201/_cat/indices/movies?v'        

    //查看所有分片信息
    kibana: GET /_cat/shards?v
    bash: curl -XGET -u elastic:26tBktGolYCyZD2pPISW 'http://192.168.31.215:9201/_cat/shards?v'        

    //查看单个索引分片信息
    kibana: GET /_cat/shards/movies?v
    bash: curl -XGET -u elastic:26tBktGolYCyZD2pPISW 'http://192.168.31.215:9201/_cat/shards/movies?v'        

    //查看集群健康状态
    kibana: GET /_cat/health?v
    kibana: GET _cluster/health
    bash: curl -XGET -u elastic:26tBktGolYCyZD2pPISW 'http://192.168.31.215:9201/_cat/health?v'
    bash: curl -XGET -u elastic:26tBktGolYCyZD2pPISW 'http://192.168.31.215:9201/_cluster/health?pretty'        

    //查看插件
    kibana: GET /_cat/plugins?v
    bash: curl -XGET -u elastic:26tBktGolYCyZD2pPISW 'http://192.168.31.215:9201/_cat/plugins?v'        

    //查看所有索引文档总数
    kibana: GET _all/_count
    bash: curl -XGET -u elastic:26tBktGolYCyZD2pPISW 'http://192.168.31.215:9201/_all/_count?pretty'        

    //查看指定索引文档总数
    kibana: GET movies/_count
    bash: curl -XGET -u elastic:26tBktGolYCyZD2pPISW 'http://192.168.31.215:9201/movies/_count?pretty'        

    //查看所有模板
    kibana: GET _cat/templates
    bash: curl -XGET -u elastic:26tBktGolYCyZD2pPISW 'http://192.168.31.215:9201/_cat/templates?v'        

    //查看状态为绿的索引
    kibana: GET /_cat/indices?v&health=green
    bash: curl -XGET -u elastic:26tBktGolYCyZD2pPISW 'http://192.168.31.215:9201/_cat/indices?v&health=green'        

    //查看movies索引元数据
    kibana: GET movies
    bash: curl -XGET -u elastic:26tBktGolYCyZD2pPISW 'http://192.168.31.215:9201/movies?pretty'        

    //按照文档数量排序索引
    kibana: GET _cat/indices?v&s=docs.count:desc
    bash: curl -XGET -u elastic:26tBktGolYCyZD2pPISW 'http://192.168.31.215:9201/_cat/indices?v&s=docs.count:desc'        

    //查看各个索引占用内存大小并进行排序
    kibana: 
    bash: curl -XGET -u elastic:26tBktGolYCyZD2pPISW 'http://192.168.31.215:9201/_cat/indices?v&h=i,tm&s=tm:desc'

Elasticsearch CURD语法

CURD 请求方式 主体 说明
Create PUT /index/_create/id 指定Document ID,创建文档,如果ID已存在,则失败
Create POST /index/_create/id 指定Document ID,创建文档,如果ID已存在,则失败
Create POST /index/_doc 自动生成ID,不会重复,重复提交则创建多个文档,文档版本都为1
Index PUT /index/_doc/id 如果ID不存在,则创建新的文档,如果ID存在,则删除现有文档后创建新的文档,版本+1,ID相同
Index POST /index/_doc/id 如果ID不存在,则创建新的文档,如果ID存在,则删除现有文档后创建新的文档,版本+1,ID相同
Read GET /index/_doc/id 查看Document ID为1的文档
Update POST /index/_doc/id 文档必须存在,否则更新失败,只能增量修改字段,不能减少字段,字段值可以随意修改,版本加1
Delete Delete /index/_doc/id 文档必须存在,否则删除返回”not_found”
Delete Delete /index 删除索引,索引内的文档也会被随之而删除,要删除的索引必须存在,否则返回 “404”

原创地址:https://mp.weixin.qq.com/s/qZq_EV9q1LUUzOZeTzhA-g