Centos安装elasticsearch

最后更新于:2022-09-18 12:14:25

  1. 进入官网
  2. 下载对应版本的安装包,8.x版本对应的java版本是17,7.x对应的版本是8,如果服务器上配置的有jdk,ES会优先访问服务器的jdk,但是如果版本不对,会报错,如果服务器上没有jdk,则会访问自身的jdk。
  3. 将下载好的压缩包上传到服务器目录,进行解压
    tar -zxvf elasticsearch-7.17.6-linux-x86_64.tar.gz
  4. 将压缩包移动到/usr/local目录,并进入目录
    mv elasticsearch-7.17.6 /usr/local/

es-目录介绍

  • bin:可执行文件在里面,运行es的命令就在这个里面,包含了一些脚本文件等
  • config:配置文件目录
  • JDK:java环境
  • lib:依赖的jar,类库
  • logs:日志文件
  • modules:es相关的模块
  • plugins:可以自己开发的插件
  • data:这个目录没有,自己新建一下,后面要用 -> mkdir data,这个作为索引目录

修改核心配置文件-elasticearch.yml

  • 修改集群名称,默认是elasticsearch,虽然目前是单机,但是也会有默认的

  • 为当前的es节点取个名称,名称随意,如果在集群环境中,都要有相应的名字
    file

  • 修改data数据保存地址

  • 修改日志数据保存地址
    file

  • 绑定es网络ip,原理同redis

  • 默认端口号,可以自定义修改
    file

  • 集群节点,名字可以先改成之前的那个节点名称
    file

修改jvm.options参数

默认xms和xmx都是4g,如果内存没这么大,修改一下即可,如果内存足够,可以不做修改
file

添加用户

ES不允许使用root操作es,需要添加用户,否则会抛出异常
file

  • 需要添加新的用户,并赋予对应权限
 useradd esuser
 chown -R esuser:esuser /usr/local/elasticsearch-7.4.2

启动es

./elasticsearch

如果出现如下错误:
file

那么需要切换到root用户下去修改配置如下:

vim /etc/security/limits.conf

在最后添加


* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
vim /etc/sysctl.conf 

在最后添加

vm.max_map_count=262145

sysctl -p 刷新一下

再次启动,访问9200端口
file

停止服务

前台启动,直接ctrl+c 即可
后台启动

./elasticsearch -d

通过lsof -i:9200查询pid,然后使用kill -9 pid 杀掉进程即可
file

端口号意义

9200:Http协议,用于外部通讯

9300:Tcp协议,ES集群之间是通过9300通讯