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

相关推荐
名字还没想好☜19 小时前
Kubernetes Pod 调度实战:nodeSelector、亲和性与 taint/toleration 把 Pod 放到指定节点
运维·云原生·容器·kubernetes·调度
qetfw19 小时前
CentOS 7 vsftpd.conf 配置文件详解:监听、用户、权限、被动模式与 TLS
linux·运维·centos·ftp·vsftpd
风曦Kisaki19 小时前
Kubernetes(K8s)笔记Day04:控制器(ReplicaSet 与Deployment),滚动更新及回滚,滚动更新策略,Pod 的 DNS 策略
linux·运维·笔记·docker·容器·kubernetes
薛定e的猫咪19 小时前
零基础选型指南:Make / 扣子 Coze/n8n/Dify 四大自动化平台完整对比
运维·自动化
Huangjin007_19 小时前
【Linux 系统篇(十)】基础开发工具(五) —— 第一个系统程序 - 进度条
linux·运维·服务器
MetrixAeroCore19 小时前
出海餐厅手持POS机物联网卡:多币种计费稳定传输与跨境税务合规对接方案
运维
路由侠内网穿透.19 小时前
本地部署开源日志收集系统 Log Bull 并实现外部访问
运维·服务器·网络·数据库·开源
时空无限20 小时前
linux mellanox 网卡队列 irq rps 相关
linux·运维
Tattoo_Welkin20 小时前
IDEA 中常用操作记载
java·elasticsearch·intellij-idea
AlbertS20 小时前
Let‘s Encrypt 证书自动续期并自动应用到Nginx
运维·nginx·ssl·cerbot·renew·续期