首页 > 其他分享 >Elasticsearch8.14.3更换自带的openjdk版本

Elasticsearch8.14.3更换自带的openjdk版本

时间:2024-09-24 16:57:31浏览次数:12  
标签:bin JDK 22 openjdk jdk server08 版本 Elasticsearch8.14 自带


Elasticsearch8.14.3更换自带的openjdk版本_Elastic

目录

1. 背景
2. 当前版本

3. 安装指定版本

4. 配置环境变量

5. 重启

6. 验证当前版本

7. 总结

概述:为何更换 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 的最新特性。

当前版本

[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",

安装指定版本

--下载
 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环境变量

[root@test19-server08 bin]# vim /usr/share/elasticsearch/bin/elasticsearch-env
#!/bin/bash
#添加安装路径,最顶部
export ES_JAVA_HOME=/opt/jdk-22

重启elasticsearch

systemctl restart elasticsearch.service

查看当前elasticsearch的jdk版本

[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 使用率飙升导致的问题,从而提升整体用户体验和服务质量。务必注意兼容性、进行全面测试,并逐步实施变更,以确保平稳过渡并达到预期效果。


标签:bin,JDK,22,openjdk,jdk,server08,版本,Elasticsearch8.14,自带
From: https://blog.51cto.com/u_12678428/12100893

相关文章

  • 【Python高级编程案例】-第1课时-Python 自带邮件模块自动发送邮件
    importrandomimportstringfromsmtplibimportSMTP_SSLfromemail.mime.textimportMIMETextfromemail.headerimportHeader#发送邮件,参数为收件邮箱地址和验证码defsend_email(receiver,code):sender="测试<[email protected]>"#邮箱账号,签名#......
  • 再见了 Elasticsearch!新开源自带UI,更简单更兼容,这款工具牛逼了!(带私活源码)
     今天给大家分享的是一款基于全文搜索的搜索引擎---ZincSearch!对于 Elasticsearch 用过的人都很熟悉了,主要做文本搜索,而且响应速度在毫秒级,应用场景非常广泛。比如:全文搜索、日志分析、运维监控、安全分析和电商搜索等等。既然Elasticsearch这么好用,那为什么会出现Zinc......
  • 1.JDK自带的线程池有哪些?2.线程池中核心线程数与最大线程数与缓冲任务队列的关系?3.为
    1.JDK自带的线程池有哪些?2.线程池中核心线程数与最大线程数与缓冲任务队列的关系?在Java中的线程池(如ThreadPoolExecutor)中,核心线程数(corePoolSize)、最大线程数(maximumPoolSize)以及缓冲队列(workQueue)之间存在着密切的关系,它们共同决定了线程池如何管理和调度任务。以下是......
  • vim8 自带插件管理系统
    vim8自带插件管理系统,使用了指定目录的方式来安装插件。在linux下的目录为:~/.vim/pack/自定义目录名/{start,opt}举例说明,比如我安装一个python代码格式化的插件,地址是:https://github.com/Vimjas/vim-python-pep8-indent转到.vim目录后,首先创建pack目录:mkdirpack转......
  • UniGUI的布局(结合官方自带DEMO)要点记录
    UniGUI的页面布局还是比较方便的,基本什么的排版都能搞好。但UniGUI的资料实在是太少,只能看到一些零星的资料,结合UniGUI官方自带的DEMO,本人将布局有关要点整理了一下,方便查阅,也供各位爱好者参考,不对之处,敬请指正。一、布局方式传统Delphi程序的布局方法通过将属性Align添加到......
  • Linux安装openjdk8
    Linux安装openjdk8一、压缩包安装注:适用于大多数Linux系统,如Fedora为首的红帽系RedHat、CentOS;Debian系Ubuntu等;同样适用于国产信创AlibabaCloudLinux、龙蜥;华为欧拉、openEuler1、oracle官网下载https://www.oracle.com/java/technologies/downloads/archive/注:可以用下......
  • gprof:Linux 自带性能分析工具(含中文翻译)
    gprof的使用gprof已经安装在NOILinux2.0中,是Linux中一个使用的程序性能分析工具。欲将对程序main.cpp进行性能分析,需要在编译选项中加入-pg:g++main.cpp-omain-pg然后正常运行程序:./main此时会生成一个gmon.out文件,存储了性能分析信息,需要使用gprof进行......
  • AI绘画: ComfyUI重磅更新!操作界面详解!取消悬浮面板,自带工装包作流管理功能!(附整合包)
    前言大家好,我是月月在7月初的一次更新中,ComfyUI官方推出了Beta版UI,取消了原本的悬浮面板,还新增了工作流管理功能,整体使用体验比之前好了很多。今天就为大家详细介绍一些新版UI的特点和用法。一、启用方式如果想启用最新的UI界面,需要将ComfyUI更新到最新版本......
  • linux自带的crontab调度配置说明
    linux自带的crontab调度配置说明一.crontab命令概念:crontab命令用于设置周期性被执行的命令二.crontab帮助:crontab--helpUsage:crontab[options]filecrontab[options]crontab-n[hostname]Options:-u<user>defineuser-eedituser's......
  • 腾讯云服务器上线一个springboot+vue项目最全教程 非Docker 自带上传到gitee中的项目
    前言博主看网络上的各种介绍项目上线的视频/文章,要么不是真实项目上线,要么没有良好的引导,要么不全。因此就写了此博客。此博客应该是最全的了,全面地以一个项目来介绍如何上线。即使你是小白看完博客也能让你成为糕手糕手糕糕手......