elasticsearch-7.3.1安装注意事项

elasticsearch-7.3.1安装注意事项

  • 一、背景
  • 二、步骤
    • 1、查看原ES版本
    • 2、新环境服务器
      • 2.1、是否有elasticsearch
      • 2.2、安装elasticsearch
      • 2.3、配置参数
      • 2.4、启动elasticsearch
      • 2.5、设置密码
  • 三、报错-问题总结
    • 1、jdk不适用
    • 2、bootstrap checks failed
    • 3、Address already in use
    • 4、can not run elasticsearch as root
    • 5、modules] not found
    • 6、Event loop shut down?

一、背景

因要使用信创环境,原A环境停止使用改用B环境,所以A环境的ES不可用需要重新部署到B环境,此处注意无安装包,只有A环境已经部署的ES配置文件等供参考。

二、步骤

因为B环境基本上完全copy A环境,所以elasticsearch的路径等均不变,默认安装生成路径不指定。设B环境ip:100.100.100.1
(1)路径记录:
bin执行路径:/usr/share/elasticsearch
logs路径:/var/log/elasticsearch
data路径:/var/lib/elasticsearch
config路径:/etc/elasticsearch
(2)ES数据导出:将/var/lib/elasticsearch/nodes的数据文件下载保存nodes.tar.gz
(3)用户:esuser

1、查看原ES版本

假设A环境为100.100.100.1,在终端输入以下命令,查看version中的number信息:
curl -uelastic -X GET “http://100.100.100.1:9200/”
显示为7.3.1
到ES官网下载此版本。
链接: https://www.elastic.co/cn/downloads/elasticsearch
目前版本已经是8.14.3了,为了保证一致需要下载旧版本

2、新环境服务器

2.1、是否有elasticsearch

(1)查看是否有elasticsearch进程;
ps -ef|grep elasticsearch
(2)查看是否有elasticsearch安装包;
rpm -qa |grep elastic
(3)删除elasticsearch安装包。
yum remove elasticsearch

2.2、安装elasticsearch

(1)安装elasticsearch;
rpm -ivh elasticsearch-7.3.1-x86_64.rpm
如果安装有问题,卸载重新安装。
rpm -e elasticsearch-7.3.1-x86_64.rpm
(2)添加用户并到相关路径进行授权;
先用root账户

useradd esuser
chown -R esuser:root  /etc/sysconfig/elasticsearch
chown -R esuser:root  /usr/share/elasticsearch
chown -R esuser:root  /var/log/elasticsearch
chown -R esuser:root  /var/lib/elasticsearch
chown -R esuser:root  /etc/elasticsearch

(3)环境变量;

su - esuser
cd /home/esuser
ll -als

vi .bash_profile

export JAVA_HOME=/usr/share/elasticsearch/jdk
export ES_HOME=/usr/share/elasticsearch/jdk
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/share/elasticsearch/jdk/bin

source ~/.bash_profile

2.3、配置参数

将数据文件复制到指定路径

cd /var/lib/elasticsearch

mv nodes nodes.old
tar -zxvf nodes.tar.gz

vi /etc/sysconfig/elasticsearch

ES_home=/usr/share/elasticsearch/jdk
JAVA_HOME=/usr/share/elasticsearch/jdk
ES_PATH_CONF=/etc/elasticsearch

cd /etc/elasticsearch
vi jvm.options

-Xms1g
-Xmx1g

此处注意,如以下参数有则释放#并修改值,注意值前要先留个空格。没有就直接添加。

vi /etc/elasticsearch/elasticsearch.yml

cluster.name: my-application
node.max_local_storage_nodes: 2
path.data: /var/lib/elasticsearch
#可以通过逗号分隔指定多个目录
path.logs: /var/log/elasticsearch
network.host: 100.100.100.1
http.port: 9200
discovery.seed_hosts: [100.100.100.1]
cluster.initial_master_nodes: ["node-1"]
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true

2.4、启动elasticsearch

cd /usr/share/elasticsearch/bin

./elasticsearch

或者

./elasticsearch -d

区别在于第一种日志直接打印在页面,如果当前页面关掉则elasticsearch停掉。第二种属于后台启动,日志打印在/var/log/elasticsearch/elasticsearch.log

2.5、设置密码

cd /usr/share/elasticsearch/bin

./elasticsearch-setup-passwords interactive

三、报错-问题总结

以下问题本次部署启动时均遇到,因为事后整理且无法看到执行记录,凭印象记录乱序排列。

1、jdk不适用

启动时显示jdk版本不适用,那就用ES自带的jdk,更新环境变量。
/usr/share/elasticsearch/jdk

