当前位置:   article > 正文

Linux系统搭建ElasticSearch集群详细教程_linux 部署es

linux 部署es

【前言】ElasticSearch简称es(下文均称为es),是一款由java语言开发的强大且灵活的搜索和分析引擎,本文记录基于es7.17版本的es集群搭建。

一、环境装备

1、准备服务器

本文准备了三台linux服务器,服务器需要互通(可用ping命令检查),下文分别称呼为服务器1服务器2、服务器3

2、es安装包下载

es官网下载对应系统的安装包,选择自己需要的版本。

二、安装及配置es

以下步骤以服务器1为示例

1、上传es安装包到服务器

本文上传路径是/opt/elasticsearch

2、解压

进入es安装目录解压安装包

  1. #执行tar命令解压es安装包,如:
  2. tar -xvzf elasticsearch-7.17.18-linux-x86_64.tar.gz

如图所示解压成功,会生成一个新的解压文件夹

3、新建es用户

由于es安全要求,es不允许使用root命令启动,因此需要新建用户并授权,命令如下

  1. #执行useradd命令增加用户,如
  2. useradd elastic
  3. #执行passwd命令对新用户设置密码,改名了需要输入两次密码
  4. passwd elastic

3.1、对新用户授权

chown -R elastic:elastic /opt/elasticsearch/elasticsearch-7.17.18

使用命令 ll 产看授权是否成功,如图,es解压的目录已授权给elastic用户

4、修改相关配置

4.1、修改elasticsearch.yml

进入es解压目录/config目录下

修改elasticsearch.yml文件,在该文件末尾增加以下内容:

  1. cluster.name: elasticsearch
  2. node.name: node-1
  3. node.master: true
  4. node.data: true
  5. network.host: 你服务器的ip
  6. http.port: 9200
  7. transport.tcp.port: 9300
  8. discovery.zen.ping.unicast.hosts: ["服务器1的ip","服务器2的ip"]
  9. cluster.initial_master_nodes: ["node-1","node-2"]
  10. ingest.geoip.downloader.enabled: false

4.2、修改jvm.options

该步骤非必须,es的内存配置可以在这里修改

请参考自己服务器资源进行配置合适的内存,否则当es启动时服务器容易卡死

5、修改系统相关配置

5.1修改/etc/security/limits.conf

在文件末尾增加以下内容

  1. # 配置 es 用户打开文件最大数(因为es在启动时调用的文件超出普通用户默认打开文件最大数4096,会导致报错)
  2. # 在文件末尾中增加下面内容
  3. es soft nofile 65536
  4. es hard nofile 65536

5.2修改/etc/security/limits.d/20-nproc.conf

在文件末尾增加以下内容,文件不存在就新建该文件

  1. # 每个进程可以打开的文件数限制
  2. es soft nofile 65536
  3. es hard nofile 65536
  4. # 操作系统级别对每个用户创建的进程数的限制
  5. * hard nproc 4096

5.3修改/etc/sysctl.conf

在末尾加入以下内容

  1. # 一个进程可以拥有的虚拟内存区域的数量
  2. vm.max_map_count=655360

然后执行命令重新加载

sysctl -p

5.4其他服务器配置

服务器2、服务器3均按照上述步骤配置,唯一不同的是上述4.1步骤的配置中,node.name需要不同

三、启动es

1、切换用户

  1. #切换到前面步骤新建的用户
  2. su elastic

2、启动

执行./elasticsearch启动es

3、可能遇到的问题

如果启动失败,检查服务器防火墙是否开启以及对应端口是否开放,检查命令及开放命令如下

  1. #启动服务器防火墙
  2. systemctl start firewalld.service
  3. #查看服务器开放的端口命令
  4. firewall-cmd --list-ports
  5. #开放服务器9200和9300端口命令
  6. firewall-cmd --add-port=9200/tcp
  7. firewall-cmd --add-port=9300/tcp

启动成功如图所示

浏览器访问ip:9200如下,表示成功

3、检查集群是否成功

浏览器访问http://ip:9200/_cat/nodes,如下所示则成功

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/492684
推荐阅读
相关标签
  

闽ICP备14008679号