開源Elasticsearch提供了一系列RESTful風格的API,您可以通過curl命令或在Kibana、Postman中使用這些API。本文介紹如何通過Postman訪問與管理Elasticsearch執行個體。
前提條件
已建立Elasticsearch執行個體,並開啟執行個體公網地址。具體操作請參見建立Elasticsearch執行個體。
說明已將安裝Postman裝置的IP地址添加到Elasticsearch執行個體公網地址訪問白名單中。具體操作,請參見配置Elasticsearch執行個體公網或私網訪問白名單。
已安裝Postman工具。
說明本文以Postman 10.16.9版本用戶端為例,不同版本介面展示可能存在差異。
下載Postman,請參見下載Postman。
操作步驟
登入Postman控制台。
在左側導覽列,單擊New,選擇Workspace,建立一個工作空間。
本文建立了一個名為
test-workspaces的工作空間。添加一個環境,並切換到該環境。
在左側導覽列,單擊Environment,單擊
,輸入環境名aliyun_Environment。在頁面右上方選擇環境
aliyun_Environment。
說明關於環境的更多資訊,請參見Managing environments。
建立一個名為
ES Collection的集合。在左側導覽列,單擊Collections,單擊
,集合的名稱修改為ES Collection。在ES Collection頁面,單擊Authorization頁簽,配置Authorization。
Type:選擇Basic Auth。
Username:輸入Elasticsearch執行個體的使用者名稱
elastic。Password:輸入Elasticsearch執行個體的使用者密碼。
建立一個名為
ES Request的請求。將滑鼠放在ES Collection上,在ES Collection右側選擇,將請求的名稱修改為
ES Request。在ES Request頁面,單擊Authorization頁簽,Type選擇Basic Auth。
說明ES Collection下可以添加多個請求,您需要將每個請求中Authorization的Type設定為Basic Auth,Username和Password將自動從請求所在集合的Authorization配置中同步。
在ES Request頁面,執行請求。
選擇請求的方法:GET、POST、PUT等。
輸入請求的URL:URL的格式為:
http://<ES執行個體公網地址>:<公網連接埠>/<Path>/<Query Parameters>。例如:
http://es-cn-pe33d****.public.elasticsearch.aliyuncs.com:9200/_cat/indices?v。(可選)輸入請求體:單擊Body頁簽,選擇raw,格式選擇
JSON,在代碼地區輸入請求體。單擊URL後的Send,執行請求。
說明更多操作,請參見Building requests。
管理執行個體的命令,請參見管理Elasticsearch的命令。
管理Elasticsearch的命令
以下介紹管理Elasticsearch的命令。更多命令,請參見Elasticsearch官方文檔。
查看Elasticsearch資訊
查看Elasticsearch執行個體健康情況。
GET http://xxxxx.public.xxxxx.aliyuncs.com:9200/_cat/health?v查看Elasticsearch執行個體中包含的索引資訊。
GET http://xxxxx.public.xxxxx.aliyuncs.com:9200/_cat/indices?v
建立索引和文檔
建立索引。
建立了一個名稱為product_info的索引。
PUT http://xxxxx.public.xxxxx.aliyuncs.com:9200/product_info為索引設定mapping。
PUT http://xxxxx.public.xxxxx.aliyuncs.com:9200/product_info/_mapping { "properties": { "productName": {"type": "text","analyzer": "ik_smart"}, "annual_rate":{"type":"keyword"}, "describe": {"type": "text","analyzer": "ik_smart"} } }建立文檔並插入資料。
建立單個文檔。
在
product_info索引中,建立了一個名稱為1的文檔,並向文檔中插入一條資料。
POST http://xxxxx.public.xxxxx.aliyuncs.com:9200/product_info/_doc/1 { "productName":"testpro", "annual_rate":"3.22%", "describe":"testpro" }建立多個文檔。
在
product_info索引中,建立名稱為1和2的文檔,並分別向文檔中插入一條資料。POST http://xxxxx.public.xxxxx.aliyuncs.com:9200/_bulk { "index" : { "_index": "product_info", "_id" : "1" } } {"productName":"testpro","annual_rate":"3.22%","describe":"testpro"} { "index" : { "_index": "product_info", "_id" : "2" } } {"productName":"testpro1","annual_rate":"3.26%","describe":"testpro"}在Postman中執行
_bulk操作時,每一行都需要換行,且最後一行需要為空白行。
搜尋文檔
搜尋名稱為1的文檔。
GET
http://xxxxx.public.xxxxx.aliyuncs.com:9200/product_info/_doc/1?pretty刪除索引
刪除名稱為product_info的索引。
DELETE
http://xxxxx.public.xxxxx.aliyuncs.com:9200/product_info
> Add request