Elasticsearch许可证过期导致ES用不了的问题

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

事发原因

在那天下午,我写搭建ELK笔记系列博客-Kibana篇的中途,想进入kibana页面进行一些操作,进入发现ES集群和索引状态相关的收集、监控、查看的功能都将被禁用,只能进行数据的读写操作可以正常工作。然后我就查看了ES的日志,发现ES全部抛:ElasticsearchSecurityException: current license is non-compliant for [security] 异常
在这里插入图片描述
仔细查看日志,我们发现日志已经把错误告诉你了
在这里插入图片描述
这一段详细说了:经营许可证过期,集群健康状态、集群统计信息和索引统计信息。许可证到期时将阻止操作。所有数据操作(读和写)继续工作。看到这里,应该就明白了,是许可证过期导致的问题。

解决办法

通过ES的官网中X-Pack的文档的说明,初次安装X-Pack会提供三十天的试用期,想继续使用,您可以购买订阅以继续使用X-Pack组件的全部功能
在这里插入图片描述
我们可以通过注册账号获得一个免费的许可证证书。证书分为付费版和免费版,免费版会对节点数量有限制,但是一般的工作环境足够使用,因此我们采用BASIC授权文件。
1.注册elasticsearch账号,注册地址 https://register.elastic.co/
在这里插入图片描述
根据你填写的邮箱,会收到一封邮件,如下图
在这里插入图片描述
把许可证下载好上传到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文件名称

例如我的安装命令:curl -XPUT -u elastic ‘http://172.17.32.8:9200/_xpack/license?acknowledge=true’ -H “Content-Type: application/json” -d @guhui-gu-08913f85-bb8b-4d4d-88dd-b34ecaa94c7a-v5.json

官方文档中有一段这样的话:
在这里插入图片描述意思是:如果您要安装的许可证不支持以前许可证中提供的所有功能,则会在响应中通知您。要完成许可证安装,必须重新提交许可证更新请求并将acknowledge参数设置为true以指示您了解更改。
就是你执行许可证安装命令的时候,如果出现下图响应信息
在这里插入图片描述
在这里插入图片描述
出现这种情况,代表许可证安装失败,按照那一段话的提示,在安装命令中加入acknowledge=true参数,我的安装命令中就有此参数,安装手册中的安装命令是没有加入此参数的。
许可证安装好之后,看看许可证信息更新好了没有,输入查看许可证命令:
curl -XGET -u 用户名:密码 ‘http:///_license’
例如:curl -XGET -u elastic:changeme ‘http://1.1.1.1:9200/_license
在这里插入图片描述
查出来的信息表示,该许可证有效期为一年。一年之后到期可以更新一份新的许可证。不需要重启ES服务,服务会自动更新为正常状态,可用正常使用


丶clearwater

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值