背景介绍
有个业务场景需要安装 Elasticsearch 8.13.0,找了很多散的知识点,本篇文章做记录汇总
安装包准备
bash
# 进入准备路径
cd /home/lib/
# 下载安装包
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.13.0-linux-x86_64.tar.gz
# 解压安装包
sudo tar -xzf elasticsearch-8.13.0-linux-x86_64.tar.gz
这个时候就会多出一个文件夹 /home/lib/elasticsearch-8.13.0
修改配置
修改/home/lib/elasticsearch-8.13.0/config/elasticsearch.yml文件
在文件前添加
bash
# 配置静态库的路径,这个文件自定义,一般来说自己创建一个
path.data: /var/lib/elasticsearch8130
# 配置日志文件的路径,这个文件也是自定义,一般来说自己创建一个
path.logs: /var/log/elasticsearch8130
# 群集名称
cluster.name: exceptionless
action.destructive_requires_name: false
action.auto_create_index: .security,.monitoring*,.watches,.triggered_watches,.watcher-history*
bootstrap.memory_lock: false
# 加上这个配置之后,非本机可以访问
network.host: 0.0.0.0
# 端口号,一般来说,默认9200
http.port: 9200
# 节点名称
node.name: node-1
启动Elasticsearch
我们直接导航到es文件夹目录
bash
# 导航目录
cd /home/lib/elasticsearch-8.13.0/
# 手动运行程序
./bin/elasticsearch
# 自动运行程序,后台运行
./bin/elasticsearch -d
如果一切顺利的话,使用访问9200可以看到能够当前页面
问题排查
es提供了很简洁的安装方式,但在安装过程时偶尔会报几个错误。但大多都是因为用户权限相关
这里提供几个常用问题说明
1.root用户问题
es默认不支持root用户启用,如果你直接使用root账号启用,会报一个用户的错误。
2.文件夹权限问题
上述yml配置中,有两个文件夹手动创建一下,但如果你是使用root用户创建的,然后使用其他用户启用es会报一个io的权限问题
bash
# 配置静态库的路径,这个文件自定义,一般来说自己创建一个
path.data: /var/lib/elasticsearch8130
# 配置日志文件的路径,这个文件也是自定义,一般来说自己创建一个
path.logs: /var/log/elasticsearch8130
可以使用命令,将文件夹的所有人指向到你启用es 的用户
bash
chown -R 【用户名】 /home/lib/elasticsearch-8.13.0
chown -R 【用户名】 /var/lib/elasticsearch8130
chown -R 【用户名】 /var/log/elasticsearch8130