百度網(wǎng)盤下載
1 安裝JDK
網(wǎng)上教程很多,也可以參考本人教程之前寫的Linux安裝JDK
2 安裝Elasticsearch
首先到官網(wǎng)下載最新版本的ElasticSearch的zip壓縮包,也可以復制下載地址在終端中使用wget命令直接下載到CentOS中。例如在終端中執(zhí)行以下命令:
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.0.0.tar.gz
1.先在linux創(chuàng)建elsearch用戶,因為elasticsearch不能用root用戶操作
useradd elsearch
在創(chuàng)建安裝文件夾,授權(quán)文件夾為elsearch操作
2.//創(chuàng)建
mkdir /usr/local/elasticsearch
- //授權(quán)
chown elsearch:elsearch /usr/local/es -R
chown elsearch:elsearch /usr/local/es/elasticsearch-7.6.2/logs -R
4.上傳es的文件解壓到es目錄
tar -xvf elasticsearch-7.6.2-linux-x86_64.tar.gz -C es
5.修改配置文件
/usr/local/es/elasticsearch-7.6.2/config
修改elasticsearch.yml
vim elasticsearch.yml
設置任意ip都可以連接
network.host: 0.0.0.0
修改jvm.options
vim jvm.options
-Xms128m
-Xmx128m
修改 /etc/sysctl.conf
vim /etc/sysctl.conf
vm.max_map_count=655360
配置生效
sysctl -p
啟動elasticsearch
cd /usr/local/es/elasticsearch-7.6.2/bin/
./elasticsearch
或者 ./elasticsearch -d 后臺啟動
``
``
5.添加用戶組(因為elasticsearch不能用root用戶啟動)
1)創(chuàng)建 elasticsearch 用戶組
[root@localhost ~]# groupadd elasticsearch
2) 創(chuàng)建用戶 es 并設置密碼為es
[root@localhost ~]# useradd es
[root@localhost ~]# passwd es
3 )用戶es 添加到 elasticsearch 用戶組
[root@localhost ~]# usermod -G elasticsearch es
6..這時重新啟動,不會提示任何錯誤了。新打開一個窗口,輸入curl localhost:9200,如果有以下輸出則說明啟動成功。
[king@localhost ~]$ curl localhost:9200
{
"name" : "ZGws7ZX",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "yeYDTLbNQ--rmDXMi2xO-g",
"version" : {
"number" : "5.5.2",
"build_hash" : "b2f0c09",
"build_date" : "2017-08-14T12:33:14.154Z",
"build_snapshot" : false,
"lucene_version" : "6.6.0"
},
"tagline" : "You Know, for Search"
}
問題
問題一
直接啟動,遇到如圖問題,如下:

這個問題是由于內(nèi)存分配不夠造成的,修改適合本機的內(nèi)存,修改文件config/jvm.options
vi ../config/jvm.options

由于我的服務器內(nèi)存較小,修改為512m,具體可以根據(jù)情況修改,如下:

修改后在次啟動:
./elasticsearch
問題二
出現(xiàn)如下錯誤:
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
如圖

這個問題很明顯,不允許使用root用戶啟動,那么我們新建一個es用戶,并賦予權(quán)限:
添加es用戶
useradd es
添加es用戶密碼
passwd es
將文件夾elasticsearch-5.4.2賦予es權(quán)限
chown -R es:es /usr/local/tool/elasticsearch/elasticsearch-5.4.2
切換為es用戶
su es
再次啟動es
./elasticsearch
這次啟動成功了,我們在使用一個窗口登錄root用戶,輸入命令:
curl -X GET http://localhost:9200
如圖所示,可以成功訪問

問題三
在瀏覽器訪問http://118.24.242.170:9200/拒絕訪問(118.24.242.170為服務器ip)
使用root用戶,打開elasticsearch.yml文件,如下:
vi /usr/local/tool/elasticsearch/elasticsearch-5.4.2/config/elasticsearch.yml
文件內(nèi)增加如下代碼
network.host: 0.0.0.0
使用es用戶啟動,發(fā)現(xiàn)又出現(xiàn)了錯誤如下,得到錯誤信息如圖

使用root用戶打開如下文件:
vim /etc/sysctl.conf
添加如下配置:
vm.max_map_count = 655360
使配置生效
/sbin/sysctl -p
然后使用es用戶啟動Elasticsearch,這次可以成功啟動了,如果需要后臺啟動的話,在啟動命令后加&,如下所示:
./elasticsearch &