当前位置: 首页 > article >正文

005 ElasticSearch 许可证过期问题

ElasticSearch 许可证过期问题

项目启动报错

org.elasticsearch.client.ResponseException: method [GET], host [http://127.0.0.1:9200], URI [/_cluster/health/], status line [HTTP/1.1 403 Forbidden]
{"error":{"root_cause":[{"type":"security_exception","reason":"current license is non-compliant for [security]","license.expired.feature":"security"}],"type":"security_exception","reason":"current license is non-compliant for [security]","license.expired.feature":"security"},"status":403}

原因是es许可证过期了,过期会导致X-pack等认证功能不可用,需要重新申请或更新

1.查看当前许可证信息

curl -X GET "http://localhost:9200/_license" -u elastic:your_password  #替换为自己密码
{"license" : {"status" : "expired","uid" : "81fdd2e4-bddb-41bc-849d-e8838c122ef0","type" : "trial","issue_date" : "2025-03-19T09:09:58.157Z","issue_date_in_millis" : 1742375398157,"expiry_date" : "2025-04-18T09:09:58.157Z","expiry_date_in_millis" : 1744967398157,"max_nodes" : 1000,"issued_to" : "elasticsearch","issuer" : "elasticsearch","start_date_in_millis" : -1}
}

trial表示试用版许可证,通常有一个月有效期

如果启用了安全功能(如用户认证,Kibana 的 Monitoring 功能等),许可证过期将导致以下问题:

  • 安全功能受限:无法使用安全功能(如用户认证,IP 过滤、审计等)。
  • 监控功能受限:无法访问集群健康状态、索引统计等信息。
  • 插件功能受限:如 Watcher、Graph、ML 等插件将被禁用。

2.解决办法

1.✅ 使用 curl 命令更新许可证

需要先去es官网申请许可证并下载

curl -XPUT -u elastic -H "Content-Type: application/json" -d @license.json -v "http://localhost:9200/_xpack/license?acknowledge=true"
  • elastic 是默认的超级用户,your_password 是该用户的密码。
  • license.json为自己上传的许可证
  • @license.json 表示从文件中读取许可证内容。
  • ?acknowledge=true 是关键参数,表示您已阅读并接受新许可证的条款
2.✅ 使用 curl 命令切换到基本许可证

如果您不打算继续使用高级功能,可以切换到基本许可证(Basic License),以恢复部分功能:

curl -u elastic -XPOST "http://localhost:9200/_xpack/license/start_basic?acknowledge=true"
  • 该命令将禁用所有高级功能,但允许基本的数据读写操作。
  • 基本许可证(Basic License) 是 Elasticsearch 的最低版本许可证,它允许用户在不使用付费 X-Pack 插件的情况下,启用基本的安全功能。
  • 通过基本许可证,用户可以配置 基本身份验证(Basic Authentication) ,即通过 HTTP Basic 认证方式,使用用户名和密码访问 Elasticsearch 集群
  • 以上方式只是 暂时 解决问题,到一定时间以后,依然会出现 证书过期 的错误,到时候依然需要再次执行以上命令来保证 es 正常运行

查看许可证状态

{"license" : {"status" : "active","uid" : "c5ef7eaf-d63b-44f0-9b63-11ae2ebfe796","type" : "basic","issue_date" : "2025-05-29T02:40:50.106Z","issue_date_in_millis" : 1748486450106,"max_nodes" : 1000,"issued_to" : "elasticsearch","issuer" : "elasticsearch","start_date_in_millis" : -1}
}
3.通过 Kibana UI 更新许可证

需保证kibana可用,通常过期后kibana也不可用

  1. 登录 Kibana。
  2. 点击左侧菜单中的 Stack Management(管理)。
  3. 导航到 License Management(许可证管理)。
  4. 上传新的许可证文件或选择 Start basic license(启动基本许可证)。
http://www.lryc.cn/news/2396078.html

相关文章:

  • Spring AI 系列之使用 Spring AI 开发模型上下文协议(MCP)
  • [Python] Python运维:系统性能信息模块psutil和系统批量运维管理器paramiko
  • Linux 简单模拟实现C语言文件流
  • ArcPy错误处理与调试技巧(3)
  • 小程序使用npm包的方法
  • Asp.Net Core SignalR的协议协商问题
  • Rust 学习笔记:发布一个 crate 到 crates.io
  • 剪枝中的 `break` 与 `return` 区别详解
  • Spring Boot 4.0实战:构建高并发电商系统
  • Vert.x学习笔记-EventLoop与Context的关系
  • 2025030给荣品PRO-RK3566开发板单独升级Android13的boot.img
  • 由enctype-引出post与get的关系,最后深究至请求/响应报文
  • 排序算法衍生问题
  • Mac电脑上本地安装 redis并配置开启自启完整流程
  • STP(生成树协议)原理与配置
  • 搭建基于VsCode的ESP32的开发环境教程
  • 【MFC】初识MFC
  • C++.二分法教程
  • 如何通过数据分析优化项目决策
  • 2024年数维杯国际大学生数学建模挑战赛B题空间变量协同估计方法研究解题全过程论文及程序
  • leetcode hot100刷题日记——34.将有序数组转换为二叉搜索树
  • thinkphp 5.1 部分知识记录<一>
  • RAG:面向知识密集型自然语言处理任务的检索增强生成
  • MVVM、MVC的区别、什么是MVVM
  • 网页自动化部署(webhook方法)
  • 线性代数入门:轻松理解二阶与三阶行列式的定义与理解
  • AU6825集成音频DSP的2x32W数字型ClaSSD音频功率放大器(替代TAS5825)
  • 华为云Flexus+DeepSeek征文|DeepSeek-V3/R1商用服务体验全流程
  • Go语言的原子操作
  • Visual Studio 2022 插件推荐