Linux下ElasticSearch7.9.2安装配置(包含服务器配置、启动停止脚本、开放端口和elasticsearch-head插件的使用)

news2025/1/31 11:23:06

Linux下ElasticSearch7.9.2安装配置

  • 前言
  • 1.下载安装
    • 1.1 使用wget的方式下载
    • 1.2 官网下载
  • 2.上传到服务器并解压
  • 3.修改es配置文件
      • 3.1 es目录简介
      • 3.2 修改配置文件
  • 4. 创建用户并赋权
  • 5. 服务器修改配置
    • 5.1 修改文件句柄数和线程数
    • 5.2 关闭swapping
    • 5.3 修改虚拟内存
  • 6. 启动es
    • 6.1 前台运行启动es(不推荐)
    • 6.2 后台守护进程方式运行(推荐)
    • 6.3 自定义启动与关闭脚本(推荐)
      • 创建启动脚本
      • 创建停止脚本
  • 7.开放防火墙端口
  • 8. 安装chrome可视化head插件

前言

本文主要介绍Linux下ElasticSearch7.9.2安装,目前是介绍单节点的配置

应用版本说明
操作系统centos7稳定、高预测性、高管理性、高重复性的Linux平台
elasticsearch7.9.2es7.x的linux版本
jdk8本人使用JDK 8;ES建议使用JDK 11 启动的时候会有警告但是不会报错,可以忽略

1.下载安装

1.1 使用wget的方式下载

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.9.2-linux-x86_64.tar.gz

在这里插入图片描述

1.2 官网下载

此种方式可能比较慢,需要耐心等待。官网下载:Elasticsearch 7.9.2
选择Linux的tar包模式下载,然后上传到服务器目录
在这里插入图片描述

2.上传到服务器并解压

解压缩命令:

tar -zxvf elasticsearch-7.6.1-linux-x86_64.tar.gz 

在这里插入图片描述

3.修改es配置文件

3.1 es目录简介

  • bin:下面存放着Es启动文件 elasticsearch.bat/elasticsearch
  • config:配置目录
  • data: 数据目录
  • jdk、lib:Java运行环境以及依赖包
  • logs:日志目录
  • modules、plugins:模块及插件目录,head插件可以存放在plugins目录下

3.2 修改配置文件

注意path.datapath.logs需要配置指定的路径

#默认的集群名称,在集群配置多个节点时需要保持一致,单机可暂不关注
cluster.name: elasticsearch
node.name: es-node0
cluster.initial_master_nodes: ["es-node0"]

# 指定数据存储位置
path.data: /data1/elasticsearch-7.9.2/data
 
#日志文件位置
path.logs: /data1/elasticsearch-7.9.2/logs

#默认只允许本机访问,修改为0.0.0.0后则可以允许任何ip访问
network.host: 0.0.0.0

#设置http访问端口,9200是http协议的RESTful接口,注意端口冲突可修改
http.port: 9200

# 跨域问题配置
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type

4. 创建用户并赋权

1.先创建用户

adduser elasticsearch

2.es用户创建密码

passwd elasticsearch

在这里插入图片描述
3.创建所属组

chown es:es -R /data1/elasticsearch-7.9.2

在这里插入图片描述

5. 服务器修改配置

下面操作5.1和5.2步骤完成后都需要系统重启,可以先按步骤完成后,重启一次即可

5.1 修改文件句柄数和线程数

防止es用户可创建文件权限过低导致报错

vim  /etc/security/limits.conf

添加以下内容:

#句柄
es  soft nofile 65536
es  hard nofile 65536
#线程
es  soft nproc 4096
es  hard nproc 4096

保存退出后需要系统重启!

上述配置是为了解决:

报错问题:max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
问题描述:elasticsearch用户拥有的可创建文件描述的权限太低,至少需要65536;

重启服务器后验证

su es
ulimit -Hn
ulimit -Sn
ulimit -Hu
ulimit -Su

5.2 关闭swapping

官方建议:把内存的一半给Lucene+不要超过32G+关闭swap
ES建议要关闭 swap 内存交换空间,禁用swapping。因为当内存交换到磁盘上,一个100微秒的操作可能变成 10毫秒,然后100 微秒的操作时延累加起来,可以看出 swapping 对于性能的影响是致命的

vim /etc/fstab

注释含有swap一行
在这里插入图片描述
保存退出后需要系统重启!

注释前:
在这里插入图片描述
注释后:
在这里插入图片描述

5.3 修改虚拟内存

vim /etc/sysctl.conf

添加以下内容:

vm.max_map_count=262144

保存退出,刷新配置文件

sysctl -p

验证是否修改成功

sysctl vm.max_map_count

上述配置是为了解决:

报错问题:max virtual memory areas vm.max_map_count [65530] is too low,
increase to at least [262144]

6. 启动es

