首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Elasticsearch8.14.3更换自带的openjdk版本

Elasticsearch8.14.3更换自带的openjdk版本

作者头像
DBA实战
修改于 2024-09-26 10:52:45
修改于 2024-09-26 10:52:45
45100
代码可运行
举报
文章被收录于专栏:DBA实战DBA实战
运行总次数:0
代码可运行

概述:为何更换 Elasticsearch 集群中的 JDK 版本

背景

在部署的 Elasticsearch 集群中,我们遇到了频繁的 CPU 使用率飙升问题,导致某些节点宕机。这种情况不仅影响了集群的稳定性和可靠性,还增加了维护成本和潜在的数据丢失风险。为了改善这种情况,我们决定更换 Elasticsearch 集群所使用的 JDK 版本,以优化性能并减少资源消耗。

为何更换 JDK 版本
  1. 性能优化:不同的 JDK 版本可能包含性能改进和优化,尤其是对于高负载场景。升级到最新版本的 JDK 可以利用最新的性能增强特性,从而提高 Elasticsearch 的响应速度和处理能力。
  2. 资源管理:CPU 使用率飙升通常是由于内存管理和垃圾回收(GC)机制的问题。新版本的 JDK 可能引入了更高效的内存管理和 GC 策略,有助于降低 CPU 负载并提高系统稳定性。
  3. Bug 修复:旧版本的 JDK 可能存在已知的 Bug 和安全问题,这些问题可能导致性能下降或不稳定行为。通过升级到新版本,我们可以规避这些问题,提高系统的可靠性和安全性。
  4. 兼容性:随着 Elasticsearch 的持续更新,新的版本可能更紧密地集成和优化了对特定 JDK 版本的支持。确保使用推荐的 JDK 版本可以帮助避免兼容性问题,并充分利用 Elasticsearch 的最新特性。

