1. 程式人生 > >elasticsearch教程--Plugins篇-外掛

elasticsearch教程--Plugins篇-外掛

目錄

  • 概述

  • 環境準備

  • 認識es外掛

  • 外掛安裝
  • 外掛管理命令
  • 彩蛋

概述

    上一篇博文記錄了elasticsearch分詞器, 在地大物博的祖國使用es,不得不考慮中文分詞器,es內建的分詞器對中文分詞的支援可以用慘不忍睹來形容不為過,如果想安裝中文分詞器,就需要藉助es的外掛。本文將記錄一下專案中如何使用外掛,希望能夠幫助到即將來踩坑的小夥伴們

本文都是基於elasticsearch安裝教程 中的elasticsearch安裝目錄(/opt/environment/elasticsearch-6.4.0)為範例

環境準備

  1. 全新最小化安裝的centos 7.5
  2. elasticsearch 6.4.0

認識es外掛

    es外掛是一種增強Elasticsearch核心功能的途徑。它們可以為es新增自定義對映型別、自定義分詞器、原生指令碼、自伸縮等等擴充套件功能。

es外掛包含JAR檔案,也可能包含指令碼和配置檔案,並且必須在叢集中的每個節點上安裝。安裝之後,需要重啟叢集中的每個節點才能使外掛生效。

    es外掛包含核心外掛和第三方外掛兩種

核心外掛

    核心外掛是elasticsearch專案提供的官方外掛,都是開源專案。這些外掛會跟著elasticsearch版本升級進行升級,總能匹配到對應版本的elasticsearch,這些外掛是有官方團隊和社群成員共同開發的。官方外掛地址: https://github.com/elastic/elasticsearch/tree/master/plugins

第三外掛

    第三方外掛是有開發者或者第三方組織自主開發便於擴充套件elasticsearch功能,它們擁有自己的許可協議,在使用它們之前需要清除外掛的使用協議,不一定隨著elasticsearch版本升級, 所以使用者自行辨別外掛和es的相容性。

外掛安裝

    elasticsearch的外掛安裝方式還是很方便易用的。它包含了命令列,url,離線安裝三種方式。核心外掛隨便選擇一種方式安裝均可,第三方外掛建議使用離線安裝方式

命令列安裝

    命令列格式為:

sudo bin/elasticsearch-plugin install [plugin_name]

下面已官方提供的中文分詞器安裝(analysis-smartcn)為例:

安裝命令

$ cd /opt/environment/elasticsearch-6.4.0
$ sudo bin/elasticsearch-plugin install analysis-smartcn
$ sudo systemctl restart elasticsearch.service

第一步進入elastic目錄

第二部安裝外掛

第三部重啟es

注意: 安裝完外掛後,必須要重啟elasticsearch,才能讓新增加外掛生效。

URL安裝

    命令格式為:

sudo bin/elasticsearch-plugin install [url]

url可以是http或者 file

$ cd /opt/environment/elasticsearch-6.4.0
$ sudo bin/elasticsearch-plugin install https://artifacts.elastic.co/downloads/elasticsearch-plugins/analysis-smartcn/analysis-smartcn-6.4.0.zip
$ sudo systemctl restart elasticsearch.service

離線安裝

$ sudo wget -P /opt/packages https://artifacts.elastic.co/downloads/elasticsearch-plugins/analysis-smartcn/analysis-smartcn-6.4.0.zip
$ sudo tar -zxvf /opt/packages/analysis-smartcn-6.4.0.zip -C /opt/apps/elasticsearch-6.4.0/plugins
$ sudo systemctl restart elasticsearch.service
  1. 點選下載analysis-smartcn離線包
  2. 將離線包解壓到es外掛目錄下
  3. 重啟es。新裝外掛必須要重啟es

外掛管理命令

    檢視外掛列表

sudo {ES_HOME}/bin/elasticsearch-plugin list

    移除外掛

sudo {ES_HOME}/bin/elasticsearch-plugin remove [pluginname]

彩蛋

    本文寫完了外掛管理的範例,下一篇將記錄es中文分詞器的選型以及使用方法