当前位置: 首页 > 网络应用技术

如何构建Elasticsearch集群?

时间:2023-03-08 13:47:43 网络应用技术

  在三个服务器上设置群集。每个服务器都用作节点。该信息如下表所示。

  Elasticsearch是一个基于Java开发的Java程序。它在JVM(Java Virtual Machine)中运行。因此,第一步是安装JDK。

  三个服务器上安装的JDK版本如下:

  到ES https://www.lastic.co/cn/lasticsearch/的官方网站,您可以下载最新版本。本文安装在版本7.1.1。&EMSP中; 将Elasticsearch-7.1.1-linux-x86_64.tar.gz文件放置到三个服务器的用户目录,并解压缩:

  数据文件将随着系统运行而迅速增长,因此默认日志文件的路径和数据文件无法满足我们的需求。然后,手动创建日志和数据文件路径可用于使用NFS等。以促进未来的管理和扩展。由于测试服务器资源有限,因此在 /HOME /ESTESTUSER下创建了ES数据文件夹ESDATA和日志文件夹ESLOGS三个服务器的路径。

  ES安装完成后,在配置路径下将生成许多文件,如下所示:

  以下是主要配置文件:

  ES配置文件/home/estuser/7.1.1/config/elasticsearch.yml在ES配置文件/home/home/estestuser/estilastilateserchlateserch.yml上修改节点1(10.201.42.9)。

  ES配置文件/home/estuser/7.1.1/config/elasticsearch.yml在ES配置文件/home/home/estestuser/estistustilsestlastilasticserch.yml上修改节点2(10.201.42.19)是以下内容:以下内容:

  ES配置文件/home/estuser/7.1.1/config/elasticsearch.yml在ES配置文件/home/estestuser/estistustilsestlastilasticserch.yml上修改节点3(10.201.42.37)是以下内容:以下内容:

  由于Elasticsearch是由Java开发的,因此它可以通过/home/estedstuser/elasticsearch-7.1.1/config/jvm.options配置文件设置JVM相关的配置。

  但是,仍然有两个最重要的-XMX1G和-XMS1G,用于指定JV的最大堆和最小堆叠的内存大小。服务器的大小为8G,在此处设置了1G它太小,它将导致Elasticsearch立即停止,并且会减慢系统本身。

  Elasticsearch的相关配置基本上已经完成,并且需要在下面启动Elasticsearch群集。根据安全性考虑,Elasticsearch不允许使用root用户启动,因此使用普通的用户eststuser来启动Elasticsearch cluster。

  Elasticsearch的命令都在BIN路径下,并尝试在节点1启动Elasticsearch,并且命令如下。

  该启动不成功,检查Elasticsearch的JVM配置,并发现垃圾回收配置是concmarkSweepGC算法。信息如下所示:

  检查服务器JDK使用的垃圾回收算法信息。结果如下:

  该信息显示服务器上的JDK版本使用ParallelGC算法修改/home/estedsstuser/lasticsearch-7.1.1/config/jvm.options File。修改废物回收算法作为当前的JDK回收算法:

  修改完成后,尝试再次在节点1上启动ES。结果报告。具体信息如下:

  核心错误提示是:

  = 262144或其他适当的值。保存后,执行以下操作以使参数立即生效:

  使用root用户权限分别在节点2和节点3上执行vim /etc/sysctl.conf和sysctl -p操作,并修改VM.MAX_MAP_COUNT = 655360。

  在三个节点完成修改操作后,切换回普通用户,然后尝试再次在节点1上启动ES。结果报告。具体信息如下:

  edit/etc/security/limits.conf,添加以下内容:

  修改后需要注册此文件才能生效。登录后使用和查看参数。

  在三个节点上完成修改操作后,切换回普通用户。尝试从节点1开始ES,成功启动,信息如下:

  节点1的ES启动已成功启动,但是当前的节点2和节点3尚未启动,因此暂时没有群集。在节点1中启动ES后台,并且操作如下:

  验证是否成功开始并执行以下操作:

  出现上述信息,表明该启动成功。依次bin/elasticsearch -d操作依次启动es.in es.in es.in eS log of节点1,您可以看到群集的成功形成。

  目前,访问ES群集不需要用户安全认证,并且在生产环境中不安全。要将用户安全身份验证功能添加到群集中,请参阅下一个博客“ Elasticsearch Cluster添加用户安全认证功能(设置访问密码)”。