系列文章目录
第一章 aarch64版本elasticsearch7.6.1单机部署及遇到的坑
前言
首先Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口;一般如果仅是本地使用那么只需要下载windows版的安装包即可使用;但是因为实际开发过程中都是在liunx机器上安装;
本文主要介绍liunx下安装aarch64版本elasticsearch7.6.1单机部署及遇到的坑
一、安装步骤
1、首先将下载好的elasticsearch-7.6.1-linux-x86_64.tar.gz的压缩包上传到liunx指定的文件夹下(本人目录为/opt/elasticsearch),需要注意的是目前从Elastic官网下载所需版本7.6.1(下载地址:https://www.elastic.co/cn/downloads/past-releases/elasticsearch-7-6-1)没有明确区分liunx x86和aarch64内核,应该是具备兼容可用
2、将elasticsearch-7.6.1-linux-x86_64.tar.gz解压到当前目录下 由于本人已解压安装 就以下就不做截图展示了 解压命令为:
tar -zxvf elasticsearch-7.6.1-linux-x86_64.tar.gz
3、由于Es不能在root账户下进行启动, 所以我们要创建Es用户 (如需删除所创建账户:userdel -r 用户名称)
3.1用useradd命令创建用户创建用户 命令:sudo adduser els
3.2 用passwd命令为该用户创建密码 命令:sudo passwd els 回车 设置密码
3.3 对该es目录进行授权 命令:sudo chown -R els:els /opt/elasticsearch/elasticsearch-7.8.0
4、另外es存放路径下最好不要有/root路径,我的是/opt/elasticsearch/
切换到els账户下 命令:su els 然后输入刚设置的密码
5、接下来就是各种配置
5.1、jvm.options
Elasticsearch基于Lucene的,而Lucene底层是java实现,因此我们需要配置jvm参数。
编辑jvm.options:视自己内存大小配置
5.2、elasticsearch.yml
执行 vim elasticsearch.yml
5.2.1、修改数据和日志目录
path.data: /opt/elasticsearch/elasticsearch-7.6.1/data # 数据目录位置
path.logs: /opt/elasticsearch/elasticsearch-7.6.1/logs # 日志目录位置
但是我们把data和logs目录修改指向了elasticsearch的安装目录。但是这两个目录并不存在,因此我们需要创建出来。
es根目录下执行命令
mkdir data
mkdir logs
5.2.2、修改绑定的ip
network.host: 0.0.0.0 # 绑定到0.0.0.0,允许任何ip来访问
默认只允许本机访问,修改为0.0.0.0后则可以远程访问
5.2.3、修改添加以下配置
discovery.seed_hosts: ["greatwall-os"] # 在启动此节点时传递要执行发现的主机的初始列表
cluster.initial_master_nodes: ["greatwall-os"] # 使用初始的一组符合主节点条件的节点引导集群
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
xpack.ml.enabled: false
总结
*可能出现的坑
- 当执行 ./elasticsearch 启动es会出现:
问题:linux下java.io.IOException: Cannot run program "/opt/jdk/jre/bin/java": error=13, Permission denied
解决:执行命令: chmod 777 /opt/jdk/jre/bin/java 进行授权