6.1 前台运行启动es(不推荐)

切换用户到es,使用es用户启动elasticsearch,此种方式Ctrl + C 则程序终止

# 切换到es用户,使用root用户启动会报错
su es

# 进入到es的bin目录
cd /data1/elasticsearch-7.9.2/bin

# 执行启动脚本,此种方式Ctrl + C 则程序终止
./elasticsearch

在这里插入图片描述
ctrl + c 停止运行
在这里插入图片描述

注意:如果root用户启动会报错
报错问题:org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as rootes
问题描述:不能用root用户启动,必须创建es用户来启动
在这里插入图片描述

6.2 后台守护进程方式运行(推荐)

# 切换到es用户,使用root用户启动会报错
su es

# 进入到es的bin目录
cd /data1/elasticsearch-7.9.2/bin

# 执行启动脚本,守护进程方式运行
 ./elasticsearch -d

关闭ES服务

kill -9 pid

在这里插入图片描述

6.3 自定义启动与关闭脚本(推荐)

创建启动脚本

# 创建es启动脚本文件
touch es-start.sh
# 编辑脚本
vim es-start.sh 
# 设置用户组
chown es:es es-start.sh 
# 设置执行权限
chmod 755 es-start.sh 

es-start.sh

cd /data1/elasticsearch-7.9.2
./bin/elasticsearch -d -p pid

创建停止脚本

# 创建es停止脚本文件
touch es-stop.sh
# 编辑脚本
vim es-stop.sh 
# 设置用户组
chown es:es es-stop.sh 
# 设置执行权限
chmod 755 es-ststoprt.sh 

es-stop.sh

cd /data1/elasticsearch-7.9.2
if [ -f "pid" ]; then
pkill -F pid
fi

启动与关闭
在这里插入图片描述

7.开放防火墙端口

#查看防火墙状态
systemctl status firewalld 
#查看开放的端口
firewall-cmd --query-port=9200/tcp
#添加端口
firewall-cmd --zone=public --add-port=9200/tcp --permanent 
#重载防火墙
firewall-cmd --reload 
#再次查看端口是否已经开放
firewall-cmd --query-port=9200/tcp

8. 安装chrome可视化head插件

访问es数据库的Chrome插件
先解压到本地目录,然后在chrome中 安装这个插件
在这里插入图片描述
选择解压的目录然后安装
在这里插入图片描述
输入es连接地址,点击连接,健康值绿色即表示成功启动
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

“配置DHCP Snooping实验:保护网络中的DHCP服务和防止欺骗攻击“

"配置DHCP Snooping实验:保护网络中的DHCP服务和防止欺骗攻击" 【实验目的】 部署DHCP服务器。熟悉DHCP Snooping的配置方法。验证拓扑。 【实验拓扑】 实验拓扑如图所示。 设备参数如下表所示。 设备 接口 IP地址 子网掩码 默认网关 R1 F0/0 …

腾讯云轻量应用服务器和云服务器区别详细说明

腾讯云轻量应用服务器是什么?腾讯云轻量服务器和云服务器有什么区别?为什么轻量应用服务器费用更低?是因为轻量服务器CPU内存性能比云服务器CVM性能差吗?轻量应用服务器适合中小企业或个人开发者搭建企业官网、博客论坛、微信小程…

基于SPAD / SiPM技术的激光雷达方案

激光雷达(LiDAR)是一种测距技术,近年来越来越多地用于汽车先进驾驶辅助系统(ADAS)、手势识别和3D映射等应用。尤其在汽车领域,随着传感器融合的趋势,LiDAR结合成像、超声波、毫米波雷达,互为补足,为汽车提供全方位感知…

物联网Lora模块从入门到精通(五)光照与温湿度传感器

一、前言 在程序开发中,光照与温湿度的获取是十分常见与重要的,本文我们主要是使用M21温湿度光照三合一传感器,其中温湿度数据通过协议获取,而光照通过ADC获取。 二、代码实现 本文内容较为简单,且后续文章将在本文基…

网络编程Demo:Java的阻塞与非阻塞模式以及Netty

前言 IO既神秘,双简单 IO是什么 从表面理解,IO是输入(input)、输出(output)的英文首字母的缩写形式,可以简单理解为计算机的输入与输出,描述计算机的数据流动,如使用键盘输入了一个“hello w…

GreenPlum版本升级

📢📢📢📣📣📣 哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10余年DBA及大数据工作经验 一位上进心十足的【大数据领域博主】!😜&am…

C语言期末课程设计—【通讯录管理系统】让课程设计不再是痛苦

目录 摘要 第一章 绪论 1.1项目意义 1.2通讯录功能 第二章 详细设计与实现 2.1 Contact程序运行流程图 2.2 AddContact(增加)函数流程图 2.3 DelContact(删除)函数流程图 2.4 SearchConact(查找)…

