一、ElasticSearch的安裝與運行 1、由於ElasticSearch是由Java語言開發的,若要運行ElasticSearch,需要安裝並配置JDK,並要設置$JAVA_HOME環境變數。 2、ElasticSearch版本對於Java依賴的說明: 1)ElasticSearch5.0需要 ...
一、ElasticSearch的安裝與運行
1、由於ElasticSearch是由Java語言開發的,若要運行ElasticSearch,需要安裝並配置JDK,並要設置$JAVA_HOME環境變數。
2、ElasticSearch版本對於Java依賴的說明:
1)ElasticSearch5.0需要Java8以上的版本;
2)ElasticSearch6.5開始支持Java11;
3)從ElasticSearch7.0開始,內置了Java環境;
4)下圖是ElasticSearch和JVM的對應關係矩陣:https://www.elastic.co/cn/support/matrix#matrix_jvm
3、ElasticSearch下載說明
1)下載地址:https://www.elastic.co/cn/downloads/elasticsearch
2)ElasticSearch可以運行在主流操作系統上,同時也可以運行在Docker中;
3)本人電腦是Windows系統,所以下載的是ElasticSearch的Windows版本;
4、ElasticSearch安裝過程--前臺模式(Windows系統)
1)ElasticSearch在Windows上的安裝提供了兩種形式,一種是以zip文件的形式進行解壓;一種是以MSI文件的形式進行安裝;以前通常是以zip文件的形式在Windows上進行安裝,現在以MSI文件格式進行安裝也是可行的,它提供了一種最簡便的入門體驗;
2)我們採用以zip文件的形式進行安裝。首先將下載完畢的ElasticSearch壓縮包進行解壓,此時會創建一個名稱為ElasticSearch-x.x.x的文件夾,將其設置為$ES_HOME環境變數的引用路徑;
3)打開命令視窗,進入到當前ElasticSearch的目錄中,如下圖所示:
4)運行ElasticSearch,進入bin目錄下,執行elasticsearch.bat文件。如若想停止運行ElasticSearch,按Ctrl+C;
5)驗證ElasticSearch是否正在運行,通過發送Http請示,向localhost:9200進行請求。若ElasticSearch運行正常,則返回如下結果:
5、ElasticSearch安裝過程--後臺模式(Windows系統)
ElasticSearch可以作為一個服務在後臺進行運行,或當系統啟動時可以自動運行,不需要人為干預。服務安裝可以通過bin目錄下麵的elasticsearch-service.bat腳本來實現,該腳本可以實現安裝、卸載、管理和配置服務,並可以啟動和停止服務,所有操作均可以通過命令行來完成。如下所示:
1 G:\elasticsearch-7.2.0\bin>elasticsearch-service.bat
2
3 可操作的命令:install|remove|manage|start|stop [service_id]
所以,執行該腳本,需要一個命令參數。同時,根據情況需要一個service_id,也就是可選參數。
在安裝服務時,確保服務的名稱和JAVA_HOME是可用的,如下圖所示:
6、ElasticSearch文件目錄結構
7、JVM配置說明
在config目錄中jvm.options文件里,對JVM的預設配置為1GB。在生產環境中,建議最大與最小記憶體設置成一樣的,最大記憶體不要超過機器的50%,同時記憶體的總量不要超過30GB。相關文章可參照:www.elastic.co/blog/a-heap-of-trouble
8、ElasticSearch插件的安裝
執行bin目錄中elasticsearch-plugin腳本,查看目前已經安裝的插件,如下圖所示:
可以看出目前沒有安裝任何插件,現在可以安裝一個分詞插件analysis-icu,如下圖所示:
可以看到,正在從elastic站點進行插件的下載和安裝。
二、Kibana的安裝與運行
1、Kibana下載地址:https://www.elastic.co/downloads/kibana ;
2、將下載的壓縮包進行解壓縮,如果需要對kibana進行一些配置,可以在config目錄下麵的kibana.yml文件中進行修改;
3、首先將ElasticSearch運行起來,因為kibana是基於ElasticSearch進行運行的;
4、kibana運行的預設埠是5601,向瀏覽器中訪問:http://localhost:5601,可見如下圖所示:
5、通過點擊添加樣例數據鏈接,可以看到如下圖:
我們可以添加關於電商、航空、網路日誌三種樣例數據。
6、另外,在kibana中的DevTool是一個很有用的工具,它可以調試ElasticSearch的API;
7、若要想對kibana進行漢化,從kibana6.8和ES7.0開始支持,在config目錄中,對kibana.yml文件中的i18n.locale項設置成: "zh-CN",也就是i18n.locale: "zh-CN"就可以了。
三、Logstash的安裝與運行
1、Logstash的下載地址:https://www.elastic.co/cn/downloads/logstash
2、從https://grouplens.org/datasets/movielens/地址中下載最小的測試數據集,將下載的數據集中的movies.csv文件導入到ElasticSearch中;
3、在Logstash目錄下麵的bin目錄下麵建立Logstash.conf文件,配置內容如下:
input {
file {
path => ["G:/logstash-7.2.0/sample-source/movies.csv"]
start_position => beginning
sincedb_path => "G:/logstash-7.2.0/abc"
}
}
filter {
csv {
separator => ","
columns => ["id","content","genre"]
}
mutate {
split => { "genre" => "|" }
remove_field => ["path", "host","@timestamp","message"]
}
mutate {
split => ["content", "("]
add_field => { "title" => "%{[content][0]}"}
add_field => { "year" => "%{[content][1]}"}
}
# mutate {
# gsub => [
#
# "year", "\\)", ""
# ]
# }
mutate {
convert => {
"year" => "integer"
}
strip => ["title"]
remove_field => ["path", "host","@timestamp","message","content"]
}
}
output {
elasticsearch {
hosts => "http://localhost:9200"
index => "movies"
document_id => "%{id}"
}
stdout {}
}
4、打開cmd,進行Logstash目錄下麵的bin目錄下,執行logstash -f logstash.conf,會將數據導入到ElasticSearch中,如下圖所示:
大家可關註我的公眾號
知識學習來源:《Elasticsearch核心技術與實戰》