最近工做須要,開始研究ES,當前ES的最新版本爲5.0.1,從以前的2.x的版本號一下升級到5.x,主要是以前Elastic的產品版本號由於收購等緣由很亂,ES 2.X版本的和Kibana 4.x版本的配套使用,讓人感受不爽。這下一步到位,全部的產品系列版本號都從5.0開始,這樣,5.0的ES就和5.0的Kibana一致了。node
本篇會記錄ES5.0.1 + Kibana 5.0.1 + ik 5.0.1的安裝。git
首先,去Elastic官網 https://www.elastic.co/downloads ,下載頁有全部Elastic的產品,都是最新的版本(版本號還一致)。github
下載Elasticsearch和Kibana。編程
而後去GitHub下載配套的IK分詞器,Smartcn也能夠,不過聽說沒有ik靈活,目前尚未深刻到分詞,之後再試驗。https://github.com/medcl/elasticsearch-analysis-ik/releases ,直接下編譯好的zip包。centos
好了,工具有齊。統一上傳到服務器上。我用的是CentOS,MAC的話,ES和IK都是同樣的,Kibana注意一下就行,Kibana區分平臺和32位/64位。瀏覽器
將三個文件放到一個文件夾中,scp到服務器安全
以後就開始在服務器上安裝了。服務器
導航到存放安裝文件目錄:curl
所有解壓,使用unzip和tar -xvzfelasticsearch
而後嘗試去啓動elasticsearch,到elasticsearch的bin目錄下,執行./elasticseharch。
若是遇到下面的錯誤:
說明是用root帳戶來啓動的,由於ES是沒有權限限制的,還能夠接收用戶的腳本,全部用root帳戶很不安全,須要新建一個帳戶來啓動。爲了讓普通帳戶啓動的ES可以寫入數據,須要將elasticsearch文件夾的操做權限付給新建的帳戶(ES的索引數據就放在elasticsearch/data/下)。
建立elsearch用戶組及elsearch用戶
groupadd elsearch
useradd elsearch -g elsearch -p elasticsearch
-g是添加到組,-p是密碼
更改elasticsearch文件夾及內部文件的所屬用戶及組爲elsearch:elsearch
cd /opt
chown -R elsearch:elsearch elasticsearch
同時,須要給新建的帳戶修改一下權限,ES要求的進程數和最大的內存都比原來大了。
修改vm.map 限制
vi /etc/sysctl.conf vm.max_map_count=262144
修改文件限制:
vi /etc/security/limits.conf
新建用戶名 hard nofile 65536
新建用戶名 soft nofile 65536
修改線程限制(這個比較特殊 centos 6.5的緣由)
vi /etc/security/limits.d/90-nproc.conf
* soft nproc 65535
* hard nproc 65535
而後用su指令切換到新建的普通用戶 ,啓動。若是須要後臺啓動的話,使用./elasticsearch -d。
而後就能夠在命令行中用curl http://localhost:9200?pretty 看看輸出
此時,ES能夠在本地訪問,可是用瀏覽器遠程的話,仍是沒法訪問的,由於相應的端口沒有打開。此時須要兩個步驟:
而後添加以下
9200,9300ES使用,5601Kibana使用,後面會說到。
Service iptables restart生效。
2. 此時請求進來是能夠的,可是ES也有配置,能夠接受外部請求,進到安裝目錄/config/elasticsearch.yml,將network.host設置爲0.0.0.0
而後重啓ES。此時,遠程就能夠訪問ES
接下來安裝Kibana,也挺簡單,解壓以後,先進到安裝目錄/config/kibana.yml中,將server.host修改一下,不然遠程沒法訪問,這個配置在Kibana4.6.1(對應ES2.4.0)的時候還不須要配置,可是5.0.1就須要了。
而後kibana裏面有默認的ES訪問路徑,若是你沒有改動過ES的端口,而且Kibana跟ES部署在一塊兒,就不須要改動,不然須要配置這裏:
而後遠程啓動,看下Kibana5.0.1的樣子:
以前ES和Kibana配合還須要使用plugin安裝一些Marvel,sense等,如今都不須要了,DevTools就是以前的Sense,好用!!
如今開始安裝ik分詞器,安裝以前,先說明一些變化:
3.從5.0開始ik的tokenizer發生了變化,提供了兩種,一種爲ik_smart,一種爲ik_max_word。直接一點,ik_max_word會盡可能從輸入中拆分出更多 token,而ik_smart則相反,我的感受,ik_max_word就是原來的ik,ik_smart是新加的。
好了,開始安裝,只須要把elasticsearch-analysis-ik-5.0.1.zip解壓,而後拷貝到ES安裝目錄下的plugins文件夾內,並把elasticsearch-analysis-ik-5.0.1文件夾名修改成ik。這樣,就安裝好了。正如前面說的,安裝完插件,如今不須要在配置文件中配置了,須要在新建索引的時候指定分詞器。
重啓啓動ES,能夠看到以下log
用kibana查看一下,後續會談到如何這樣作。
好啦,至此,ES+Kibana+IK安裝好了。從2.4.1到5.0.1版本號跨度很大,不少地方也發生了不少變化,整體來講,更簡便了。後面接着說下用JAVA API來操做ES。今天先到這裏。