博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Elasticsearch 2.2.0 插件篇:安装
阅读量:5971 次
发布时间:2019-06-19

本文共 2556 字,大约阅读时间需要 8 分钟。

hot3.png

    Elasticsearch通过插件来增强其个性化功能需求。他们可以添加自定义映射类型,自定义分析器,本地脚本,自定义发现等等。在Elasticsearch中,有三种类型的插件:

java插件:这些插件只包含jar文件,并且必须安装在集群中的每个节点上。安装后,每个节点必须重新启动后才生效。

站点插件:这些插件包含了静态的Web内容,如JavaScript,HTML和CSS文件,点插件只需要在一个节点上安装,并且不需要重新启动就可以使用。站点插件通过url进行访问,例如:http://localhost:9200/_plugin/[plugin name]。

混合插件:混合插件是即包含jar文件又站点插件。

插件管理

    插件是通过脚本来进行管理的,可以安装插件,查询插件和删除插件。正常情况下插件位于$ES_HOME/bin下,通过rpm等安装的位置可能会不同。可以通命令获取插件帮助:在目录下执行,plugin -h

plugin -hNAME    plugin - Manages pluginsSYNOPSIS    plugin DESCRIPTION    Manage pluginsCOMMANDS    install    Install a plugin    remove     Remove a plugin    list       List installed pluginsNOTES    [*] For usage help on specific commands please type "plugin  -h"

注意:linux需要用管理员来运行,比如sudo plugin -h

插件安装:

    每种插件都会有插件安装文档,但大多数情况下,插件安装有以下几种方式:

核心插件:

sudo bin/plugin install [plugin_name]

例如安装Lucenea icu插件。sudo bin/plugin install analysis-icu,这样就会按照合适的版本到Elasticsearch中。

非核心插件:非核心插件可以是官方提供的,也可以是社区提供的,可以从官方,Maven或者GitHub中下载安装。

sudo bin/plugin install [org]/[user|component]/[version]

例如,安装github上的插件,plugin install lmenezes/elasticsearch-kopf

插件会尝试先到官方去下载,如果没有找到会到maven.com中去下载,如果在没有找到回到github中去下载。脚本还是非常智能的。

当我们从直接maven中央库中安装时可以直接使用下面的方式,最后的版本号是必须要写的。

plugin install org.elasticsearch.plugin/mapper-attachments/3.0.0 

从自定义网址或者本地安装:plugin install [url] ,例如,在本地文件系统中安装一个插件,可以运行:plugin install file:///path/to/plugin.zip。

    插件脚本会拒绝从一个不受信任的证书的https网站安装。使用HTTPS证书自签名,需要添加的CA证书到本地信任库,可以通过java脚本添加:plugin -Djavax.net.ssl.trustStore=/path/to/trustStore.jks install https://...

查询插件:plugin list

删除插件:plugin remove [pluginname],jar插件删除后要重启。

Silent/Verbose参数:

当使用--verbose参数输出更多的调试信息, 当使用--silent参数时可以关闭所有输出。该脚本可以返回下面的代码:

0:一切都好

64:未知命令或不正确的选项参数

74:输入输出错误

70:任何其他错误

自定义配置目录:如果elasticsearch.yml配置文件在一个自定义的位置,在使用插件脚本时需要指定配置文件的路径,例如:plugin -Des.path.conf=/path/to/custom/config/dir install <plugin name>,您可以设置conf_dir环境变量来指定自定义配置文件的路径。

超时设置:可以指定超时时间,例如等待30秒,plugin install mobz/elasticsearch-head --timeout 30s。当设置为0时一直等待。

代理设置:可以通过代理安装插件,Java的设置是proxyHost和proxyPort。例如:在Unix中

plugin install mobz/elasticsearch-head -DproxyHost=host_name -DproxyPort=port_number

在Windows中,需要添加参数到java_opts环境变量,例如:

set JAVA_OPTS="-DproxyHost=host_name -DproxyPort=port_number"

plugin install mobz/elasticsearch-head

自定义插件目录:插件目录可以在配置文件中elasticsearch.yml进行修改,参数:path.plugins: /path/to/custom/plugins/dir。

强制插件:可以在配置文件中elasticsearch.yml中添加plugin.mandatory来设置必须要安装的插件,例如:plugin.mandatory: mapper-attachments,lang-python。注意:出于安全的原因,如果缺少一个强制插件,该节点将不会启动成功。

    赛克蓝德(secisland)后续会逐步对Elasticsearch的最新版本的各项功能进行分析,近请期待。也欢迎加入secisland公众号进行关注

转载于:https://my.oschina.net/secisland/blog/631732

你可能感兴趣的文章
mysql多实例实例化数据库
查看>>
javascript 操作DOM元素样式
查看>>
HBase 笔记3
查看>>
【Linux】Linux 在线安装yum
查看>>
Atom 编辑器系列视频课程
查看>>
[原][osgearth]osgearthviewer读取earth文件,代码解析(earth文件读取的一帧)
查看>>
使用dotenv管理环境变量
查看>>
Vuex学习
查看>>
bootstrap - navbar
查看>>
FastDFS存储服务器部署
查看>>
Android — 创建和修改 Fragment 的方法及相关注意事项
查看>>
swift基础之_swift调用OC/OC调用swift
查看>>
Devexpress 15.1.8 Breaking Changes
查看>>
ElasticSearch Client详解
查看>>
mybatis update返回值的意义
查看>>
expdp 详解及实例
查看>>
通过IP判断登录地址
查看>>
深入浅出JavaScript (五) 详解Document.write()方法
查看>>
Beta冲刺——day6
查看>>
在一个程序中调用另一个程序并且传输数据到选择屏幕执行这个程序
查看>>