2、bootstrap checks failed

执行时报错:

[ERROR][o.e.b.Bootstrap][i-z5rlfm6d] node validation exception
[1] bootstrap checks failed
[1]  the default discovery settings are unsuitable for production use; at least one of [discovery.seed_hosts,discovery.seed_providers, cluster.initial_master_nodes] must be configured

解决方法:vi /etc/elasticsearch/elasticsearch.yml增加修改以下两个参数:
discovery.seed_hosts: [100.100.100.1]
cluster.initial_master_nodes: [“node-1”]

3、Address already in use

端口还是ip,停止进程,重启。
ps -ef|grep elasticsearch
kill -9 进程号
lsof -i:9200|more或netstat -ulntp|grep 9200
kill -9 进程号

4、can not run elasticsearch as root

[ERROR][o.e.b.Bootstrap][i-z5rlfm6d] Exception
java.lang.RuntimeException:can not run elasticsearch as root

不用root启动elasticsearch,换其他用户。

5、modules] not found

两个错误都出来了,一开始modules在/usr/share/elasticsearch路径下,我看包第一个错误,就mv到jdk路径下,结果原路径也开始报错找不到文件,所以我又复制了一遍。相当于modules在两个路径下都存在且文件一致。

[ERROR][o.e.b.Bootstrap][i-z5rlfm6d] Exception
java.lang.illegalStateException:modules directory [/usr/share/elasticsearch/jdk/modules] not found
[ERROR][o.e.b.Bootstrap][i-z5rlfm6d] Exception
java.lang.illegalStateException:modules directory [/usr/share/elasticsearch/modules] not found

将/usr/share/elasticsearch路径下的modules同步到/usr/share/elasticsearch/jdk/路径下
cp -r /usr/share/elasticsearch/modules /usr/share/elasticsearch/jdk/

6、Event loop shut down?

[ERROR][i.n.u.c.D.rejectedExecution][i-z5rlfm6d]Failed to submit a listener notification task.Event loop shut down?

类问题3.3,杀掉进程重启。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/382308.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

栈和队列(C语言)

栈的定义 栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。 压栈:…

20分钟上手新版Skywalking 9.x APM监控系统

Skywalking https://skywalking.apache.org/ Skywalking是专为微服务、云原生和基于容器的(Kubernetes)架构设计的分布式系统性能监控工具。 Skywalking关键特性 ● 分布式跟踪 ○ 端到端分布式跟踪。服务拓扑分析、以服务为中心的可观察性和API仪表板。…

【stm32项目】基于stm32智能宠物喂养(完整工程资料源码)

基于STM32宠物喂养系统 前言: 随着人们生活幸福指数的提高,越来越多的家庭选择养宠物来为生活增添乐趣。然而,由于工作等原因,许多主人无法及时为宠物提供充足的食物与水。为了解决这一问题,我设计了一款便捷的宠物喂…

linux C++ onnxruntime yolov8 视频检测Demo

linux C onnxruntime yolov8 视频检测Demo 目录 项目目录 效果 ​编辑CMakeLists.txt 代码 下载 项目目录 效果 ./yolov8_demo --help ./yolov8_demo -c2 -ptrue ./yolov8_demo -c1 -strue CMakeLists.txt # cmake needs this line cmake_minimum_required(VERSION 3…

vim gcc

vim 使用 vs filename 分屏 ctrl ww 切窗口 shift zz 快速提出vim vim配置 vim启动时自动读取当前用户的家目录的.vimrc文件 vim配置只影响本用户 其他用户观看同一文件不受影响 gcc指令 & c文件编译过程 动态库 静态库 & 链接方式 有相应库才能进行…

【机器学习】不同操作系统下如何安装Jupyter Notebook和Anaconda

引言 Jupyter Notebook 是一个非常流行的开源Web应用程序,允许你创建和共享包含代码、方程、可视化和解释性文本的文档 文章目录 引言一、如何安装Jupyter Notebook1.1 对于Windows用户1.2 对于macOS用户1.3 对于Linux用户: 二、如何安装Anaconda2.1 对于…

css气泡背景特效

css气泡背景特效https://www.bootstrapmb.com/item/14879 要创建一个CSS气泡背景特效,你可以使用CSS的伪元素(:before 和 :after)、border-radius 属性来创建圆形或椭圆形的“气泡”,以及background 和 animation 属性来设置背景…

基于 Electron+Vite+Vue3+Sass 框架搭建

