Ubuntu20.04.4系统下安装部署elasticsearch集群

328 阅读3分钟

Ubuntu20.04.4系统下安装部署elasticsearch集群

单机版部署

  1. 上传elasticsearch7.6.2版本的二进制包;

  2. 使用命令解压("../serve/"为解压的目标目录):

    tar zxvf elasticsearch-7.6.2-linux-x86_64.tar.gz -C ../serve/
    
  3. 进入到解压目录elasticsearch的bin目录下,启动es命令:

    ./elasticsearch
    
  4. 解决es使用root用户启动报错问题:在这里插入图片描述

    #创建用户组
    groupadd es
    #创建用户并将用户添加到用户组中
    useradd es -g es
    #修改es文件夹的权限为es用户组中的es用户
    chown -Rf es:es /home/serve/elasticsearch-7.6.2/
    
  5. 切换为es用户并启动es服务:

    • 切换用户出现$符号是因为没有修改/etc/passwd配置文件:在这里插入图片描述
    #退出切换用户
    exit
    
    • 修改/etc/passwd配置文件: 在这里插入图片描述

    • 切换为es用户:su es

  6. 启动es服务:

    #启动服务,进入es的bin目录下执行
    ./elasticsearch
    #查看es是否启动成功
    ps -ef|grep elsaticseach
    

在这里插入图片描述

  1. 如果es启动提示jdk版本过低请自行百度;

  2. 设置es远程访问,修改config/elasticsearch.yml配置文件

在这里插入图片描述

  1. 启动es报错,解决报错问题:

    在这里插入图片描述

    1. 第一个报错问题解决,修改/etc/sysctl.conf配置文件添加以下代码,需要切换为root用户

      在这里插入图片描述

    2. 保存修改的配置后执行以下命令刷新配置:

      在这里插入图片描述

    3. 第二个报错问题解决,修改config/elasticsearch.yml配置文件:

      1. discovery.send_hosts:集群发现配置,提供集群中符合主机要求的节点的列表,每个值的格式为host:port活host没其中port默认为transport.profiles.default.port

      2. discovery.seed_providers: 以文件的方式提供主机列表,可以动态修改,而不用重启节点(容器化环境适用,docker)

      3. cluster,initial_master_nodes: 指定可以成为 master 的所有节点的name 或者ip,这些配置将会在第-次选举中进行计算

      4. 修改配置文件添加以下代码: 在这里插入图片描述

  2. 去到es的bin目录下启动;

  3. 使用浏览器访问http://es服务器ip:9200发现启动成功并返回以下信息:

    在这里插入图片描述

  4. 解决jvm警告信息:在这里插入图片描述

    1. 修改/config/jvm.options配置文件为 8-13:-XX:+UseG1GC

      在这里插入图片描述

  5. 后台启动es服务:./elasticsearch -d

集群部署

  1. 集群安装部署与单机版部署的区别在于 elaticsearch.yml 配置文件不同,按照单机版部署教程安装多个elasticsearch服务即可,详情查看第四条;

  2. 使用命令解压("../serve/"为解压的目标目录);

    tar zxvf elasticsearch-7.6.2-linux-x86_64.tar.gz -C ../serve/
    
  3. 修改/config/elaticsearch.yml配置文件,添加以下配置:

    #配置跨域请求配置(为了让类似head的第三方插件可以请求es)
    http.cors.enabled: true
    http.cors.allow-origin: "*"
    
    #集群发现配置
    
    discovert.seed_hosts: ["192.168.44.129","192.168.44.129","192.168.44.129"]
    cluster.initial_master_nodes: ["node-1","node-2","node-3"]
    discovery.zen.ping_timeout: 60s
    

head插件安装

  1. 在elasticsearch安装目录下创建一个head文件夹;

    mkdir head
    
  2. 进入head文件夹,执行以下命令拉取head插件:

    git clone https://github.com/mobz/elasticsearch-head.git
    
  3. 进入elasticsearch-head文件夹下执行 npm install命令;

  4. 使用 npm run start命令启动head插件,访问http://ip:9100查看是否启动成功;

z/elasticsearch-head.git


3. 进入elasticsearch-head文件夹下执行 `npm install`命令;

4. 使用 `npm run start`命令启动head插件,访问http://ip:9100查看是否启动成功;