由於ElasticSearch是基於Lucene的分佈式搜索引擎,Elasticsearch是用Java開發的,並做爲Apache許可條款下的開放源碼發佈,因此須要先在你的環境中安裝jre環境。具體能夠參考這篇文章Centos7 安裝和配置jre1.8。瀏覽器
第一步,下載ElasticSearch服務器
https://www.elastic.co/downloads/elasticsearchcors
第二步,上傳到/home/data目錄下curl
cd /home
mkdir data
cd data
rz
第三步,解壓文件並移動到elasticsearch目錄下elasticsearch
tar -zxvf elasticsearch-6.5.4.tar.gz
cd ..
mkdir elasticsearch
mv /home/data/elasticsearch-6.5.4/ /home/elasticsearch/
第四步,啓動elasticsearchtcp
cd /home/elasticsearch/elasticsearch-6.5.4/bin
./elasticsearch
發現報錯分佈式
表示不能使用root用戶啓動elasticsearch。咱們須要建立一個用戶來啓動elasticsearch測試
groupadd esgroup
useradd esuser -g esgroup-p esuser
給elasticsearch目錄授予esuser權限搜索引擎
chown esuser:esgroup -R /home/elasticsearch/
如今切換esuser用戶再次啓動url
su esuser
./elasticsearch
若是出現以下標誌表示啓動成功了
測試一下,9200是elasticsearch的默認端口
curl http://localhost:9200
如今配置遠程訪問
修改elasticsearch配置文件
/home/elasticsearch/elasticsearch-6.5.4/config/elasticsearch.yml
network.host就是你的服務器的ip地址
在末尾添加
http.cors.enabled: true
http.cors.allow-origin: "*"
防火牆開放9200端口
firewall-cmd --zone=public --add-port=9200/tcp --permanent
firewall-cmd --reload
或者關閉防火牆
systemctl stop firewalld.service
systemctl disable firewalld.service 禁止防火牆開機啓動
再次重啓elasticsearch。
在Windows電腦的瀏覽器訪問http://192.168.0.117:9200/
這就已經配置好了。
可能碰見的問題
max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
解決辦法:
vi /etc/security/limits.conf
在末尾添加,* 表示所有用戶
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
max number of threads [2048] for user [lishang] likely too low, increase to at least [4096]
解決辦法:
vi /etc/security/limits.d/20-nproc.conf
將以下內容
* soft nproc 2048
修改成
* soft nproc 4096
max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
解決辦法:
vi /etc/sysctl.conf
文件末尾添加
vm.max_map_count=655360
執行命令
sysctl -p
重啓服務器
再次啓動elasticsearch,發現能夠正常啓動了。