3. Head插件
上一節說到ES支持Restful
請求,但是那樣的話對於我們開發者來說過於麻煩,並且不夠直觀,我們一般都會使用一個圖形化界面來輔助,比如我們用mysql的時候,會用navicat。
那麼,在用ES的時候,我們可以用Head插件。
3.1 Head插件的安裝
- 下載head插件
-
解壓到任意目錄,但是要和elasticsearch的安裝目錄區別開。
-
安裝
node.js
,安裝cpnm
-
npm install ‐g cnpm ‐‐registry=https://registry.npm.taobao.org
-
cnpm
是淘寶團隊做的國內鏡像(速度快,你懂的)
-
-
將
grunt
安裝爲全局命令,Grunt是基於Node.js
的項目構建工具。它可以自動運行你所設定的任務。npm install ‐g grunt‐cli
-g
你就可以理解是全局安裝
-
安裝依賴
cnpm install
-
進入head目錄啓動head,在命令提示符下輸入命令
grunt server
-
打開瀏覽器測試
http://localhost:9100
,是否成功。
打開之後,覈對地址和端口正確之後,點擊連接
之後沒反應,打開console
之後看到這樣的錯誤信息:
看見Access to XMLHttpRequest
這三個詞我猜應該就是跨域的問題(見得太多了)。
這個錯誤是由於elasticsearch默認不允許跨域調用,而elasticsearch-head是屬於前端工 程,所以報錯。
那麼我們就需要修改elasticsearch的配置,讓其允許跨域訪問。
- 修改elasticsearch配置文件:
elasticsearch.yml
- 該文件在
es安裝目錄/config
目錄下
增加以下兩句命令:
http.cors.enabled: true
http.cors.allow-origin: "*"
- 重啓ES。
如果重啓之後報錯,那可能就是上邊兩條命令的格式不對,手動輸一下。
3.2 Head使用
連接之後,大致的頁面應該就是這樣:
大概有五部分
-
概覽
- 我們可以看到集羣的健康值、節點等信息,以及索引狀況、索引信息。
- 綠色表示主分片和副本分片都可用;
- 黃色表示只有主分片可用,沒有副本分片;
- 紅色表示主分片中的部分索引不可用,但是不耽誤某些索引的訪問。
- 我們可以看到集羣的健康值、節點等信息,以及索引狀況、索引信息。
-
索引
- 可以新建索引。
-
還可以指定分片數和副本數。
-
數據瀏覽
- 這個不用多解釋
-
基本查詢
- 高級查詢,但是它只能做查詢搜索,不能創建、修改和刪除數據
-
複合查詢
- 發送RESTful API到elasticsearch服務執行,然後它返回執行結果給我們