[TOC]
## **概念**
现在我们的节点(和集群)已经启动并运行,下一步是了解如何与之通信。幸运的是,Elasticsearch提供了非常全面而强大的REST API,您可以使用它与集群进行交互。该API可以完成的几件事如下:
* 检查您的群集,节点和索引的运行状况,状态和统计信息
* 管理您的集群,节点以及索引数据和元数据
* 对您的索引执行CRUD(创建,读取,更新和删除)和搜索操作
* 执行高级搜索操作,例如分页,排序,过滤,脚本,聚合以及许多其他操作
## **集群健康-Cluster health**
```
GET _cat/health
响应:1572721808 03:10:08 diting-es yellow 1 1 6 6 0 0 5 0 - 54.5%
```
每当我们要求集群运行状况时,我们都会显示绿色,黄色或红色。
* 绿色-一切都很好(集群功能齐全)
* 黄色-所有数据均可用,但某些副本尚未分配(集群功能齐全)
* 红色-由于某些原因,某些数据不可用(集群部分起作用)
节点的列表:
```
GET _cat/nodes
响应:127.0.0.1 29 67 7 mdi * parallel-1
```
## **所有指数**
```
GET _cat/indices
响应:
green open .kibana T5NtJCD7TuqpzkiZ-qDUCg 1 0 2 0 9.9kb 9.9kb
yellow open orders 6VoKl9kDQFWSp5K3yxFtww 5 1 30 0 149.9kb 149.9kb
```
## **创建索引**
```
PUT /customer?pretty //创建索引
GET /_cat/indices //获取所有索引
```
## **索引和查询文档**
### **添加索引**
```
PUT /customer/_doc/1?pretty
{
"name": "John Doe"
}
```
响应
```
{
"_index": "customer",
"_type": "_doc",
"_id": "1",
"_version": 1,
"result": "created",
"_shards": {
"total": 2,
"successful": 1,
"failed": 0
},
"_seq_no": 0,
"_primary_term": 1
}
```
### 查询
```
GET /customer/_doc/1
```
### 响应
{
"\_index": "customer",
"\_type": "\_doc",
"\_id": "1",
"\_version": 1,
"found": true,
"\_source": {
```
"name": "John Doe"
```
}
}
## 删除索引
```
DELETE /customer 即 /{inexName}
GET /_cat/indices
```