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 还是挺坎坷的!

相关推荐
打工仔折腾 AI4 小时前
Changedetection.io 网页变动监控:Docker 部署、通知配置与公网暴露实践
运维·人工智能·后端·python·docker·容器·性能优化
无奈笑天下4 小时前
银河麒麟上lsblk命令教程详解
linux·运维·服务器·数据库
fengkai45455 小时前
Prometheus+K8s弹性伸缩综合项目
运维·kubernetes·k8s·prometheus·hpa·vpa
云南新人和数采集团5 小时前
云南靠谱软件开发公司选型指南:以昆明新腾科技为例
大数据·人工智能·科技
AllData公司负责人6 小时前
AI大模型数据开发底座系列说明书:AllData集成DB-GPT开源项目建设 AI 多模态分析底座,涵盖模态解析/智能大屏/MCP 扩展!
大数据·数据库·人工智能·gpt·数据采集·数据接入·模态解析
分布式存储与RustFS6 小时前
镜像仓库的层别只堆本地盘:用 RustFS 给 Harbor 当 S3 后端
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
雪落漂泊9 小时前
Liunux进程(七):程序控制篇(中)
linux·运维·windows
Elasticsearch9 小时前
过犹不及:为什么搜索结果重排序时,20 个候选结果胜过 200 个
elasticsearch
分布式存储与RustFS9 小时前
工作流脚本和依赖 JAR 散在各节点本地盘:用 DolphinScheduler 资源中心接到 RustFS
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
wno7049 小时前
常用的Git命令清单
大数据·git·elasticsearch