CentOS7中Elasticsearch搭建

一: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
    }
  ]
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章