學習elasticsearch(一)linux環境搭建(2)——啟動elasticsearch


在啟動訪問es的過程中遇到了各種的奇葩問題。

1.網上各種版本的啟動方式讓人眼花繚亂不知如何啟動。簡單粗暴——到es的bin目錄下直接 執行

./elasticsearch //顯示啟動,ctrl+c可停止,如要操作,換個終端
./elasticsearch -d 后台啟動,可在當前終端繼續操作
//后台啟動,如要停止執行
kill -9 pid  //哈哈,直接殺掉進程
//搜索es進程pid可以醬紫
ps aux | grep elasticsearch 
//注意,不確定那個是pid的話多執行幾遍這個命令,看執行結果里不變的那個數字就是啦~

  

  成功后會看到醬紫的信息

然后測試一下

curl ‘http://localhost:9200’

 正常的話會出現醬紫的輸出

好,目前為止一切正常,然后用ip訪問的話卻不通。我這是虛擬機,我在本機可以ping通虛擬機,但是無法訪問es,在虛擬機里用ip訪問也不行,提示 connection refused。

具體錯誤看圖:

解決辦法:找到es的config文件夾的elasticsearch.yml文件,編輯

vim config/elasticsearch.yml

  找到network.host,冒號:后面跟一個空格,然后改成0.0.0.0

  

然后把最開頭的#去掉,#是注釋的意思最終變成醬紫

此處引用自:http://www.jianshu.com/p/658961f707d8  感謝作者愛跑咪

OK,保存后重新啟動es

嗯這時可能會報錯。常見的比如

ERROR: [2] bootstrap checks failed
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

  一般出現在這些位置

max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]解決辦法 此處引用自:http://blog.csdn.net/u012371450/article/details/51776505 感謝原作者分享寶貴經驗

另開一個終端用root操作
//輸入密碼....
[root@localhost ~]# cp /etc/security/limits.conf /etc/security/limits.conf.bak
[root@localhost ~]# cat /etc/security/limits.conf | grep -v "esadmin" > /tmp/system_limits.conf
[root@localhost ~]# echo "esadmin hard nofile 65536" >> /tmp/system_limits.conf 
[root@localhost ~]# echo "esadmin soft nofile 65536" >> /tmp/system_limits.conf 
[root@localhost ~]# mv /tmp/system_limits.conf /etc/security/limits.conf

 記得換成自己的es用戶名,我的esadmin

最后問你要不要保存,輸入yes

然后在你執行es的用戶終端,退出你這個es用戶,然后重新進入一下。不然更改不會生效!

//比如
su root
//輸入密碼...
su esadmin
然后驗證
ulimit -Hn
65536//輸出這個就算對了

  max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144] 解決辦法 此處引用自:http://www.cnblogs.com/sloveling/p/elasticsearch.html。感謝原作者分享寶貴經驗

切換到root用戶修改配置sysctl.conf

vi /etc/sysctl.conf 

添加下面配置:

vm.max_map_count=655360

並執行命令:

sysctl -p

然后,重新啟動elasticsearch,即可啟動成功。

  ok,現在重啟es,如果成功了,基本就搞定了。

用localhost和ip分別訪問。

哈哈,es! you,know,for Search !

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM