一:Elasticsearch的安裝
1.下載elasticsearch(Linux版本)
官網地址:https://www.elastic.co/downloads/elasticsearch
2.傳輸到特定的目錄以後解壓
tar -zxvf elasticsearch-6.2.4.tar.gz
3.文件夾改名
mv elasticsearch-6.2.4/ elasticsearch
4.新建用戶(高版本Elasticsearch不允許root啓動)
useradd ela
passwd ela
5.修改文件夾所屬
chown -R ela:ela /elasticsearch
6.修改配置
6.1 jvm.options
默認配置如下:
-Xms1g
-Xmx1g
內存佔用太多了,我們調小一些:
-Xms512m
-Xmx512m
6.2 elasticsearch.yml
修改數據和日誌目錄:
path.data: /usr/local/src/elasticsearch/data # 數據目錄位置
path.logs: /usr/local/src/elasticsearch/logs # 日誌目錄位置
修改目錄以後記得在相應位置創建這兩個文件夾,所有人爲ela
修改綁定的ip:
network.host: 0.0.0.0 # 綁定到0.0.0.0,允許任何ip來訪問
默認只允許本機訪問,修改爲0.0.0.0後則可以遠程訪問
7.啓動後可能會出現的問題以及解決(本人的CentOS7只遇到了錯誤2,4)
錯誤1:內核過低(CentOS版本過低)
修改elasticsearch.yml文件,在最下面添加如下配置:
bootstrap.system_call_filter: false
錯誤2:文件權限不足
我們用的是ela用戶,而不是root,所以文件權限不足。
首先用root用戶登錄。
然後修改配置文件:
vim /etc/security/limits.conf
添加下面的內容:
* soft nofile 65536
* hard nofile 131072
* soft nproc 4096
* hard nproc 4096
錯誤3:線程數不夠
剛纔報錯中,還有一行:
[1]: max number of threads [1024] for user [leyou] is too low, increase to at least [4096]
繼續修改配置:
vim /etc/security/limits.d/90-nproc.conf
修改下面的內容:
* soft nproc 1024
改爲:
* soft nproc 4096
錯誤4:進程虛擬內存
[3]: max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
vm.max_map_count:限制一個進程可以擁有的VMA(虛擬內存區域)的數量,繼續修改配置文件, :
vim /etc/sysctl.conf
添加下面內容:
vm.max_map_count=655360
然後執行命令:
sysctl -p
8.重啓終端窗口
所有錯誤修改完畢,一定要重啓你的 Xshell終端,否則配置無效
9.啓動Elasticsearch
進入安裝目錄的bin文件夾,執行
./elasticsearch 普通啓動
./elasticsearch -d 後臺啓動
10.啓動成功後訪問網頁出現界面
二:Kibana的安裝(windows版本)
kibana的使用依賴於node.js,所以先安裝node
https://jingyan.baidu.com/article/d169e1860e6d8c436611d89a.html
1.官網下載(版本最好與Elasticsearch版本一致)
https://www.elastic.co/cn/downloads/kibana
2.解壓到特定目錄
3.修改配置文件
進入安裝目錄下的config目錄,修改kibana.yml文件:
elasticsearch.url: "http://192.168.203.241:9200/"
4.運行
進入安裝目錄下的bin目錄:
雙擊kibana.bat
我們訪問:http://127.0.0.1:5601 顯示下圖爲成功
三:安裝分詞器
1.官網下載(版本必須與Elasticsearch一致)
https://github.com/medcl/elasticsearch-analysis-ik/releases?after=v6.4.2
2.解壓到Elasticsearch目錄的plugins目錄中
unzip elasticsearch-analysis-ik-6.2.4.zip
對於本人的ik-6.2.4,解壓後發現有一個父文件夾,高版本的ik分詞器沒有父文件夾,文件目錄解析就會出問題,所以需要Elasticsearch和分詞器一致
3.必須刪除壓縮包,不然Elasticsearch會掃描壓縮包然後報錯
4.重啓Elasticsearch
5.測試
在kibana控制檯輸入下面的請求:
POST _analyze
{
"analyzer": "ik_max_word",
"text": "我是中國人"
}
運行得到以下結果就表明分詞器啓用成功:
{
"tokens": [
{
"token": "我",
"start_offset": 0,
"end_offset": 1,
"type": "CN_CHAR",
"position": 0
},
{
"token": "是",
"start_offset": 1,
"end_offset": 2,
"type": "CN_CHAR",
"position": 1
},
{
"token": "中國人",
"start_offset": 2,
"end_offset": 5,
"type": "CN_WORD",
"position": 2
},
{
"token": "中國",
"start_offset": 2,
"end_offset": 4,
"type": "CN_WORD",
"position": 3
},
{
"token": "國人",
"start_offset": 3,
"end_offset": 5,
"type": "CN_WORD",
"position": 4
}
]
}