当前版本

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@test19-server08 elasticsearch]# /usr/share/elasticsearch/jdk/bin/java -version
openjdk version "22.0.1" 2024-04-16
OpenJDK Runtime Environment (build 22.0.1+8-16)
OpenJDK 64-Bit Server VM (build 22.0.1+8-16, mixed mode, sharing)
[root@test19-server08 bin]# curl -X GET "localhost:9200/_nodes?filter_path=**.jvm*&pretty"
{
  "nodes" : {
    "r6zSsQGNRXiGwRljYhUKWw" : {
      "jvm" : {
        "pid" : 809507,
        "version" : "22.0.1",
        "vm_name" : "OpenJDK 64-Bit Server VM",
        "vm_version" : "22.0.1+8-16",

安装指定版本

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
--下载
 wget https://download.java.net/java/GA/jdk22/830ec9fcccef480bb3e73fb7ecafe059/36/GPL/openjdk-22_linux-x64_bin.tar.gz
 [root@test19-server08 jdk-22]# cd /opt
 [root@test19-server08 jdk-22]# tar xvf openjdk-22_linux-x64_bin.tar.gz 
 [root@test19-server08 jdk-22]# cd /opt/jdk-22/bin/
[root@test19-server08 bin]# ls
jar        java   javadoc  jcmd      jdb        jdeps  jhsdb   jinfo  jmap  jpackage  jrunscript  jstack  jstatd      keytool      serialver
jarsigner  javac  javap    jconsole  jdeprscan  jfr    jimage  jlink  jmod  jps       jshell      jstat   jwebserver  rmiregistry

--验证版本
openjdk version "22" 2024-03-19
OpenJDK Runtime Environment (build 22+36-2370)
OpenJDK 64-Bit Server VM (build 22+36-2370, mixed mode, sharing)
[root@test19-server08 bin]# pwd
/opt/jdk-22/bin

配置jdk环境变量

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@test19-server08 bin]# vim /usr/share/elasticsearch/bin/elasticsearch-env
#!/bin/bash
#添加安装路径,最顶部
export ES_JAVA_HOME=/opt/jdk-22

重启elasticsearch

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
systemctl restart elasticsearch.service

查看当前elasticsearch的jdk版本

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@test19-server08 bin]# curl -X GET "localhost:9200/_nodes?filter_path=**.jvm*&pretty"
{
  "nodes" : {
    "r6zSsQGNRXiGwRljYhUKWw" : {
      "jvm" : {
        "pid" : 810638,
        "version" : "22",
        "vm_name" : "OpenJDK 64-Bit Server VM",
        "vm_version" : "22+36-2370",

总结

更换 Elasticsearch 集群中的 JDK 版本是一项旨在提高系统性能、稳定性和可靠性的举措。通过合理选择合适的 JDK 版本,并采取适当的预防措施,可以有效地解决 CPU 使用率飙升导致的问题,从而提升整体用户体验和服务质量。务必注意兼容性、进行全面测试,并逐步实施变更,以确保平稳过渡并达到预期效果。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-09-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DBA实战 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
ElasticSearch 7集群部署
因为是测试环境,没有部署内网DNS,所以就直接走hosts文件解析了(一样所有节点服务器都执行)。
行 者
2020/04/17
4.9K0
Elasticsearch压测工具Esrally部署指南
本文描述问题及解决方法同样适用于 腾讯云 Elasticsearch Service(ES)。
岳涛
2021/10/21
3.3K0
Elasticsearch压测工具Esrally部署指南
基于docker 搭建Elasticsearch6.2.4(centos)
ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
py3study
2020/01/20
6030
Elasticsearch集群监控指标
“本片主要通过两个API讲解Elasticsearch集群监控的指标说明”
create17
2019/01/20
1.9K0
Elasticsearch集群监控指标
【BIGDATA】在Centos上部署ElasticSearch 7.3.2及kibana
首先,下载ElasticSearch和kibana安装包,版本自选,官方下载页 https://www.elastic.co/cn/downloads/
一枚hammer
2021/01/28
5640
ES集群7.3.2版本在线扩容Data节点
接到生产业务需求,需要在线扩容ES集群且不能影响数据安全性,经过对Elasticsearch角色的分析,发现直接扩容Data节点最简单而且能满足需求。 备注:原来ES集群3节点dim角色默认都开启了。
三杯水Plus
2020/06/07
1.7K0
ES04# Elasticsearch集群健康与指标梳理
对于Elasticsearch运维管理员来讲集群平稳运行非常重要,Elasticsearch提供了health命令和stats统计指标来说明集群是否正常。这两个命令返回大量的指标信息,本文就一探究竟拨开主要指标的含义,文章主要内容有:
瓜农老梁
2022/04/28
9290
【ES三周年】Linux安装ElasticSearch
Linux安装ElasticSearch 0. 写在前面 1. 环境准备 2. ES安装 2.1ES解压 2.2 新增普通用户 2.3 给新创建的普通用户授权 2.4 给新创建的普通用户设置sudo权限 2.5 前置准备 3. Kibana安装 3.1 上传并解压tar文件 4. ik分词器的安装 4.1 为什么要安装其他分词器 4.2下载地址 0. 写在前面 Linux版本:CentOS7.5 ES版本:ElasticSearch-7.8.0 1. 环境准备 运行ElasticSearch,需要安装并配置
WHYBIGDATA
2023/02/14
1.9K0
【ES三周年】Linux安装ElasticSearch
elasticsearch集群
安装elasticsearch集群 hostnameipportes-1128.0.0.1019200es-2128.0.0.1029200 安装jdk [root@es1 ~]# java -version java version "1.8.0151" Java(TM) SE Runtime Environment (build 1.8.0151-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode) 安装es软件 见上
零月
2018/04/25
6570
EFK(Elasticsearch+Filebeat+Kibana)日志收集系统
Elasticsearch 是一个实时的、分布式的可扩展的搜索引擎,允许进行全文、结构化搜索,它通常用于索引和搜索大量日志数据,也可用于搜索许多不同类型的文档。
Java架构师必看
2021/06/10
20.4K2
EFK(Elasticsearch+Filebeat+Kibana)日志收集系统
在CentOS 7安装ElasticSearch 7.x
本教程讨论如何在 CentOS 7 上安装ElasticSearch 7.x。Elasticsearch 是一个开源的搜索和分析引擎,允许您实时存储、搜索和分析大量数据。ElasticSearch 为依赖密集型搜索操作(如电子商务平台和大数据应用程序)的数百万应用程序提供支持。
皇上得了花柳病
2020/05/08
5.5K5
ElasticSearch安装与启动
检查JDK版本之后,我们可以下载并运行Elasticsearch。 二进制文件可以从 www.elastic.co/downloads 获取,过去版本也可以从中获取。 对于每个版本,您可以选择zip或tar存档,或DEB或RPM软件包。 为了简单起见,我们使用tar文件。
smartsi
2019/08/07
1.1K0
Elastic Stack之 Elasticsearch 6.7.1版本单机版安装、集群版安装
1、截至目前Elasticsearch 版本已经更新到了7.10.1版本了,这里先使用Elasticsearch 6.7.1版本,给一个下载地址,如下所示:
别先生
2021/01/13
1.4K0
Elasticsearch压测工具esrally部署之踩坑实录(上)
本文描述问题及解决方法同样适用于 腾讯云 Elasticsearch Service(ES)。
岳涛
2021/10/20
4.8K1
Elasticsearch压测工具esrally部署之踩坑实录(上)
搭建Elasticsearch集群
凡事都要讲究个为什么。在搭建集群之前,我们首先先问一句,为什么我们需要搭建集群?它有什么优势呢?
黑洞代码
2021/03/22
4490
ElasticSearch 6.x 学习笔记:1.下载安装与配置
该文章介绍了如何在Elasticsearch集群上使用Kibana进行可视化搜索,包括安装Elasticsearch和Kibana,配置Elasticsearch和Kibana以在浏览器中访问,以及使用Kibana的UI界面进行搜索。同时,该文章还介绍了如何将Elasticsearch集群与Kibana部署在Docker容器中,以及使用Elasticsearch和Kibana进行多租户搜索。
程裕强
2018/01/02
3.9K0
ElasticSearch 6.x 学习笔记:1.下载安装与配置
Elasticsearch PHP MYSQL的同步使用
Elasticsearch是一个分布式,RESTful模式的高速搜索引擎,它使用标准的RESTful APIs和JSON,同时提供支持如java,python,php等的多种语言。下文将Elasticsearch简称ES。
双面人
2019/04/10
3.6K0
Elasticsearch PHP MYSQL的同步使用
Elasticsearch 5.x +Kibana 5.x 安装与配置
因为版本的问题,最新的版本安全级别提高了,不允许采用root帐号启动,所以我们要添加一个用户。
程裕强
2022/05/06
1.1K0
Install Elasticsearch
我本地的是 openjdk version “1.8.0_151” ,这个是 OpenJDK,并非 Oracle 版的,不过也没啥大问题,比推荐的 1.8.0_131 还新
franket
2021/08/11
3500
Elasticsearch 源码学习(1)源码编译调试
首先 fork 一份 [Elasticsearch 项目] (https://github.com/elastic/elasticsearch) 的代码到自己的 github 仓库,这样看代码的时候写注释可以提交到自己的仓库。
Se7en258
2021/10/09
1.3K0
Elasticsearch 源码学习(1)源码编译调试
相关推荐
ElasticSearch 7集群部署
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档