為了Spring Boot 整合 Elasticsearch,需要安裝 Elasticsearch 。
如果不是為了Spring Boot 的支援,建議安裝 Elasticsearch 5.0。速度快啊。
版本問題
在使用之前,先要注意一個版本問題。
GitHub說明:
https://github.com/spring-projects/spring-data-elasticsearch/wiki/Spring-Data-Elasticsearch—Spring-Boot—version-matrix
Spring Boot Version (x) | Spring Data Elasticsearch Version (y) | Elasticsearch Version (z) |
---|---|---|
x <= 1.3.5 | y <= 1.3.4 | z <= 1.7.2* |
x >= 1.4.x | 2.0.0 <= y < 5.0.0** | 2.0.0 <= z < 5.0.0** |
使用Spring Boot 1.5.3 那麼 Elasticsearch 隻能是 2.0.0 以上,5.0.0 以下。
Elasticsearch 官方下載下傳位址:
https://www.elastic.co/downloads/past-releases
版本小說明:
為毛Elasticsearch從2.0 直接跳到 5.0?
大家都聽說ELK吧,是Elasticsearch、Logstash、Kibana三個産品的首字母縮寫,現在Elastic又新增了一個新的開源項目成員:Beats。
由于版本比較混亂,每個産品的版本号都不一樣。Elasticsearch和Logstash目前是2.3.4;Kibana是4.5.3;Beats是1.2.3;
是以官方将這些的産品版本号也統了一下,即v5.0。
為什麼是5.0,因為Kibana都4.x了,下個版本就隻能是5.0了,其他産品就跟着跳躍。
下載下傳
進入軟體安裝目錄:
個人習慣,将軟體都安裝在自建目錄 /usr/software下,友善管理。
cd /usr/software
wget https://download.elastic.co/elasticsearch/release/org/elasticsearch/distribution/tar/elasticsearch/2.4.5/elasticsearch-..tar.gz
解壓
tar -zxvf elasticsearch-.tar.gz -C /usr/software/
配置賬戶
Elasticsearch 預設是不支援用root使用者來啟動的,會報錯。
解決方案如下:
1.添加使用者
groupadd elkgroup
useradd elsearch -g elkgroup -p elasticsearch
su elsearch
/usr/software/elasticsearch-/bin/elasticsearch -d
2.配置使用root使用者
vi /usr/software/elasticsearch-2.4.5/bin/elasticsearch
添加如下代碼,到檔案第一段注釋下:
儲存
配置IP
Elasticsearch預設restful-api的端口是9200 不支援Ip位址,隻能在本機用http://localhost:9200來通路。
如果需要改變,需要修改配置檔案。
配置成自己伺服器的ip:
預設 9300 是 Java 用戶端的端口。
9200 是支援 Restful HTTP 的接口。
儲存重新開機,然後在浏覽器上通路:http://192.168.191.32:9200
Centos 上直接檢視:
➜ ~ curl http://192.168.191.32:9200
{
"name" : "Emma Frost",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "Pgr1qgfxRp6J6lKzf9iOrg",
"version" : {
"number" : "2.4.5",
"build_hash" : "c849dd13904f53e63e88efc33b2ceeda0b6a1276",
"build_timestamp" : "2017-04-24T16:18:17Z",
"build_snapshot" : false,
"lucene_version" : "5.5.4"
},
"tagline" : "You Know, for Search"
}
運作
-d 表示背景啟動,守護程序。
sh /usr/software/elasticsearch-./bin/elasticsearch [-d表示背景啟動]
或 進入elasticsearch-2.4.5 的 bin 目錄

本地檢視版本資訊
➜ ~ curl -XGET "192.168.191.32:9200"
{
"name" : "Emma Frost",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "Pgr1qgfxRp6J6lKzf9iOrg",
"version" : {
"number" : "2.4.5",
"build_hash" : "c849dd13904f53e63e88efc33b2ceeda0b6a1276",
"build_timestamp" : "2017-04-24T16:18:17Z",
"build_snapshot" : false,
"lucene_version" : "5.5.4"
},
"tagline" : "You Know, for Search"
}
ES與MySQL的對應關系
Elasticsearch | MySQL |
---|---|
index | DB |
type | Table |
Document | row |