Linux系统安装es详细教程

一、下载es及插件

从下面的网址进行对应es版本的下载https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.15.2-linux-x86_64.tar.gz ,想要不同版本的es只需更换对应的版本号即可。

插件下载地址(ik分词器、pinyin等)es插件下载https://release.infinilabs.com/

二、安装es

因为ES不能root用户启动,需要创建一个账号

1. 先创建elasticsearch用户组,再创建用户名es密码123456的用户

复制代码
//创建elasticsearch用户组
[root@VM-20-12-centos ~]# groupadd elasticsearch
//新增es用户
[root@VM-20-12-centos ~]# useradd  es
//为es用户设置密码
[root@VM-20-12-centos ~]# passwd  es
//如果错了(用户),可以删除再加
[root@VM-20-12-centos ~]# userdel   -r  es

2. 将es用户添加到elasticsearch用户组,并创建es文件夹,并赋予es用户对改文件夹的操作权限

复制代码
[root@VM-20-12-centos ~]# usermod -G elasticsearch es
[root@VM-20-12-centos ~]# mkdir -p /usr/local/es
[root@VM-20-12-centos ~]# chown -R es /usr/local/es

3. 给es设置sudo权限

复制代码
[root@VM-20-12-centos ~]# visudo

# 在root    ALL=(ALL)       ALL一行下面加上
es      ALL=(ALL)       ALL

4. 切换到es用户(es必须用普通用户启动,root启动不了)

复制代码
[root@VM-20-12-centos ~]# su es
[es@VM-20-12-centos root]$

5. 上传各安装包到服务器

6. elasticsearch及插件的安装

复制代码
[es@VM-20-12-centos es]$ tar -zvxf elasticsearch-7.6.1-linux-x86_64.tar.gz

安装IK分词器

先在es文件夹的plugins文件夹下建一个ik插件的文件夹,然后将ik分词器的插件包放到ik文件夹里进行解压,然后重启es即可。

复制代码
[es@VM-20-12-centos es]$ mkdir -p elasticsearch-7.6.1/plugins/ik
[es@VM-20-12-centos es]$ cp elasticsearch-analysis-ik-7.6.1.zip ./elasticsearch-7.6.1/plugins/ik/
[es@VM-20-12-centos es]$ cd ./elasticsearch-7.6.1/plugins/ik/
[es@VM-20-12-centos ik]$ unzip elasticsearch-analysis-ik-7.6.1.zip

7. 修改elasticsearch.yml配置文件

先在系统中新建两个文件夹分别用于存放es数据和日志,我的是在es目录下创建的两个文件data和logs(下面配置中需要)

复制代码
[es@VM-20-12-centos es]$ vim elasticsearch-7.6.1/config/elasticsearch.yml

elasticsearch.xml配置文件

复制代码
# 加入如下配置
cluster.name: myes
#数据存放路径
path.data: /usr/local/es/data
#日志存放路径
path.logs: /usr/local/es/logs
node.name: node-1
#本机IP地址(设置可以访问的ip地址)
network.host: 0.0.0.0
#es暴露对外的端口
http.port: 9200
cluster.initial_master_nodes: ["node-1"]

8. 修改jvm.option配置

复制代码
[es@VM-20-12-centos es]$ vim elasticsearch-7.6.1/config/jvm.options

jvm.options配置文件里的jvm堆内存大小最小设置1g(根据自己的情况设置)

复制代码
-Xms1g
-Xmx1g

9.解决es强依赖jdk问题

由于es和jdk是一个强依赖的关系,所以当我们在新版本的ElasticSearch压缩包中包含有自带的jdk,但是当我们的Linux中已经安装了jdk之后,就会发现启动es的时候优先去找的是Linux中已经装好的jdk,此时如果jdk的版本不一致,就会造成jdk不能正常运行

注:如果Linux服务本来没有配置JDK,则会直接使用ES目录下默认的JDK,反而不会报错。如果Linux安装了JDK,不指定JDK会报错

修改/usr/local/es/elasticsearch-7.6.1/bin下elasticsearch文件。

(1)用vim打开文件

复制代码
vim elasticsearch

(2)在文件中加入下面配置

复制代码
export ES_JAVA_HOME=/usr/local/es/elasticsearch-7.6.1/jdk
export PATH=$ES_JAVA_HOME/bin:$PATH
 
if [ -x "$ES_JAVA_HOME/bin/java" ]; then
        JAVA="/usr/local/es/elasticsearch-7.6.1/jdk/bin/java"
else
        JAVA=`which java`
fi

10. 将普通用户的虚拟内存调大

启动es前需要把虚拟内存调大,不然会报错

max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

复制代码
[es@VM-20-12-centos elasticsearch-7.6.1]$ vim /etc/sysctl.conf

在配置文件中加入

复制代码
vm.max_map_count=262144

然后保存退出,再执行下面的语句,使配置生效

复制代码
sysctl ‐p

11. 退出重新远程连接linux,改了配置之后最好重新连接

12. 用es用户启动es服务

复制代码
[es@VM-20-12-centos elasticsearch-7.6.1]$ ./bin/elasticsearch

访问路径:http://192.168.2.162:9200(自己的虚拟机地址加上端口)

如果访问成功,则启动成功!

但是这样关掉命令窗口就会挂掉,所以可以用后台启动:

复制代码
[es@VM-20-12-centos elasticsearch-7.6.1]$ ./bin/elasticsearch -d
相关推荐
其实防守也摸鱼1 天前
GDB安装与配置(保姆级教程)【Linux、Windows系统】
linux·运维·windows·命令模式·工具·虚拟机·调试
Elastic 中国社区官方博客1 天前
为 Elastic Cloud Serverless 和 Elasticsearch 引入统一的 API 密钥
大数据·运维·elasticsearch·搜索引擎·云原生·serverless
Agent手记1 天前
制造业数字化升级:生产全流程企业级智能体落地解决方案 —— 基于LLM+超自动化全栈架构的智改数转深度实战
运维·ai·架构·自动化
云安全助手1 天前
弹性云服务器+高防IP:让DDoS攻击不再是业务“生死劫”
运维·网络·安全
AC赳赳老秦1 天前
OpenClaw二次开发实战:编写专属办公自动化技能,适配个性化需求
linux·javascript·人工智能·python·django·测试用例·openclaw
深色風信子1 天前
Docker newapi
运维·docker·容器·newapi
mounter6251 天前
【内核新动向】告别物理槽位束缚:深度解析 Linux Virtual Swap Space 机制
linux·内存管理·kernel·swap·virtual swap
handler011 天前
从零实现自动化构建:Linux Makefile 完全指南
linux·c++·笔记·学习·自动化
2023自学中1 天前
i.MX6ULL 板子的完整启动流程图(从上电 → 用户空间)
linux·嵌入式
闫利朋1 天前
Ubuntu 24.04 桌面安装向日葵完整指南
linux·运维·ubuntu