碳排放预测模型 | Python实现基于机器回归分析的碳排放预测模型——数据清理和准备

文章目录 效果一览文章概述研究内容源码设计参考资料效果一览 文章概述 碳排放预测模型 | Python实现基于机器回归分析的碳排放预测模型——数据清理和准备 研究内容 分析国家在设计用于预测和预测二氧化碳排放的机器学习模型方面的特定记录,利用来自全球绝大多数国家的记录。…

Spring Cloud - 带你认识微服务,简单demo实现服务拆分及远程调用

目录 一、微服务 1.1、简介 1.2、架构工作原理 1.3、架构特点 1.4、简单了解 SpringCloud 二、服务拆分和远程调用 2.1、服务拆分 2.2、微服务远程调用 2.2.1、远程调用分析 2.2.2、具体调用步骤 三、小结 一、微服务 1.1、简介 微服务是一种架构风格,…

React学习之路-准备工作

一、3W React是什么? React 起源于 Facebook 的内部项目,因为该 公司对市场上所有 JavaScript MVC 框架,都不满意,就决定自己写一套,用来架设 Instagram 的网站。做出来以后,发现这套东西很好用&#xf…

linux 环境执行npm没有反应 (省流:卸载重装)

今天早上在执行工程 npm run dev 时,发现没有反应,也没有提示任何错误,就直接跳过了。 接着我又试了试其他命令 npm -v / npm init / npm … 都无效。 windows 下的解决方案 于是我上网查询了一番,发现的确也有其他人遇到这种…

虚函数表不一定总是在对象的起始位置

在我之前的一篇文章 “COM 对象的内存布局”中,作为举例,我将对象的虚函数表指针放置在了底层 C 对象的起始位置,但是值得注意的是,虚函数表指针指向的位置并没有一个实际的标准。即使将虚函数表放置在对象中间,甚至是…

计算机网络编程 | 并发服务器代码实现(多进程/多线程)

欢迎关注博主 Mindtechnist 或加入【Linux C/C/Python社区】一起学习和分享Linux、C、C、Python、Matlab,机器人运动控制、多机器人协作,智能优化算法,滤波估计、多传感器信息融合,机器学习,人工智能等相关领域的知识和…

基于 Quivr 搭建个人知识库

目录 Quivr介绍 Quivr特性 Quivr演示 Demo with GPT3.5: Demo of the new version: Quivr实战 Quiv 使用的主要技术 Quiv 实践依赖 创建Supabase项目 部署Quiv项目 第一步:现在源码 第二步:设置环境变量 第三步:执行sql 第…

http1.0,http1.1,http2.0,http3.0 区别有哪些

20 世纪 60 年代,美国国防部高等研究计划署(ARPA)建立了 ARPA 网,这被认为是互联网的起源。70 年代,研究人员基于对 ARPA 网的实践和思考,发明出了著名的 TCP/IP 协议。该协议具有良好的分层结构和稳定的性…

Docker部署开源项目Django-CMS企业内容管理系统

Docker部署开源项目Django-CMS企业内容管理系统 一、Django-CMS介绍1.1 Django-CMS简介1.2 Django-CMS特点 二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍 三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本 四、下载django-cms-quic…

JS 之 事件Event对象详解(属性、方法、自定义事件)

一、Event对象 1、简介 ​ 事件event对象是指在浏览器中触发事件时,浏览器会自动创建一个event对象,其中存储了本次事件相关的信息,包括事件类型、事件目标、触发元素等等。浏览器创建完event对象之后,会自动将该对象作为参数传…

NLP——WordNet;Word Similarity; Word Sense Disambiguition

WordNet WordNet是一个广泛使用的英语词汇数据库和语义网络。它由普林斯顿大学认知科学实验室开发,旨在帮助人们理解单词之间的关系和意义。WordNet的主要目标是将英语词汇组织成一种层次结构,其中每个词都与其他相关词联系起来。WordNet中的单词按照它们…

[6]PCB设计实验|认识常用元器件|电阻器|18:30~19:00

目录 一、电阻器主要用途 1. 稳定和调节电路中的电流和电压 2. 作为分流、分压和负载使用 二、常见电阻器 1. 贴片电阻 2. 热敏电阻 3. 限流电阻 4. 可调电阻 5. 排阻(网络电阻) 三、几种常用电阻器的结构特点 四、电阻的参数 1. 额定功率 电阻器功率的表示 ​2…

自学黑客/网络安全工具软件大全100套

黑客工具软件大全100套 1 Nessus:最好的UNIX漏洞扫描工具 Nessus 是最好的免费网络漏洞扫描器,它可以运行于几乎所有的UNIX平台之上。它不止永久升级,还免费提供多达11000种插件(但需要注册并接受EULA-acceptance–终端用户授权…