ElastciSearch 与SQL整合(SQL插件)

1. 低版本ES,安装SQL支持

  ES在6.5以及以上的版本才可以使用SQL,所以之前演示的ES版本时6.2,不支持,这里我们换成6.5以上的版本。
官方文档地址: https://www.elastic.co/guide/en/elasticsearch/reference/6.5/index.html
  当然如果这样的话小编这篇文章的意义在哪?这里我们介绍如何让ES6.5以下的版本可以使用类似于SQL查询的语句,去查询索引库。
  这里我们需要下载插件:https://github.com/NLPchina/elasticsearch-sql/tree/elastic6.2.0
  然后将下载的zip包上传集群中,然后执行:

[elk@zzy bin]$ ./elasticsearch-plugin install https://github.com/NLPchina/elasticsearch-sql/releases/download/5.6.2.0/elasticsearch-sql-5.6.2.0.zip

执行以上命令会报出:
ElastciSearch 与SQL整合(SQL插件)
所以我们只能苦逼的手动编译:
所以这里只能手动下载源码进行,本地编译,下载地址:https://github.com/NLPchina/elasticsearch-sql/archive/elastic6.2.0.zip
ES-SQL插件编译:
① 下载解压
ElastciSearch 与SQL整合(SQL插件)
② 查看BUILDING.md,进行本地编译
ElastciSearch 与SQL整合(SQL插件)
执行:

mvn clean package assembly:single -DskipTests

ElastciSearch 与SQL整合(SQL插件)
编译成功之后:
ElastciSearch 与SQL整合(SQL插件)
在target目录中有一个zip包:
ElastciSearch 与SQL整合(SQL插件)
修改名称之后,上传到集群。

安装sql插件
#查看此命令如何使用
[elk@zzy ~]$/applications/elasticsearch-6.2.0/bin/elasticsearch-plugin –help
#本地安装插件
[elk@zzy ~]$ /applications/elasticsearch-6.2.0/bin/elasticsearch-plugin install file:./elasticsearch-sql-6.2.0.0.zip
注意:其中file是一个本地目录。
此时同样也为报错:
ElastciSearch 与SQL整合(SQL插件)
所以只能将这个zip插件包解压,放入ES_HOME/plugins

[elk@zzy ~]$ unzip elasticsearch-sql-6.2.0.0.zip
[elk@zzy ~]$ mv elasticsearch-sql-6.2.0.0/ /applications/elasticsearch-6.2.0/plugins/

最后,重启ES!
此时同样会报错:
ElastciSearch 与SQL整合(SQL插件)
这是因为因为版本的问题,es无法识别插件配置文件中的jvm和site两个参数,只需要将对应插件中的参数删除即可。
ElastciSearch 与SQL整合(SQL插件)
然后在启动ES:
ElastciSearch 与SQL整合(SQL插件)
可以看点ES已经加载相应的SQL插件!
测试:
在浏览器中执行:
http://nodeIP:9200/_sql?sql=select from indexName limit 10
例如小编这里是:
http://192.168.130.131:9200/_sql?sql=select
from library limit 10 &pretty

ElastciSearch 与SQL整合(SQL插件)
这里SQL插件就安装成功!!!

2. 低版本ES,安装Web界面查询安装

① 下载相应插件
https://github.com/NLPchina/elasticsearch-sql/releases/download/5.4.1.0/es-sql-site-standalone.zip
上传至集群,解压:unzip es- sql-site-standalone.zip
ElastciSearch 与SQL整合(SQL插件)
然后执行:

cd site-server
npm install express --save
node node-server.js

相应问题解决
 没有nmp命令:

[elk@zzy site-server]$ sudo yum -y install gcc make gcc-c++ openssl-devel wget
[elk@zzy site-server]$ sudo wget http://nodejs.org/dist/v0.10.26/node-v0.10.26.tar.gz
[elk@zzy site-server]$ sudo tar zxvf http://nodejs.org/dist/v0.10.26/node-v0.10.26.tar.gz
[elk@zzy ~]$ cd node-v0.10.26/  
[elk@zzy ~]$ make && make install  #编译
[root@zzy node-v0.10.26]# npm -v  #查看是否安装成功

最后访问节点的192.168.130.131:8080端口:
ElastciSearch 与SQL整合(SQL插件)
到此安装成功!!!

猜你喜欢

转载自blog.51cto.com/14048416/2411792
今日推荐