Elasticsearch5.0.1 + Kibana5.0.1 + IK 5.0.1安裝記錄

最近工做須要,開始研究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能夠在本地訪問,可是用瀏覽器遠程的話,仍是沒法訪問的,由於相應的端口沒有打開。此時須要兩個步驟:

  1. iptables添加白名單,命令:vi /etc/sysconfig/iptables

而後添加以下

 

92009300ES使用,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分詞器,安裝以前,先說明一些變化:

  1. 以前能夠在node節點上配置index默認的分詞器,若是是多節點,那麼在每一個節點上都配置就好了。這個有點不靈活,因此。5.0以後,ES已經再也不支持在elasticsearch.yml中配置分詞器,改而在新建索引時,使用settings去配置,這個會在後面的編程中說到。
  2. 以前使用delete-by-query插件來實現type的整個刪除。這個插件也是從5.0開始沒有了,被整個島ES的Core中

  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。今天先到這裏。 

相關文章
相關標籤/搜索