当前位置: 首页 > news >正文

centos7安装 ES集群 elasticsearch

这里写自定义目录标题

  • 编写启动脚本 elasticsearch.sh
  • 启动可能报错:elasticsearch 7.10启动报错 bootstrap checks failed
        • 解决方法
        • 问题原因:
        • 注意 退出xshell,重新登录: 上面两个配置项改完后,ES启动用户(es 或root) **重新登录**就会生效;

编写启动脚本 elasticsearch.sh

  • 懒人编写一个用于启动、停止和重启Elasticsearch服务的shell脚本
  • 脚本中设置环境变量,并使用su - es - c命令在es用户下执行操作
  • 通过赋予脚本执行权限,用户可以方便地对Elasticsearch进行控制
#!/bin/shexport JAVA_HOME=/opt/software/java11/jdk-11.0.11
export PATH=$JAVA_HOME/bin:$PATH
export ES_HOME=/opt/software/elasticsearch/elasticsearch-7.6.1
export PATH=$ES_HOME/bin:$PATHif [ $# -lt 1 ]
thenecho "No Args Input..."exit ;
ficase $1 instart)su - es -c "$ES_HOME/bin/elasticsearch -d -p pid"echo "elasticsearch is started";;stop)pid=`ps aux|grep elasticsearch | grep -v 'grep elasticsearch' | awk '{print $2}'`kill -9 $pidecho "elasticsearch is stopped";;restart)pid=`ps aux|grep elasticsearch | grep -v 'grep elasticsearch' | awk '{print $2}'`kill -9 $pidecho "elasticsearch is stopped"sleep 1su - es -c "$ES_HOME/bin/elasticsearch -d -p pid"echo "elasticsearch is started";;*)echo "start|stop|restart";;
esac
exit 0

赋予执行权限:

chmod +x elasticsearch.sh

参数说明:

su - es -c “命令”, 这个表示脚本内切换es用户一次并执行 -c 后面的命令,然后退出es普通用户到当前用户。

启动可能报错:elasticsearch 7.10启动报错 bootstrap checks failed

elasticsearch 7.14启动报错 bootstrap checks failed
现象一
ES使用root用户安装报错如下

Caused by: java.lang.RuntimeException: can not run elasticsearch as root[root@localhost elasticsearch-7.14.2]# ./bin/elasticsearch
[2022-09-18T16:40:41,166][ERROR][o.e.b.ElasticsearchUncaughtExceptionHandler] [localhost.localdomain] uncaught exception in thread [main]
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as rootat org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:163) ~[elasticsearch-7.14.2.jar:7.14.2]at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:150) ~[elasticsearch-7.14.2.jar:7.14.2]at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:75) ~[elasticsearch-7.14.2.jar:7.14.2]at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:116) ~[elasticsearch-cli-7.14.2.jar:7.14.2]at org.elasticsearch.cli.Command.main(Command.java:79) ~[elasticsearch-cli-7.14.2.jar:7.14.2]at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:115) ~[elasticsearch-7.14.2.jar:7.14.2]at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:81) ~[elasticsearch-7.14.2.jar:7.14.2]
Caused by: java.lang.RuntimeException: can not run elasticsearch as rootat org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:103) ~[elasticsearch-7.14.2.jar:7.14.2]at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:170) ~[elasticsearch-7.14.2.jar:7.14.2]at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:399) ~[elasticsearch-7.14.2.jar:7.14.2]at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159) ~[elasticsearch-7.14.2.jar:7.14.2]... 6 more
uncaught exception in thread [main]
java.lang.RuntimeException: can not run elasticsearch as rootat org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:103)at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:170)at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:399)at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159)at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:150)at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:75)at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:116)at org.elasticsearch.cli.Command.main(Command.java:79)at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:115)at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:81)
For complete error details, refer to the log at /opt/ES/elasticsearch-7.14.2/logs/elasticsearch.log
解决方法

ES官方为了安全起见,禁止启用Root启动ES服务,因此我们需要进行普通用户的创建,才能正常启动ES服务。所以我们需要新建一个普通用户,并将ES安装目录授权给刚新建的用户。

[root@localhost ES]# useradd es

错误信息:

