elasticsearch7.6安装教程及启动常见错误解决方法

本文提供了一步步的Elasticsearch 7.6在Linux上的安装教程,包括下载、解压、创建用户组和用户、修改配置文件等步骤,并详细介绍了启动过程中遇到的权限、系统限制等问题的解决方法。
摘要由CSDN通过智能技术生成

elasticsearch就是一个类似数据库用来专门做搜索的一款工具,在大量的搜索条件下,效率很好,可以直接把它当成一个数据库。

1.打开官网 Download Elasticsearch | Elastic,下载历史版本

 这里我选择7.6.1

 然后点击linux sha 下载,我这里采用迅雷下载到本地后,再利用Xftp上传到Linux

 下载之后,我上传到/usr/local/es目录

 

 2. 解压elasticsearch7.6

tar -zxvf elasticsearch-7.6.1-linux-x86_64.tar.gz

 进入elasticsearch7.6的目录

cd /usr/local/es/elasticsearch-7.6.1/bin
./elasticsearch -d

 有错误提示信息:[root@izuf6isbofkgfo4erzjt1az bin]# OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
uncaught exception in thread [main]
java.lang.RuntimeException: can not run elasticsearch as root

  我现在是以root用户执行  ./elasticsearch 的时候,会报错,es不能用root用户运行,需要创建一个用户

3.创建组,再创建用户

创建组:elasticsearch

groupadd elasticsearch

 创建用户并设置密码:python

useradd python

设置密码

passwd python

 

 

用户python 添加到用户组elasticsearch

usermod -G elasticsearch python

#将已有用户添加到指定用户组,作为其附属用户组
# -a 代表append,和 -G 一起使用,将用户添加到新用户组中而不必来开原有的其他用户组
usermod -a -G <用户组名称> <用户名称>

#将已有用户的主用户组改为新的用户组
usermod -g <新的用户组名称> <用户名称>

指定python用户拥有操作elasticsearch这个目录的操作权限 

 chown -R python /usr/local/es/elasticsearch-7.6.1

为了让普通用户有更大的操作权限,我们一般会给普通用户设置sudo权限,给python用户分配sudo权限

visudo

在root    ALL(ALL)    ALL 这一行下面 添加  python  ALL=(ALL)       ALL

 改完保存退出 切换到python用户

su python

 4.先创建两个目录

mkdir -p /usr/local/es/elasticsearch-7.6.1/log
mkdir -p /usr/local/es/elasticsearch-7.6.1/data

 

 进入config目录 cd /usr/local/es/elasticsearch-7.6.1/config

cd /usr/local/es/elasticsearch-7.6.1/config
ll

 

 5.修改elasticsearch.yml

vim elasticsearch.yml

 修改如下信息

1 cluster.name: my-app     集群的名字,可以改一个你自己名字

2 node.name: node-1    

3 network.host:  0.0.0.0  任何地址都可以访问

4 http.port: 9200

5 discovery.seed_hosts: ["172.26.20.184"]  当前IP的信息

6 cluster.initial_master_nodes: ["node-1"]     节点信息,由于我是单机版,就是node-1

然后把下面几行代码放到最后

bootstrap.system_call_filter: false

bootstrap.memory_lock: false

http.cors.enabled: true

http.cors.allow-origin: "*"

 

 改完 :wq   保存退出

6.然后修改jvm.option

cd /usr/local/es/elasticsearch-7.6.1/config
vim jvm.options

 修改,默认是1G,内存大的可以改成2G,我就不改了

-Xms1g
-Xmx1g

 7.修改系统配置,解决进程最大同时打开的文件数

由于使用普通用户来安装,es对服务器的资源要求比较多,包括内存大小、线程数等等,所以我们需要给普通用户解开资源的束缚

        如问题描述:max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536],每个进程最大同时打开文件数太小,可通过下面2个命令查看当前数量

修改vi /etc/security/limits.conf文件,增加配置,用户退出后重新登录生效,注意带* 号

*              soft    nofile          65536
*              hard   nofile          65536

vi /etc/security/limits.conf

8. 普通用户启动线程数限制

问题描述:

max number of threads [3818] for user [es] is too low, increase to at least [4096]

最大线程个数太低。修改配置文件/etc/security/limits.conf,增加配置

*               soft    nproc           4096
*               hard    nproc           4096

 修改后的文件

 9.虚拟内存太小,需要调大虚拟内存

问题描述:

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

修改/etc/sysctl.conf文件,增加配置vm.max_map_count=262144

sudo vi /etc/sysctl.conf

 

保存后,执行 

sudo sysctl -p

 

 10.以上问题解决完成之后,重新连接下Xshell 生效

11.启动ES服务 ,完美成功

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

纬领网络

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>