Centos7安装ElasticSearch

Centos7安装ElasticSearch

准备工作

下载elasticsearch

https://www.elastic.co/cn/elasticsearch

将下载好的包上传到/usr/local/elasticsearch/ 路径下

安装

安装elasticsearch解压缩即可!

shell 复制代码
tar -zxvf elasticsearch-8.12.2-linux-x86_64.tar.gz

进入/usr/local/elasticsearch/elasticsearch-8.12.2/bin 路径执行下面命令启动es

shell 复制代码
./elasticsearch

启动失败处理

1:can not run elasticsearch as root

启动报错了!

提示是不能用root用户运行es。需要创建一个单独的用户给es使用

shell 复制代码
groupadd esgroup
useradd esroot -p esroot
chown -R esroot:esgroup /usr/local/elasticsearch/elasticsearch-8.12.2
su esroot
cd /usr/local/elasticsearch/elasticsearch-8.12.2/bin/
./elasticsearch

2:fatal exception while booting Elasticsearchjava.nio.file.NoSuchFileException: /usr/local/jdk/jdk-21.0.2/jre/lib/rt.jar

再次启动报错! 本地安装的jdk和es8.x内置的jdk冲突

查看本机的JAVA_HOME变量,发现有值

echo $JAVA_HOME

显示:

/usr/local/jdk/jdk-21.0.2

解决方法:

cd

vim .bash_profile

添加一行:export ES_JAVA_HOME=$JAVA_HOME

使之生效:source.bash_profile

再重新进入 elasticsearch/bin目录,启动elastticsearch,成功!

3:启动成功之后浏览器请求失败

http://10.10.2.23:9200/

放开9200端口

再次请求还是这样,原因是elasticsearch开启了认证,需要修改es的配置文件

进入/usr/local/elasticsearch/elasticsearch-8.12.2/config 文件夹 , 编辑 vim elasticsearch.yml

yaml 复制代码
# 监听端口
http.port: 9200
# 关闭xpack认证 
xpack.security.enabled: false
# master节点 改成自己的ip或者域名【单节点可以先不改】
cluster.initial_master_nodes: ["10.10.2.23"]
http.host: 0.0.0.0

重新启动!再次在浏览器访问,访问成功!

设置es启动脚本

在root用户下操作

shell 复制代码
#创建elasticsearch系统启动服务文件   
vim /usr/lib/systemd/system/elasticsearch.service

添加一下内容

shell 复制代码
[Unit]
Description=elasticsearch
After=network.target

[Service]
Type=forking
# 给es创建的用户
User=esroot
# 本地es安装地址
ExecStart=/usr/local/elasticsearch/elasticsearch-8.12.2/bin/elasticsearch -d
PrivateTmp=true
# 指定此进程可以打开的最大文件数
LimitNOFILE=65535
# 指定此进程可以打开的最大进程数
LimitNPROC=65535
# 最大虚拟内存
LimitAS=infinity
# 最大文件大小
LimitFSIZE=infinity
# 超时设置 0-永不超时
TimeoutStopSec=0
# SIGTERM是停止java进程的信号
KillSignal=SIGTERM
# 信号只发送给给JVM
KillMode=process
# java进程不会被杀掉
SendSIGKILL=no
# 正常退出状态
SuccessExitStatus=143

[Install]
WantedBy=multi-user.target

保存后执行下面命令

shell 复制代码
#刷新elasticsearch.service配置信息
systemctl daemon-reload

# 设置开机自动启动服务
systemctl enable elasticsearch.service

# 启动服务
systemctl start elasticsearch.service

# 查看服务状态
systemctl status elasticsearch.service

总结

第一次安装配置es 还是挺坎坷的!

相关推荐
得物技术6 小时前
从埋点需求到规则资产:Hermes Agent 重构得物数仓工作流
大数据·llm·ai编程
久美子7 小时前
AI驱动数仓建设的Harness工程实践——本体建模、知识分层与上下文工程
大数据
大树881 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠1 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
大志哥1231 天前
ES和Logstash日志链路系统上线后遭遇切片爆炸(解决)
大数据·elasticsearch
霸道流氓气质1 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
Inhand陈工1 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
果丁智能1 天前
物联网智能锁赋能集中式住宿:身份核验与远程权限管控的全链路技术实践
大数据·人工智能·物联网·智能家居
酣大智1 天前
ARP代理--工作原理
运维·网络·arp·arp代理
ApacheSeaTunnel1 天前
实战演示 | 基于 Apache SeaTunnel 与 Apache DolphinScheduler 实现 MySQL 到 Doris 离线定时增量同步
大数据·mysql·开源·doris·数据集成·seatunnel·数据同步