ERROR: [1] bootstrap checks failed
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
[2]: max number of threads [3795] for user [es] is too low, increase to at least [4096]
[3]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
问题原因:

es高版本对资源要求较高,linux系统默认配置不能满足它的要求,所以需要单独配置

解决方法:

[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]

修改vi /etc/security/limits.conf 文件,加入配置

* hard nofile 65535  # *可以是es启动用户
* soft nofile 65535

可以指定用户
在这里插入图片描述

[2]: max number of threads [3795] for user [es] is too low, increase to at least [4096]

修改vi /etc/security/limits.conf 文件,加入配置

es - nproc 4096   # es是我的启动用户
注意 退出xshell,重新登录: 上面两个配置项改完后,ES启动用户(es 或root) 重新登录就会生效;
[3]:max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

修改/etc/sysctl.config文件,加入下面配置

vi /etc/sysctl.conf

vm.max_map_count=262144

执行命令,立即生效

/sbin/sysctl -p
vm.max_map_count = 262144

启动成功

相关文章:

centos7安装 ES集群 elasticsearch

这里写自定义目录标题 编写启动脚本 elasticsearch.sh启动可能报错:elasticsearch 7.10启动报错 bootstrap checks failed解决方法问题原因:注意 退出xshell,重新登录: 上面两个配置项改完后,ES启动用户(es 或root) **…...

互联网应用主流框架整合【Redis数据结构及常用命令】

在大部分情况下我们使用Redis只是执行一些简单的命令操作,通常无需区分是否是在一个连接池里的同一个链接去执行,如果需要执行多条命令,需要保证命令在同一个链接里完成,则采用SessionCallback接口操作即可 Redis数据结构-字符串…...

GORM 自动迁移与命名策略

