Linux環境CentOS6.9安裝配置Elasticsearch6.2.2最全詳細教程

saxon_i發表於2018-07-24

Linux環境CentOS6.9安裝配置Elasticsearch6.2.2最全詳細教程

前言

第一步:下載Elasticsearch6.2.2

第二步:建立應用程式目錄

第三步:解壓Elasticsearch

第四步:建立Elasticsearch使用者和所在組

第五步:更改解壓的Elasticsearch應用所屬使用者及組

第六步:執行指令碼新增可執行許可權

第八步:啟動


前言

作業系統版本:CentOS6.9 64位(CentOS7及其他Linux系統都沒有問題) 

Elasticsearch版本:6.2.2 

這裡預設你已經安裝配置好了JDK1.8,如果沒有的話請自行安裝配置 

注意,如無特殊說明以下操作都是在root使用者下操作的(一開始的時候搞大資料,都是用普通使用者+sudo許可權操作的,然後發現好多許可權問題,後來乾脆全部root使用者)

第一步:下載Elasticsearch6.2.2

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.2.tar.gz

第二步:建立應用程式目錄

mkdir-p /opt/modules/

第三步:解壓Elasticsearch

tar -zxf elasticsearch-6.2.2.tar.gz-C /opt/modules/

然後Elasticsearch的根目錄就是/opt/modules/elasticsearch-6.2.2了 

不過我喜歡再另外單獨建立一個目錄以存放應用程式的軟連結

# 建立應用程式軟連結的目錄

mkdir -p /opt/shortcut/

# 建立Elasticsearch根目錄的軟連結ln -s /opt/modules/elasticsearch-6.2.2/ /opt/shortcut/elasticsearch

第四步:建立Elasticsearch使用者和所在組

Elasticsearch預設是不允許root使用者執行的,不管是Elasticsearch5還是Elasticsearch6,否則的話Elasticsearch執行的時候會報錯

1. 先建立bigdata組,並指定組id為1024(我是搞大資料的,大資料所有使用者及應用全部放在bigdata使用者組內)

groupadd-g1024bigdata

2. 建立es使用者並指定所在組為bigdata

useradd-gbigdata es

檢視是否建立成功

id es

第五步:更改解壓的Elasticsearch應用所屬使用者及組

# 先切換到Elasticsearch根目錄

cd /opt/shortcut/elasticsearch

# 更改目錄及檔案許可權

chown -R es:bigdata .

chown:表示修改檔案所有權 

-R :迴圈遞迴修改所有檔案及目錄 

es:bigdata:第一個是使用者名稱,第二個是組名 

別忘了最後面的”.”啊,表示當前目錄

來現在我們看下Elasticsearch的bin目錄: 

我們發現有很多.bat檔案,這個是Windows下執行的指令碼 

看著就不爽,果斷刪除

rm-fbin/*.bat

啊,整個世界都清爽啦

第六步:執行指令碼新增可執行許可權

chmodu+xbin/*

第七步:修改相關配置

1. 修改limits.conf配置檔案(修改使用者最大可建立檔案數)

vim /etc/security/limits.conf# 新增如下內容

*      soft    nofile          65536

*      hard    nofile          1048576

*      soft    nproc          65536

*      hard    nproc          unlimited

*      soft    memlock        unlimited

*      hard    memlock        unlimited

別人的部落格裡一般只是新增了前兩項,我這邊還有大資料的環境,所以多一些

2. 修改90-nproc.conf

vim /etc/security/limits.d/90-nproc.conf

# 修改成4096或者更大

*          soft    nproc    4096

root      soft    nproc    unlimited

一開始的時候看別人的部落格,說改成2048,結果Elasticsearch還是說小,按Elasticsearch的提示加到4096

3. 修改sysctl.conf

vim /etc/sysctl.conf# 尾部新增下面的配置vm.max_map_count=655360# 然後執行命令

sysctl -p

4. 修改elasticsearch.yml

vim config/elasticsearch.yml

# Centos6不支援SecComp,bootstrap.memory_lock:falsebootstrap.system_call_filter:false

# 預設的只能本機訪問,修改後就可以遠端訪問了network.host:0.0.0.0# 叢集名稱cluster.name:bigdata

# 當前節點名稱,這裡配置為主機名node.name:cm02.spark.com

bootstrap.memory_lock和bootstrap.system_call_filter預設為true而Centos6不支援SecComp,而Elasticsearch預設bootstrap.system_call_filter為true進行檢測 

會導致失敗 

上面的配置都要一個一個配置啊,不然後面你還要根據報錯一個一個改

第八步:啟動

從root使用者切換到es使用者, 

然後在Elasticsearch根目錄下執行

bin/elasticsearch

看到這個頁面說明已經安裝啟動成功了, 

不過還是要測試一下 

Linux下輸入curl命令測試一下

curl cm02.spark.com:9200

curl是CentOS自帶的,如果你的系統上沒有的話請自行安裝 

這裡是通過主機名加埠號訪問的, 

我這裡主機名已經對映了IP地址,所以也可以通過IP地址加埠號訪問 

下面通過瀏覽器訪問試試 

在瀏覽器輸入地址:http://cm02.spark.com:9200/ 

可以發現效果是一樣的。 

這是谷歌瀏覽器的截圖,連個Logo都沒有,太簡潔了

至此安裝配置完成 

Linux就是這樣,絕大部分時候都是在命令列操作的,如果你想安裝視覺化介面的話可以裝一下Kibana 

Kibana是一個針對Elasticsearch的開源分析及視覺化平臺,用來搜尋、檢視互動儲存在Elasticsearch索引中的資料。 

不過這裡就不討論這個了

FAQ:

1. 若發現elastic啟動時提示max number of threads is too low錯誤?

解決:因為centos6.9預設當前使用者的最大執行緒數為1024,需修改配置檔案/etc/security/limits.d/90-nproc.conf為4096即可。

參考文獻


相關文章