Elasticsearch X-Pack许可证过期解决办法

在使用elasticsearch-sql-cli的时候,用SQL查询ES数据时,抛出Bad request [current license is non-compliant for [sql]]

或者在使用JDBC连接elasticsearch时,抛出ElasticsearchSecurityException: current license is non-compliant for [security] 异常;

这个是由于X-Pack的许可证过期了。

这时候我们需要通过注册账号获得一个免费的许可证证书。

证书分为付费版和免费版,免费版会对节点数量有限制,但是一般的工作环境足够使用,因此我们采用BASIC授权文件。
1.注册elasticsearch账号,注册地址 https://register.elastic.co/

 

根据你填写的邮箱,会收到一封邮件,如下图


用命令切换到下载好的license.json文件目录下;

把许可证下载好上传到ES服务器,根据手册执行安装命令:curl -XPUT -u elastic "http://_xpack/license" -H “Content-Type: application/json” -d @ license.json

elastic是X-Pack内置的超级用户。默认密码是changeme。如果您还没有,请更改默认密码。具有群集管理员权限的任何用户都可以安装许可证
<host>是Elasticsearch节点的主机名(localhost如果在本地执行)
<port>是http端口(默认为9200)
license.json 是许可证JSON文件名称

 

执行后如果有上图类似的报错的话,看报错提示,需要http://_xpack/license改成http://_xpack/license/start_basic

再次执行后,还报错的话,如下图

报错提示,需要将PUT请求改成POST请求,再次修改后就能成功了

最后需要重启elasticsearch就可以了。

启动elasticsearch的bin目录下的elasticsearch-sql-cli

输入SQL语句:

使用sense查询:

成功返回查询结果。

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值