在现代软件开发中,数据库结构的维护和迁移是常见的挑战之一。GORM,作为 Go 语言中强大的 ORM 库,提供了自动迁移功能,帮助开发者轻松地管理数据库表结构的变更。此外,GORM 还允许开发者通过命名策略(Naming…...

python社会科学问题研究的计算实验

实验十五:社会科学问题研究的计算实践 1.实验目标及要求 (1)掌握网络视角 (2)掌握社会网络基础内容 (3)掌握友谊悖论 2.实验主要内容 随机生成一次符合社会网络特征的网络,通过计…...

Element Plus 发布 2.8.0

功能特性 组件更新 [color-picker] alpha-slider a11y (#14245 by tolking)添加 mention 组件 (#17586 by Fuphoenixes)[tree-v2] 添加 scrollTo 方法 (#14050 by kaine0923)[drawer] 添加 append-to 属性 (#17761 by tolking)[table] tree children 添加严格检查 (#13519 by t…...

解释区块链技术的应用场景和优势-水文

区块链技术是一种去中心化的分布式账本技术,其应用场景和优势如下: 金融领域:区块链可以用于加密货币交易,提供安全的、去中心化的支付系统。它也可以用于股票、债券和其他金融交易的记录和结算,提高交易的透明度和效率…...

等保测评基础知识(一)

1、时间类: 网络安全法: 2017年6月1日等保2.0实施时间: 2019年12月1日密码法: 2020年1月1日个人信息保护法: 2021年11月1日,数据安全法实施时间: 2021年9月1日关键信息基础…...

股指期货套期保值中的展期管理有哪些?

在复杂的金融市场环境中,展期作为一种重要的风险管理工具,被广泛应用于期货交易中,特别是当投资者需要对长期资产进行套期保值时。展期的核心思想在于,通过连续替换高流动性的近月期货合约来替代流动性较差的远月合约,…...

如何通过参考文献找到原文

当只有参考文献想要获取原文时,通常会用到以下方法: 举例参考文献1. 杨忠华,周勃,宁宝宽,等.面向新能源产业的专业研究生研创能力培养实践探索——基于“政产学研用”融合驱动[J].高教学刊,2024,10(23):19-22.DOI:10.19980/j.CN23-1593/G4.2024.23.004…...

春秋云境 | SQL | CVE-2022-4230

目录 靶标介绍 开启靶场 wpscan漏洞介绍 查询数据库表名 查询表中字段名 查询字段下数据 靶标介绍 WP Statistics WordPress 插件13.2.9之前的版本不会转义参数,这可能允许经过身份验证的用户执行 SQL 注入攻击。默认情况下,具有管理选项功能 (ad…...

3.串口(UART)

串口理论部分可看51部分:链接 数据帧 帧头(2字节,例如AA、BB) 数据长度(2字节) 数据 CRC16校验(2字节) 帧尾(2字节) 代码编写 串口一发送命令控制LED灯(PB5、PE5) LED灯、串口、…...

macOS Sonoma 14.6.1 (23G93) Boot ISO 原版可引导镜像下载

macOS Sonoma 14.6.1 (23G93) Boot ISO 原版可引导镜像下载 2024 年 8 月 8 日凌晨,macOS Sonoma 14.6.1 发布,本更新包含了重要的错误修复,并解决了导致高级数据保护无法启用或停用的问题。同时带来了 macOS Ventura 13.6.9 安全更新。 本…...

论企业私域流量运营中的玩法创新与开源 AI 智能名片 O2O 商城小程序的应用

摘要:本文旨在探讨企业在构建私域流量池时的多种玩法策略,并着重分析如何针对不同类型客户制定个性化方案。同时,引入开源 AI 智能名片 O2O 商城小程序这一工具,阐述其在私域流量运营中的重要作用和价值,为企业提升运营…...

nginx.conf alias 静态资源 别名 nginx配置

Linux系统Bug 报权限不足错误 user root; 解决server_name太长时报错的问题 #解决server_name太长时报错的问题server_names_hash_bucket_size 64; 解决文件上传默认限制1M的问题 #解决文件上传默认限制1M的问题client_max_body_size 100m; 监听所有端口 server_name _; a…...

pve虚拟机使用

文章目录 1.pve 直通硬盘 1.pve 直通硬盘 查看硬盘号: ls /dev/disk/by-id -lqm set 101 --virtio1 /dev/disk/by-id/usb-HIKSEMI__93963907-0:0挂载sata类型: qm set 101 --sata1 /dev/disk/by-id/ata-ST4000DM004-2U9104_WFN7TMVV可以将一个硬盘挂…...

Linux:进程概念详解

1. 冯诺依曼体系结构 截至目前,我们所认识的计算机,都是有一个个的硬件组件组成 。 【注意】: a. 这里的存储器指的是内存 b. 不考虑缓存情况,这里的CPU能且只能对内存进行读写,不能访问外设(输入或输出设备) c.外…...

cms框架cookice注入漏洞

目录 一、环境 二、开始分析 2.1代码审计(未授权访问) 一、环境 环境私聊获取 二、开始分析 2.1代码审计(未授权访问) 我们可以看到构造函数ip是通过X_FORWARDED_FOR来获取的,而这个刚好可以伪造,那我…...

RabbitMQ高级特性 - 非持久化 / 持久化(交换机、队列、消息)

文章目录 RabbitMQ 持久化机制概述实现非持久化(交换机、队列、消息)实现持久化(交换机、队列、消息)RabbitMQ 持久化机制 概述 前面讲到了 生产者消息确认机制 和 消费者消息确认机制,保证了消息传输的可靠性,但是这还不够,试想如果 Broker 突然崩溃,那么所有的 交换…...

OpenGL ES->工作机制

渲染流程 渲染目的:输入3D立体坐标,输出绘制后的2D平面像素工作流程:顶点着色器->图元装配->几何着色器->光栅化->片段着色器->测试与混合,整个工作流程被封装在GPU内部,无法改变。运行在CPU的代码调用…...

ue4.27 C++ 解析内容为json的字符串

json字符串为 R"({"x": -1870.0, "y": -11400.0})"&#xff0c;里面内容是个json对象。 const FString& Message R"({"x": -1870.0, "y": -11400.0})"; TSharedRef<TJsonReader<>> Reader TJs…...

从华为实践学IPD:手把手教你写高通过率的Charter文档

华为IPD方法论实战&#xff1a;打造高价值Charter文档的7个关键步骤 在科技企业的研发管理领域&#xff0c;一份优秀的Charter文档往往决定着数千万甚至上亿研发投入的成败。华为IPD&#xff08;集成产品开发&#xff09;体系中的Charter开发流程&#xff0c;被全球众多科技企业…...

LeetCode 删除无效的括号:python 题解

简介 AI Agent 不仅仅是一个能聊天的机器人&#xff08;如普通的 ChatGPT&#xff09;&#xff0c;而是一个能够感知环境、进行推理、自主决策并调用工具来完成特定任务的智能系统&#xff0c;更够完成更为复杂的AI场景需求。 AI Agent 功能 根据查阅的资料&#xff0c;agent的…...

LoRaFi库详解:面向SX1272/SX1273的Arduino LoRa通信开发指南

1. 项目概述LoRaFi 是一款面向 Arduino 平台的 LoRa 无线通信库&#xff0c;专为基于 Semtech SX1272/SX1273 射频芯片的硬件平台设计&#xff0c;核心适配对象为 LoRaFi 开发板&#xff08;含配套扩展板/模块&#xff09;。该库并非通用 LoRa 协议栈&#xff0c;而是聚焦于物理…...

星露谷跨地域联机实战:基于FRP的低成本内网穿透方案

1. 为什么需要FRP内网穿透玩星露谷 星露谷物语作为一款支持多人联机的农场模拟游戏&#xff0c;和朋友一起种田钓鱼挖矿的乐趣远胜单人游玩。但官方服务器对国内玩家并不友好&#xff0c;经常出现高延迟甚至连接失败的情况。更头疼的是&#xff0c;当你想和异地好友联机时&…...

别再手动翻译Excel了!用Python+腾讯翻译API,5分钟搞定整张表格

别再手动翻译Excel了&#xff01;用Python腾讯翻译API&#xff0c;5分钟搞定整张表格 当产品经理收到海外用户反馈的CSV文件时&#xff0c;第一反应往往是打开翻译网站逐行复制粘贴。我曾见过同事花三小时处理200条英文评论&#xff0c;而同样的工作用Python脚本只需喝杯咖啡的…...

FastAPI 2.0流式响应性能翻倍的4个隐藏配置:uvloop优化、httpx异步客户端复用、response_model_exclude_unset调优、asyncpg连接池预热

第一章&#xff1a;FastAPI 2.0流式响应性能翻倍的全景认知FastAPI 2.0 引入了原生异步流式响应&#xff08;StreamingResponse&#xff09;的底层重构&#xff0c;通过移除中间层缓冲、直接对接 ASGI 服务器的 send 协议&#xff0c;并支持零拷贝字节流分块推送&#xff0c;显…...

从仿真到上板:手把手教你用Vivado搭建一个“永不停机”的FFT信号处理链路(附Testbench)

从仿真到上板&#xff1a;构建高可靠FFT信号处理系统的全流程实战 在数字信号处理领域&#xff0c;快速傅里叶变换&#xff08;FFT&#xff09;作为频谱分析的核心算法&#xff0c;其硬件实现一直是FPGA工程师的必备技能。本文将带您从仿真环境搭建开始&#xff0c;逐步完成一…...

SEO优化文章标题需要注意的重点有什么

SEO优化文章标题需要注意的重点有什么 在当前数字营销的环境中&#xff0c;SEO优化文章标题是吸引目标用户点击的重要因素之一。拥有一个高效的标题不仅可以提升文章的曝光率&#xff0c;还能提高用户的参与度和转化率。SEO优化文章标题需要注意的重点有哪些呢&#xff1f;本文…...

AI专著生成新玩法!掌握这些工具,快速产出高质量专业专著

学术专著写作挑战与 AI 辅助工具介绍 学术专著的根本价值在于其内容的系统性与内部逻辑的完整性&#xff0c;但这往往是写作中的一个重大挑战。相较于期刊论文专注于某个特定问题&#xff0c;学术专著必须构建一个包括绪论、理论框架、核心研究、应用拓展&#xff0c;以及结论…...

别再只用Arduino了!用ESP32+TSW-30浑浊度传感器做个智能鱼缸水质监测器(附完整代码)

ESP32TSW-30浑浊度传感器打造智能鱼缸水质监测系统 养鱼爱好者都知道&#xff0c;水质是鱼类健康生长的关键因素。传统的人工检测方式不仅费时费力&#xff0c;还难以做到实时监控。今天我们就来动手打造一个基于ESP32和TSW-30浑浊度传感器的智能鱼缸水质监测系统&#xff0c;让…...