當前位置:
首頁 > 知識 > Elasticsearch學習隨筆(一)——原理理解與5.0核心插件部署過程

Elasticsearch學習隨筆(一)——原理理解與5.0核心插件部署過程

最近由於要涉及一些安全運維的工作,最近在研究Elasticsearch,為ELK做相關的準備。於是把自己學習的一些隨筆分享給大家,進行學習,在部署常用插件的時候由於是5.0版本的Elasticsearch踩了非常多的坑,寫給大家避免大家再踩坑。

  • Elasticsearch啟動,5.0版本核心插件的安裝。

Elasticsearch的啟動十分簡單,只需要平時在Linux下運行即可:

cd elasticsearch/bin
./elasticsearch &

Elasticsearch有兩個王牌的工具,一般大家都會用到。一個是head,一個是bigdesk。不過不幸的是目前最新的Elastic 5.x 系列,這兩個工具都不能像之前一樣插件化集成,但仍可以使用,需要一些特殊的方法。

對於head工具,我們可以使用npm命令來來啟動,並且由於Elasticsearch在5.0版本有嚴格的跨域限制,所以我們也需要修改Elasticsearch的跨域策略來允許head工具管理Elasticsearch。

配置Elasticsearch文件下config文件夾下elasticsearch.yml文件,在配置末尾添加以下內容:

http.cors.enabled: true
http.cors.allow-origin: "*"

同時head工具使用npm進行啟動,無法進行插件化,具體方法如下:

git clone git://github.com/mobz/elasticsearch-head.git
cd elasticsearch-head
npm install
npm run start

對於bigdesk由於也無法插件化集成,所以需要使用python來發布。

git clone https://github.com/hlstudio/bigdesk
cd bigdesk/_site/
python -m SimpleHTTPServer

  • Elasticsearch核心術語理解:

這塊是困擾我比較久的地方,查閱了很多資料,如果術語不能理解那麼我們無法正確且合理的維護Elasticsearch集群,我是通過Head插件來進行學習和理解的。

Elasticsearch學習隨筆(一)——原理理解與5.0核心插件部署過程

Node:我們可以理解為一台伺服器和一個虛擬機,是集群的最小分配部分,一個Elasticsearch伺服器可以為一個Node。同網段的Node可以通過head來發現並進行管理。

Index:相當於一個索引,通常對應關係型資料庫中的Database,我們將一大類通常分成一個Index。我們在使用head去創建Index的時候,我發現又存在兩個關鍵名詞需要理解。

shards:為了提高查詢效率,一個Index要被切成多份,分別存儲在多個Node上,同時為了保證高可用,配置Index時候還需要配置replica。舉個例子,對於一個Index可能有5個shards,然而萬一這五個shards丟了怎麼辦,最樸素的思想是我把這5個shards再複製一份再分別保存到其他節點上。於是在Elasticsearch集群中我們經常看到這張圖,我從網上找了一個生產環境的集群來理解。

Elasticsearch學習隨筆(一)——原理理解與5.0核心插件部署過程

其中加粗的是分片是主分片,未加粗的分片是replica。作為備份。

後續準備總結一下Elasticsearch常見的API,以及調用關係。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 達人科技 的精彩文章:

14:40-15:00博客站點web伺服器雪崩似的CPU 100%

TAG:達人科技 |

您可能感興趣

Glacier Falls平台、10核心20線程Casacde Lake-X處理器流出
Spring核心——Stereotype組件與Bean掃描
iPhone8/8Plus iPhone X 核心資訊全解讀
英特爾新HEDT實錘:Glacier Falls平台、10核心20線程Casacde Lake-X處理器流出
對話以太坊Casper核心研究者Karl Floersch
Facebook發布Tensor Comprehensions:自動編譯高性能機器學習核心的C+庫
微軟Panos Panay:Surface是戰略核心
疑似AMD Flute SoC現身評分網站,或為Project Scarlett核心
jQuery UI API 類別-特效核心(Effects Core)
華碩秀Zenith Extreme Alpha X399主板:32核心撕裂者御用
Intel 28核心專屬!美蛋上架華碩Dominus Extreme:主板都破萬了
BT 採用 Ubuntu OpenStack 作為其 5G 和光纖到戶項目的核心系統
Netflix披露FreeBSD與Linux核心漏洞
對 Python 開發者而言,IPython 仍然是 Jupyter Notebook 的核心
第二代Threadripper處理器核心規格和售價信息曝光
NFS-Ganesha 核心架構解讀
碰瓷對標Redmi實錘!realme X不是旗艦機核心配置看齊Note 7 Pro
AMD推出Radeon Vega II Duo:雙Vega 20核心,針對Mac Pro專業用戶
以太坊錢包內鬥大戰升級?MyEtherWallet核心開發人員疑單飛推出MyCrypto.com
AMD Athlon Pro 200GE集成Vega繪圖核心