elasticsearch-head的安裝及使用

ealsticsearch只是後端提供各種api,那麼怎麼直觀的使用它呢?elasticsearch-head將是一款專門針對於elasticsearch的客戶端工具, elasticsearch-head配置包,下載地址:https://github.com/mobz/elasticsearch-head

安裝插件

安裝elasticsearch-head插件

安裝docker鏡像或者通過github下載elasticsearch-head項目都是可以的,1或者2兩種方式選擇一種安裝使用即可

1. 使用docker的集成好的elasticsearch-head

    # docker run -p 9100:9100 mobz/elasticsearch-head:5

        docker容器下載成功並啓動以後,運行瀏覽器打開http://localhost:9100/

2. 使用git安裝elasticsearch-head

    # yum install -y npm

    # git clone git://github.com/mobz/elasticsearch-head.git

    # cd elasticsearch-head

    # npm install

    # npm run start

        檢查端口是否起來

        netstat -antp |grep 9100

    瀏覽器訪問測試是否正常

        http://IP:9100/

es6.0的版本不支持,瀏覽器請求頭信息帶Content-Type header [application/x-www-form-urlencoded], 如果使用老版本的elasticsearch-head服務端的es會返回下面的錯誤信息,{"error":"Content-Type header [application/x-www-form-urlencoded] is not supported","status":406}

需要修改 _site/vendor.js 。找到對應的行 if ( !s.crossDomain && !headers["X-Requested-With"] ) { 的前面增加一行
headers["Content-Type" ] = "application/json"

默認es是不支持跨域訪問的,

應該是es默認不支持跨域訪問的,所以需要重新配置。

如何解決es不支持跨域訪問?

/etc/elasticsearch/elasticsearch.yml配置文件中加入以下內容,然後重啓服務。

http.cors.enabled: true
http.cors.allow-origin: "*"

索引管理

1.概覽

通過下圖可以看到我們的節點名稱爲my-application,並且該節點下的索引信息

  在users下,選擇信息-->索引信息,可以查看該索引的所有信息,包括mappings、setting等等

在對應索引的右側,bank索引右側,選擇動作-->關閉/開啓,可以關閉/開啓該索引,關閉後的索引如圖:

2、索引

  在這裏,可以查看到所以的索引,並且還可以創建一個新的索引,如下圖:

數據管理

1、RESTful接口使用方法

爲了方便直觀我們使用Head插件提供的接口進行演示,實際上內部調用的RESTful接口。

 

RESTful接口URL的格式:

http://localhost:9200///[]
其中index、type是必須提供的。

id是可選的,不提供es會自動生成。

index、type將信息進行分層,利於管理。

index可以理解爲數據庫;type理解爲數據表;id相當於數據庫表中記錄的主鍵,是唯一的。

2. 文檔索引的創建

將如下一條歌曲信息的數據提交到ES中創建索引:

url:http://localhost:9200/users/china/5/

data:{ "name": "朱玉兵",  "sex": "男",  "email": "[email protected]"}

索引名字是:users;

索引的類型是:china;

本記錄的id是:5

返回的信息可以看到創建是成功的,並且版本號是1;ES會對記錄修改進行版本跟蹤,第一次創建記錄爲1,同一條記錄每修改一次就追加1。

至此一條記錄就提交到ES中建立了索引,注意HTTP的方法是PUT,不要選擇錯了。

 

3、索引文檔的查詢

根據索引時的ID查詢的文檔的RESTful接口如下

url:http://localhost:9200/users/china/5/

HTTP方法採用GET的形式。

 

4、索引文檔的更新

根據索引時的ID更新的文檔的內容其RESTful接口如下

url:http://localhost:9200/users/china/5/

HTTP方法採用PUT的形式。

將name字段由“朱玉兵”改成“robinhunan”;

結果中的version字段已經成了2,因爲我們這是是修改,索引版本遞增;created字段是false,表示這次不是新建而是更新。

更新接口與創建接口完全一樣,ES會查詢記錄是否存在,如果不存在就是創建,存在就是更新操作。

 

5、索引文檔的刪除

根據索引時的ID更新的文檔的內容其RESTful接口如下

url:http://localhost:9200/ users/china/5

HTTP方法採用DELETE的形式。

刪除過後,再通過查詢接口去查詢將得不到結果。

3、數據瀏覽

  這裏可看到索引、類型、字段、數據信息,如下圖所示:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章