参考:
https://blog.csdn.net/Me_xuan/article/details/114608076
https://www.cnblogs.com/chenxitag/p/12320868.html
一、下载安装
1.下载ES
使用elasticsearch7.10.2,到官网下载对应的linux包,然后上传到服务器文件夹下,cd到文件夹后使用tar命令解压
tar -xvf elasticsearch-7.10.2-linux-x86_64.tar.gz
2.下载JDK
详细步骤:https://www.cnblogs.com/Studywith/p/17255339.html
这个版本依赖于JDK11,因为后面项目的需求选择了JDK16,(当下载新的JDK版本时,linux的JDK自动切换为新的版本,也可以在系统文件进行JDK的配置以指定版本),到官网下载后上传,cd到对应文件夹下使用rpm安装
rpm -ivh jdk-16.0.2_linux-x64_bin.rpm
**3.修改ES配置
(1)elasticsearch.yml
(2)jvm.options
这里是因为我的服务器内存太小了,只有2G,而且还跑了MySQL,剩余内存勉勉强强1G
free -h
而elasticsearch的默认运行内存就是1G,导致它不能正常启动
cd /user/es/elasticsearch-7.10.2/bin ./elasticsearch #启动失败 netstat -anp | grep 9200 #查看端口无进程
于是修改jvm.options文件,其中将-Xmx
(堆内存)和-Xms
(初始堆内存)由1g修改为256m(这样会导致es的搜索效率降低,但暂时也没办法了)
cd ../config vim jvm.options
保存后退出尝试启动es,报错不能使用root账户启动:es不允许使用root用户启动,需要创建一个单独的用户用来运行es。
(3)创建es用户
# 创建用户组和用户 groupadd esgroup useradd es -g esgroup -p cq2003 # 更改 elasticsearch-7.10.2 文件夹及内部文件的所属用户及组为设置 chown -R es:esgroup /user/es/elasticsearch-7.10.2 # 切换用户并启动 elasticsearch su es cd /user/es/elasticsearch-7.10.2/bin/ ./elasticsearch
成功启动
es重启应该是可以使用
systemctl 【restart|status|stop】 elasticsearch和
service elasticsearch 【restart|status|stop】
这样的命令来完成的,但是我的不知道为啥不行,就没用,
1.在命令行可以用ctrl+c退出
2.可以使用netstat -anp | grep 9200 监听9200端口然后找到对应PID,再kill PID
3.切换到root账户,reboot重启服务器。。(不推荐)
这里加上-d后缀就可以在后台启动es了
二、ES测试
解决:
1.将9200,9300端口添加到阿里云的安全组,开放端口
2.报错内存权限不足:
参考:https://www.cnblogs.com/brady-wang/p/11307877.html
在 /etc/sysctl.conf文件最后添加一行
vm.max_map_count=262144
3.测试:
访问服务器9200端口,成功
使用curl命令,成功:
ApiPost发送测试创建索引,成功:
Java连接调用查看索引,成功:
快速启动:
su es cd /user/es/elasticsearch-7.10.2/bin ./elasticsearch -d #后台启动
三、导入分词器
同上,只是换成使用tar包
四、项目转移
标签:7.10,启动,--,cd,elasticsearch,ES,es,Centos8 From: https://www.cnblogs.com/Studywith/p/17298749.html