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

相关推荐
小小管写大大码7 小时前
如何让vscode变得更智能?vscode接入claude实现自动编程
运维·ide·vscode·自动化·编辑器·ai编程·腾讯云ai代码助手
TM1Club7 小时前
AI驱动的预测:新的竞争优势
大数据·人工智能·经验分享·金融·数据分析·自动化
zhang133830890757 小时前
CG-09H 超声波风速风向传感器 加热型 ABS材质 重量轻 没有机械部件
大数据·运维·网络·人工智能·自动化
Fᴏʀ ʏ꯭ᴏ꯭ᴜ꯭.8 小时前
Keepalived VIP迁移邮件告警配置指南
运维·服务器·笔记
物联网软硬件开发-轨物科技8 小时前
【轨物洞见】告别“被动维修”!预测性运维如何重塑老旧电站的资产价值?
运维·人工智能
电商API_180079052478 小时前
第三方淘宝商品详情 API 全维度调用指南:从技术对接到生产落地
java·大数据·前端·数据库·人工智能·网络爬虫
程序员允诺8 小时前
[DevOps实战] 彻底解决依赖地狱:如何编译全静态、可移植的 Xorriso 工具
运维·devops
酣大智8 小时前
接口模式参数
运维·网络·网络协议·tcp/ip
龙山云仓9 小时前
No140:AI世间故事-对话康德——先验哲学与AI理性:范畴、道德律与自主性
大数据·人工智能·深度学习·机器学习·全文检索·lucene
一只自律的鸡9 小时前
【Linux驱动】bug处理 ens33找不到IP
linux·运维·bug