前幾天 Chris 才 Po 了一篇 介紹超強大的分散式搜尋引擎 Elasticsearch
那個時候 Elasticsearch 的版本才 6.1.2,沒想到才幾天的時間 Elasticsearch 官方又釋出了 6.2.1 的版本啦!! Elasticsearch 更新的速度真的太快了,今天就用 Elasticsearch 6.2.1 來當做安裝教學的版本。
軟體版本
- 作業系統:CentOS 7
- Elasticsearch:6.2.1
- JDK:1.8.0
1.修改HostName
# hostnamectl set-hostname elk-master-01
2.更新以及安裝有用到的工具
# yum -y update
# yum -y install wget
# yum -y install vim
3.安裝 JDK 1.8.0
# yum -y install java-1.8.0-openjdk.x86_64
4.設置 JAVA_HOME 路徑
# export JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk
5.下載Elasticsearch
# cd /tmp
6.安裝 Elasticsearch
# rpm -ivh /tmp/elasticsearch-*.rpm
7.設定 Elasticsearch 綁定的 IP 及 Port
# vim /etc/elasticsearch/elasticsearch.yml
找到以下兩個設定值:
network.bind_host: 0.0.0.0
http.port: 9200
8.防火牆開通
安裝完 CentOS 7 預設會開啟防火牆,所以當設定完 Elasticsearch 後一定要開通 Policy 喔,不然外部會有連不到的狀況喔。
# firewall-cmd --add-port=9200/tcp --permanent
# firewall-cmd --reload
你也可以將防火牆完全關閉,當然測試時可以這樣用,但線上環境為了安全上的考量不建議全關喔。
# systemctl stop firewalld
# systemctl disable firewalld
9.記憶體調整
在 Linux 環境中安裝 Elasticsearch 預設記憶體只有 1 GB
除非是測試用途,不然這樣的配置,系統一定會出問題,建議記憶體給的越大越好,因為記憶體越大,查詢速度越快。但 Elasticsearch 配置記憶體有兩個條件限制,違反下面兩個條件,Elasticsearch 查詢速度會不升反減:
這邊 Chris 測試機的記憶體有16 GB 所以記憶體使用下限跟記憶體使用上限我都設定為 8 GB(請依照自己的環境修改)。
# vim /etc/elasticsearch/jvm.options
找到以下兩個設定值,都改為 8g:
-Xms8g
-Xmx8g
請確保記憶體最小值(Xms)與最大值(Xmx)的大小是相同的,這是防止程序在執行時改變記憶體大小,因為這是一個很耗系統資源的過程。
10.啟動 Elasticsearch
# systemctl start elasticsearch
查看狀態:
# systemctl status elasticsearch
# curl "http://localhost:9200/"
看到最下面有 You Know, for Search 這字串就代表安裝成功啦!!
11.設定 Elasticsearch 為背景服務
# sudo systemctl daemon-reload
# sudo systemctl enable elasticsearch.service
# sudo systemctl start elasticsearch.service
小結
如果對於 json 語法還不太熟悉,也不喜歡一直下 Command 的話,這邊建議大家可以在 Chrome 瀏覽器上安裝 Elasticsearch Head 的套件,Head是集群管理工具、資料可視化、也可以做任何 CRUD(select、insert、update、delete) 的工具喔。
沒有留言:
張貼留言