本篇文章給大家分享的是有關Elasticsearch的安裝使用是怎樣的,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
成都創(chuàng)新互聯公司2013年開創(chuàng)至今,先為阿里地區(qū)等服務建站,阿里地區(qū)等地企業(yè),進行企業(yè)商務咨詢服務。為阿里地區(qū)企業(yè)網站制作PC+手機+微官網三網同步一站式服務解決您的所有建站問題。導讀 | ElasticSearch是一個基于Lucene的搜索服務器。它提供了一個分布式多用戶能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java語言開發(fā)的,并作為Apache許可條款下的開放源碼發(fā)布,是一種流行的企業(yè)級搜索引擎。 |
Elastic
Elastic有一條完整的產品線及解決方案:Elasticsearch、Kibana、Logstash等,前面說的三個就是大家常說的ELK技術棧。
Elasticsearch
Elasticsearch官網:https://www.elastic.co/cn/products/elasticsearch
如上所述,Elasticsearch具備以下特點:
分布式,無需人工搭建集群(solr就需要人為配置,使用Zookeeper作為注冊中心)
Restful風格,一切API都遵循Rest原則,容易上手
近實時搜索,數據更新在Elasticsearch中幾乎是完全同步的。
版本
目前Elasticsearch最新的版本是6.3.1,我們就使用6.3.0
需要虛擬機JDK1.8及以上
安裝和配置
為了模擬真實場景,我們將在 linux下安裝Elasticsearch。
新建一個用戶leyou
出于安全考慮,elasticsearch默認不允許以root賬號運行。
創(chuàng)建用戶:
useradd leyou
設置密碼:
passwd leyou
切換用戶:
su - leyou
上傳安裝包,并解壓
我們將安裝包上傳到:/home/leyou目錄
解壓縮:
tar -zxvf elasticsearch-6.2.4.tar.gz
刪除壓縮包:
rm -rf elasticsearch-6.2.4.tar.gz
我們把目錄重命名:
mv elasticsearch-6.2.4/ elasticsearch
進入,查看目錄結構:
修改配置
我們進入config目錄:cd config
需要修改的配置文件有兩個:
jvm.options
Elasticsearch基于Lucene的,而Lucene底層是Java實現,因此我們需要配置jvm參數。
編輯jvm.options:
vim jvm.options 默認配置如下: -Xms1g -Xmx1g 內存占用太多了,我們調小一些: -Xms512m -Xmx512m elasticsearch.yml
vim elasticsearch.yml 修改數據和日志目錄: path.data: /home/leyou/elasticsearch/data # 數據目錄位置 path.logs: /home/leyou/elasticsearch/logs # 日志目錄位置
我們把data和logs目錄修改指向了elasticsearch的安裝目錄。但是這兩個目錄并不存在,因此我們需要創(chuàng)建出來。
進入elasticsearch的根目錄,然后創(chuàng)建:
mkdir data mkdir logs
修改綁定的ip:
network.host: 0.0.0.0 # 綁定到0.0.0.0,允許任何ip來訪問
默認只允許本機訪問,修改為0.0.0.0后則可以遠程訪問
目前我們是做的單機安裝,如果要做集群,只需要在這個配置文件中添加其它節(jié)點信息即可。
elasticsearch.yml的其它可配置信息:
屬性名 說明 cluster.name 配置elasticsearch的集群名稱,默認是elasticsearch。建議修改成一個有意義的名稱。 node.name 節(jié)點名,es會默認隨機指定一個名字,建議指定一個有意義的名稱,方便管理 path.conf 設置配置文件的存儲路徑,tar或zip包安裝默認在es根目錄下的config文件夾,rpm安裝默認在/etc/ elasticsearch path.data 設置索引數據的存儲路徑,默認是es根目錄下的data文件夾,可以設置多個存儲路徑,用逗號隔開 path.logs 設置日志文件的存儲路徑,默認是es根目錄下的logs文件夾 path.plugins 設置插件的存放路徑,默認是es根目錄下的plugins文件夾 bootstrap.memory_lock 設置為true可以鎖住ES使用的內存,避免內存進行swap network.host 設置bind_host和publish_host,設置為0.0.0.0允許外網訪問 http.port 設置對外服務的http端口,默認為9200。 transport.tcp.port 集群結點之間通信端口 discovery.zen.ping.timeout 設置ES自動發(fā)現節(jié)點連接超時的時間,默認為3秒,如果網絡延遲高可設置大些 discovery.zen.minimum_master_nodes 主結點數量的最少值 ,此值的公式為:(master_eligible_nodes / 2) + 1 ,比如:有3個符合要求的主結點,那么這里要設置為2
修改文件權限:
leyou 要own(擁有) elasticsearch 這個文件夾權限 -R 是遞歸的賦予權限
chown leyou:leyou elasticsearch/ -R
運行
進入elasticsearch/bin目錄,可以看到下面的執(zhí)行文件:
然后輸入 命令:
./elasticsearch
發(fā)現報錯了,啟動失?。?/p>
錯誤1:內核過低
我們使用的是 CentOS6,其linux內核版本為2.6。而Elasticsearch的插件要求至少3.5以上版本。不過沒關系,我們禁用這個插件即可。
修改elasticsearch.yml文件,在最下面添加如下配置:
bootstrap.system_call_filter: false
然后重啟
錯誤2:文件權限不足
再次啟動,又出錯了:
[1]: max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
我們用的是leyou用戶,而不是root,所以文件權限不足。
首先用root用戶登錄。
然后修改配置文件:
vim /etc/security/limits.conf 添加下面的內容: * soft nofile 65536 * hard nofile 131072 * soft nproc 4096 * hard nproc 4096
錯誤3:線程數不夠
剛才報錯中,還有一行:
[1]: max number of threads [1024] for user [leyou] is too low, increase to at least [4096]
這是線程數不夠。
繼續(xù)修改配置:
vim /etc/security/limits.d/90-nproc.conf 修改下面的內容: * soft nproc 1024 改為: * soft nproc 4096
錯誤4:進程虛擬內存
[3]: max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
vm.max_map_count:限制一個進程可以擁有的VMA(虛擬內存區(qū)域)的數量,繼續(xù)修改配置文件, :
vim /etc/sysctl.conf 添加下面內容: vm.max_map_count=655360 然后執(zhí)行命令: sysctl -p
重啟終端窗口
所有錯誤修改完畢,一定要重啟你的 X shell終端,否則配置無效。
啟動
再次啟動,終于成功了!
可以看到綁定了兩個端口:
9300:集群節(jié)點間通訊接口
9200:客戶端訪問接口
我們在瀏覽器中訪問:http://192.168.56.101:9200
安裝kibana
1.4.1.什么是Kibana?
Kibana是一個基于Node.js的Elasticsearch索引庫數據統(tǒng)計工具,可以利用Elasticsearch的聚合功能,生成各種圖表,如柱形圖,線狀圖,餅圖等。
而且還提供了操作Elasticsearch索引數據的控制臺,并且提供了一定的API提示,非常有利于我們學習Elasticsearch的語法。
安裝
因為Kibana依賴于node,我們的虛擬機沒有安裝node,而window中安裝過。所以我們選擇在window下使用kibana。
最新版本與elasticsearch保持一致,也是6.3.0
解壓到特定目錄即可
配置運行
進入安裝目錄下的config目錄,修改kibana.yml文件:
修改elasticsearch服務器的地址:
elasticsearch.url: "http://192.168.56.101:9200"
運行
進入安裝目錄下的bin目錄:
雙擊運行:
發(fā)現kibana的監(jiān)聽端口是5601
我們訪問:http://127.0.0.1:5601
控制臺
選擇左側的DevTools菜單,即可進入控制臺頁面:
在頁面右側,我們就可以輸入請求,訪問Elasticsearch了。
安裝ik分詞器
Lucene的IK分詞器早在2012年已經沒有維護了,現在我們要使用的是在其基礎上維護升級的版本,并且開發(fā)為ElasticSearch的集成插件了,與Elasticsearch一起維護升級,版本也保持一致,最新版本:6.3.0
安裝
上傳資料中的zip包,解壓到Elasticsearch目錄的plugins目錄中:
使用unzip命令解壓:
unzip elasticsearch-analysis-ik-6.3.0.zip -d ik-analyzer
然后重啟elasticsearch:
測試
大家先不管語法,我們先測試一波。
在kibana控制臺輸入下面的請求:
POST _analyze { "analyzer": "ik_max_word", "text": "我是中國人" }
運行得到結果:
{ "tokens": [ { "token": "我", "start_offset": 0, "end_offset": 1, "type": "CN_CHAR", "position": 0 }, { "token": "是", "start_offset": 1, "end_offset": 2, "type": "CN_CHAR", "position": 1 }, { "token": "中國人", "start_offset": 2, "end_offset": 5, "type": "CN_WORD", "position": 2 }, { "token": "中國", "start_offset": 2, "end_offset": 4, "type": "CN_WORD", "position": 3 }, { "token": "國人", "start_offset": 3, "end_offset": 5, "type": "CN_WORD", "position": 4 } ] }
以上就是Elasticsearch的安裝使用是怎樣的,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注創(chuàng)新互聯-成都網站建設公司行業(yè)資訊頻道。
本文題目:Elasticsearch的安裝使用是怎樣的-創(chuàng)新互聯
URL地址:http://chinadenli.net/article30/cdjepo.html
成都網站建設公司_創(chuàng)新互聯,為您提供建站公司、自適應網站、網站維護、網站改版、全網營銷推廣、靜態(tài)網站
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