技术参考 技术描述Electron一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。嵌入 Chromium 和 Node.jsElectron Forge用于打包和分发 Electron 应用程序的一体化工具。英文地址在此Vite前端构建工具Vue3用于构建用户界面的 JavaScript 框架vitejs/plugin-vueVite 插…

java基础-String

之前有很长时间没进行更新了,现在开始会重新进行java基础的学习,所以会开始进行java基础方面的更新,今天会进行string字符串的学习。 String在底层被final(声明的变量或者对象不可以扩展/改变)修饰,故其不可变。其底层采用的是字符…

springboot集成redis之字典缓存

什么是redis的字典缓存? Redis的缓存是Redis内部用于存储键值对数据结构的一种基础数据结构。在Redis中,所有的键值对都是通过字典这种数据结构来存储的。字典在Redis中扮演着核心角色,因为它不仅用于数据库中的键值对存储,还用于…

Postman设置全部请求都携带请求头,Postman如何一次性设置请求头、不需要一个请求一个请求去添加请求头

文章目录 一、问题描述二、解决办法三、应用场景 一、问题描述 现在我有 n 个接口测试,其中 n 个都需要携带一致的请求头(其实一般都是携带 JWT 令牌),怎么办?我要一个一个写?如图: 二、解决办…

go语言Gin框架的学习路线(十)

目录 GORM的CRUD教程 查询 普通查询 定义 User 结构体 查询所有用户 查询第一个用户 总结 条件查询 内联条件 额外查询选项 高级查询 链式操作 Scopes 多个立即执行方法 GORM的CRUD教程 CRUD 是 "Create, Read, Update, Delete"(创建、查询…

[经验] 驰这个汉字的拼音是什么 #学习方法#其他#媒体

驰这个汉字的拼音是什么 驰,是一个常见的汉字,其拼音为“ch”,音调为第四声。它既可以表示动词,也可以表示形容词或副词,意义广泛,经常出现在生活和工作中。下面就让我们一起来了解一下“驰”的含义和用法。…

以Zookeeper为例 浅谈脑裂与奇数节点问题

一、脑裂现象的定义与影响 脑裂(split-brain)是指在分布式系统中,因网络分区或其他故障导致系统被切割成两个或多个相互独立的子系统,每个子系统可能独立选举出自己的领导节点。这一现象在依赖中心领导节点(如Elastic…

【Qt 】JSON 数据格式详解

文章目录 1. JSON 有什么作用?2. JSON 的特点3. JSON 的两种数据格式3.1 JSON 数组3.2 JSON 对象 4. Qt 中如何使用 JSON 呢?4.1 QJsonObject4.2 QJsonArray4.3 QJsonValue4.4 QJsonDocument 5. 构建 JSON 字符串6. 解析 JSON 字符串 1. JSON 有什么作用? &#x…

【北京迅为】《i.MX8MM嵌入式Linux开发指南》-第三篇 嵌入式Linux驱动开发篇-第三十九章 Linux MISC驱动

i.MX8MM处理器采用了先进的14LPCFinFET工艺,提供更快的速度和更高的电源效率;四核Cortex-A53,单核Cortex-M4,多达五个内核 ,主频高达1.8GHz,2G DDR4内存、8G EMMC存储。千兆工业级以太网、MIPI-DSI、USB HOST、WIFI/BT…

5.Fabric的共识机制

在Fabric中,有以下3中典型共识机制。 Solo共识 solo共识机制只能用于单节点模式,即只能有一个Orderer节点,因此,其共识过程很简单,每接收到一个交易信息,就在共识模块的控制下产生区块并广播给节点存储到账本中。 Solo 模式下的共识只适用于一个Orderer节点,所以可以在…

CTF-Web习题:2019强网杯 UPLOAD

题目链接:2019强网杯 UPLOAD 解题思路 打开靶场如下图所示,是一个注册和登录界面 那就注册登录一下,发现是一个提交头像的页面: 试了一下只有能正确显示的png图片才能提交成功,同时F12拿到cookie,base6…

便宜多域名SSL证书申请平台推荐

随着互联网的深入发展,网络安全问题愈发受到重视。SSL证书作为保障网站和用户数据安全的重要工具,其重要性不言而喻。在众多SSL证书类型中,多域名SSL证书因其独特的功能和优势,逐渐成为企业和个人保护网站安全的首选。 申请便宜S…

Django视图与URLs路由详解

在Django Web框架中,视图(Views)和URLs路由(URL routing)是Web应用开发的核心概念。它们共同负责将用户的请求映射到相应的Python函数,并返回适当的响应。本篇博客将深入探讨Django的视图和URLs路由系统&am…