Linux CentOS7上安装ElasticSearch,springboot集成ElasticSearch实战demo

1、Linux centos7安装ElasticSearch

安装ElasticSearch之前要先安装java环境,本节不再赘述java环境搭建。

1、安装包下载

官网地址https://www.elastic.co/cn/downloads/elasticsearch

linux下载命令

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.9.2-linux-aarch64.tar.gz

2、解压文件

tar -xzvf elasticsearch-7.9.2-linux-aarch64.tar.gz

mv elasticsearch-7.9.2-linux-aarch64 elasticsearch-7.9.2

3、修改配置

cd 进入elasticsearch-7.9.2/config目录

编辑配置文件elasticsearch.yml 进行以下修改

vi elasticsearch.yml

如果是集群模式则放开cluster.name,单机模式放开node.name

修改数据存放路径,和日志路径

修改ip访问限制和运行端口,0.0.0.0表示不做限制

修改完保存退出

4、启动服务

进入bin目录cd ../bin

前台启动     ./elasticsearch

后台启动     ./elasticsearch  -d

5、常见错误

5.1 报错1,无法执行java二进制文件

解决办法:自带的jdk执行不了,我们重新下载jdk11

华为仓库https://repo.huaweicloud.com/java/jdk/11.0.1+13/

下载解压后修改配置文件增加如下内容

#配置为我们下载的jdk
export JAVA_HOME=/mysoft/jdk-11.0.1/
export PATH=$JAVA_HOME/bin:$PATH

#添加jdk判断
if [ -x "$JAVA_HOME/bin/java" ]; then
        JAVA="/mysoft/jdk-11.0.1/bin/java"
else
        JAVA=`which java`
fi

5.2 报错二  空间不足

failed; error='Not enough space' (errno=12)

解决办法

修改config目录下的jvm.options

把如下两个值改小

-Xms1g
-Xmx1g

5.3 报错三 xpack.ml.enabled

解决办法:

配置文件elasticsearch.yml中添加xpack.ml.enabled: false

5.4 报错四 ERROR: [2] bootstrap checks failed

解决办法:

切换到root用户修改配置sysctl.conf

vi /etc/sysctl.conf

添加下面配置

vm.max_map_count=655360

并执行命令:sysctl -p

修改config目录下的elasticsearch.yml配置文件,添加如下内容

cluster.initial_master_nodes: ["node-1"]

5.5 错误提示:cluster.name没匹配上

NoNodeAvailableException[None of the configured nodes are available: [{#transport#-1}{AoLA1LkqSEqcD5FE6B2utQ}{127.0.0.1}{127.0.0.1:9300}]

解决方法:

修改config目录下的elasticsearch.yml文件
#cluster.name: my-application
修改为项目里面的cluster.name即可

5.6 错误提示 不能用root启动elasticsearch

解决办法:

创建用户:useradd es

修改密码:passwd es出现以下界面输入密码,确认后再输入

更改文件所有者和所属组

chown -R es:es /mysoft/elasticsearch/elasticsearch-7.9.2

切换账号 :su es

启动服务:

cd /mysoft/elasticsearch/elasticsearch-7.9.2/bin/

./elasticsearch

5.7 springboot和elasticsearch版本兼容问题

具体看springboot引用的spring data elasticsearch版本是多少,本例使用的elasticsearch版本是7.9.2,springboot版本使用2.2.0

其他版本对应如下

查看elasticsearch版本

curl XGET localhost:9200

2、springboot集成elasticsearch实战demo

项目地址:https://github.com/JsonTom888/database/tree/main/springboot_elasticsearch

猜你喜欢

转载自blog.csdn.net/weixin_43073775/article/details/108903691