即将发布的 Kibana 版本可运行 Node.js 18

作者:Thomas Watson

Kibana 构建在 Node.js 框架之上。 为了确保每个 Kibana 版本的稳定性和使用寿命,我们始终将捆绑的 Node.js 二进制文件保持为最新的最新长期支持 (LTS) 版本。

当 Node.js 版本 18 升级到 LTS 时,我们开始将 Kibana 升级到这个主要版本的工作。

挑战

我们很快发现 Node.js 18 放弃了对某些较旧的 Linux 发行版的支持,这些发行版仍然是 Kibana 支持矩阵的一部分,尤其是 Ubuntu 16、Red Hat Enterprise Linux (RHEL) 7 和 CentOS 7。

技术原因是 Node.js 18 现在是针对较新版本的 GNU C 库 (glibc) 进行编译的,特别是版本 2.28,这些旧发行版不支持该版本。

为了确保对这些 Linux 发行版的持续支持,我们需要针对旧的 2.17 版本的 glibc 构建适用于 Linux 的自定义版本的 Node.js。 不幸的是,这推迟了 Kibana 到 Node.js 18 的升级。此外,Node.js 项目宣布将提前 Node.js 16(Node.js 的 LTS 版本)的生命周期结束 (EoL) 日期。 Kibana 目前运行时间为 2023 年 9 月 11 日。EoL 日期比原定日期早 7 个月,此后它将不再收到任何错误修复或安全补丁。

解决方案

好消息是:我们已经完成了 Node.js 自定义构建的工作,即将推出的 Kibana 8.10.0 和 7.17.13 都将随 Node.js 18 一起发布。与我们之前的 Node.js 升级类似,这将是对用户以及在生产中运行和部署 Kibana 的用户完全透明。

此外,我们正在努力使 Node.js 的自定义构建可供任何项目通过 GitHub 上的 nodejs/unofficial-builds 存储库使用。 敬请关注详情。

操作系统支持

如果你与操作系统供应商签订了扩展支持合同,则这不适用于在操作系统上运行所需的非专有软件。 我们建议在以下 Linux 发行版上运行的客户计划迁移到支持 glibc v2.28+ 的较新版本、迁移到 Elastic Cloud 或使用 Docker 映像运行 Kibana

  • CentOS/RHEL 7
  • 甲骨文企业 Linux 7
  • 乌班图16.04
  • SLES12
  • Debian 8
  • Debian 9

我们建议在以下 Linux 发行版上运行的客户进行小幅升级以实现 glibc v2.28+ 支持:

  • Ubuntu 18.04 --- 升级到 Ubuntu 18.10
  • Ubuntu 20.04 --- 升级到 Ubuntu 20.04.5
  • OpenSUSE 15 --- 升级到 OpenSUSE 15.4
  • Amazon Linux 2 --- 升级到 Amazon Linux 2022

最后,请记住让你的 Elastic 集群保持最新的新版本,以确保你受益于最新的错误修复和安全更新。

本文中描述的任何特性或功能的发布和时间安排均由 Elastic 自行决定。 当前不可用的任何特性或功能可能无法按时交付或根本无法交付。

相关推荐
环能jvav大师11 分钟前
基于R语言的统计分析基础:使用dplyr包进行数据操作
大数据·开发语言·数据分析·r语言
赵啸林17 分钟前
npm发布插件超级简单版
前端·npm·node.js
不睡懒觉的橙3 小时前
【医疗大数据】医疗保健领域的大数据管理:采用挑战和影响
大数据·人工智能·信息可视化·人机交互·健康医疗
数分大拿的Statham3 小时前
PostgreSQL中的regexp_split_to_table函数详解,拆分字段为多行
大数据·数据库·postgresql·数据分析·数据清洗
码爸3 小时前
java 执行es中的sql
java·sql·elasticsearch
howard20054 小时前
大数据时代:历史、发展与未来
大数据
翔云API4 小时前
人证合一接口:智能化身份认证的最佳选择
大数据·开发语言·node.js·ocr·php
知识分享小能手5 小时前
mysql学习教程,从入门到精通,SQL 删除数据(DELETE 语句)(19)
大数据·开发语言·数据库·sql·学习·mysql·数据开发
谢尔登5 小时前
Babel
前端·react.js·node.js
lxcw5 小时前
npm ERR! code CERT_HAS_EXPIRED npm ERR! errno CERT_HAS_EXPIRED
前端·npm·node.js