Elasticsearch(ES)在启动时会执行一系列检查,以确保它运行在稳定和兼容的环境中

Elasticsearch(ES)在启动时会执行一系列检查,以确保它运行在稳定和兼容的环境中。其中一项检查就是针对OpenJDK的早期访问(Early Access)版本。OpenJDK的Early Access版本是为即将发布的版本提供的预览版,它们可能包含新的功能和改进,但这些版本并不适用于生产环境。

Elasticsearch进行Early Access检查的目的是确保它不会在这些预览版上启动,以避免生产环境中可能出现的不稳定性或数据丢失的风险。如果Elasticsearch检测到它正在尝试在Early Access版本的JVM上运行,它将不允许启动,并给出相应的错误信息。

根据讨论,如果用户希望在Elasticsearch上使用OpenJDK Early Access版本,他们可以采取以下措施:

  1. 创建一个自定义构建,该构建已禁用或删除了此检查。但这不是一个简单的任务,可能需要一些技术工作。

  2. 向Elasticsearch的GitHub存储库提交问题,并开始讨论是否允许使用OpenJDK EA版本。

  3. 如果Elasticsearch配置为不绑定到外部接口,并且运行的是单节点集群,那么启动时将跳过引导检查。这可以通过设置`network.host: 127.0.0.1`和`discovery.type: single-node`在`elasticsearch.yml`配置文件中实现。

然而,Alexander Reelsen(Elasticsearch的一名维护者)指出,这个引导检查是有意添加的,因此不太可能被移除。他建议,如果用户确实需要在生产环境中运行Early Access版本,应该提出充分的理由,并在GitHub上发起讨论。

Elasticsearch官方文档也提到了这一点,强调为了通过Early Access检查,必须在JVM的稳定版本上启动Elasticsearch。

总的来说,Elasticsearch的Early Access检查是一项预防措施,旨在保护用户避免在生产环境中使用可能不稳定的JVM版本。如果用户需要测试新功能,建议在开发或测试环境中使用Early Access版本,并在生产环境中使用稳定的JVM版本。

相关推荐
大大大大晴天11 小时前
Hudi技术内幕:Key Generation原理与实践
大数据
Elasticsearch14 小时前
3个信号、2个环境变量、0个采集器:使用 Python 和 Elastic 的托管 OTLP 端点实现 OpenTelemetry
elasticsearch
Elasticsearch3 天前
如何通过 Claude Code 来写入 CSV 数据到 Elasticsearch
elasticsearch
得物技术4 天前
从埋点需求到规则资产:Hermes Agent 重构得物数仓工作流
大数据·llm·ai编程
久美子4 天前
AI驱动数仓建设的Harness工程实践——本体建模、知识分层与上下文工程
大数据
大树884 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
大志哥1234 天前
ES和Logstash日志链路系统上线后遭遇切片爆炸(解决)
大数据·elasticsearch
果丁智能5 天前
物联网智能锁赋能集中式住宿:身份核验与远程权限管控的全链路技术实践
大数据·人工智能·物联网·智能家居
ApacheSeaTunnel5 天前
实战演示 | 基于 Apache SeaTunnel 与 Apache DolphinScheduler 实现 MySQL 到 Doris 离线定时增量同步
大数据·mysql·开源·doris·数据集成·seatunnel·数据同步
weixin_397574095 天前
PDF复杂表格的1:1还原引擎:跨页表格自动拼接技术实战
大数据·人工智能·pdf