坑都已經踩好了 照着步驟一次成功 不多廢話 走起
# ## 安裝java運行環境
elasticsearch是用Java實現的 跑elasticsearch必須要有jre支持 所以必須先安裝jre
可以參考 https://www.cnblogs.com/renxixao/p/11469754.html
# ## 安裝elasticsearch-6.2.4
解壓后啟動 elasticsearch
[root@localhost ~]# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.4.tar.gz [root@localhost ~]# tar -zxvf elasticsearch-6.2.4.tar.gz -C /usr/local/
[root@localhost ~]# sh /usr/local/elasticsearch-6.2.4/bin/elasticsearch
發現報錯了
從5.0開始 elasticsearch 安全級別提高了 不允許采用root帳號啟動 所以我們要添加一個用戶用來啟動 elasticsearch
開始之前先把防火牆關了 耽誤事
[root@localhost ~]# systemctl stop firewalld.service [root@localhost~]# systemctl disable firewalld.service//禁止防火牆開機啟動 [root@localhost ~]# useradd es//創建es用戶 [root@localhost ~]# chown -R es:es /usr/local/elasticsearch-6.2.4///把目錄權限賦予給es用戶 [root@localhost ~]# su es//切換至es用戶 [es@localhost root]$ vi /usr/local/elasticsearch-6.2.4/config/elasticsearch.yml
把 host改為本機地址
記得把前面注釋#刪掉 再執行 sh /usr/local/elasticsearch-6.2.4/bin/elasticsearch
執行sh /usr/local/elasticsearch-6.2.4/bin/elasticsearch后可能會出現幾種報錯情況
注意:以下操作都要切換到root下執行
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
修改/etc/security/limits.conf文件 在文件末尾添加如下
[es@localhost root]$ su root
[root@localhost~]# vi /etc/security/limits.conf
* hard nofile 65536
* soft nofile 65536
[2]: max number of threads [3818] for user [es] is too low, increase to at least [4096]
[root@localhost ~]# vi /etc/security/limits.d/20-nproc.conf
* soft nproc 4096
* hard nproc 4096
root soft nproc unlimited
[3]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
/etc/sysctl.conf文件末尾添加 vm.max_map_count = 2621441
[root@localhost ~]# vi /etc/sysctl.conf [root@localhost~]# sudo sysctl -p /etc/sysctl.conf//立即生效
以上三個是常見的三個錯誤 其余的請自行百度
[root@localhost ~]# ulimit -a
發現當前最大線程數還是為3818 別慌 重啟下虛擬機 重啟后才能生效
接着切換到es用戶啟動
[root@localhost ~]# su es [es@localhost root]$ sh/usr/local/elasticsearch-6.2.4/bin/elasticsearch -d //加-d就是啟動后台進程 [es@localhost root]$ ps -ef|grep elasticsearch 驗證下服務是否正常運行 curl http://192.168.88.133:9200
出來這個 說明配置OK
瀏覽器請求下 http://192.168.88.133:9200/