# elasticsearch集群搭建

> 来源：梦飞idc云平台 | 原文：https://www.mfisp.com/20970.html | 发布：2023-06-02 | 更新：2023-06-02 | 分类：建站教程

上传安装包

 

上传elasticsearch-7.16.3-x86_64.rpm安装包到安装目录下/install；三台服务器一样的操作

 

es环境是需要java环境的，如果没有安装jdk，还需要额外安装，同样上传jdk-8u331-linux-x86.rpm到/install目录  
安装elasticsearch

 

进入/install目录，执行rpm命令  
安装jdk  
rpm -ivh jdk-8u331-linux-x86.rpm  
安装es  
rpm -ivh elasticsearch-7.16.3-x86_64.rpm

 

通过rpm安装会很快的安装成功，不需要额外的操作，至此已经安装成功。三台服务器是一样的操作，这样每台服务器上就是一个单机版的elasticsearch。

 

## 创建存储目录

 

#创建数据存储目录  
mkdir -p /data/elasticsearch/esdata  
#设置目录权限为elasticsear用户  
chown -R elasticsearch:elasticsearch /data/elasticsearch/esdata  
#创建日志存储目录  
mkdir -p /data/elasticsearch/eslog  
#设置目录权限为elasticsear用户  
chown -R elasticsearch:elasticsearch /data/elasticsearch/eslog

 

三台服务器一样的操作

 

## 集群配置es

 

## 集群配置

 

编辑elasticsearch.yml文件,三台服务器一样的操作

 

vim /etc/elasticsearch/elasticsearch.yml

 

# 这里修改集群的名字，如果要想搭建集群，所有集群中的每个节点名字都必须一样  
cluster.name: my-es-cluster  
# 每个集群中都有节点，这里设置每个节点的名字，节点与节点的名字必须不一样  
node.name: node-1  
# 这里修改为每台节点数据存放的目录  
path.data: /etc/elasticsearch/esdata  
# 这里修改为每台节点日志的存放目录  
path.logs: /etc/elasticsearch/eslog  
# 这一行改成 0.0.0.0 意思是允许所有节点访问  
network.host: 0.0.0.0  
# 配置集群节点集合  
discovery.seed_hosts: ["192.168.1.100", "192.168.1.101", "192.168.1.102"]  
# 集群选举设置  
cluster.initial_master_nodes: ["node-1", "node-2", "node-3"]  
# 开启跨域访问  
http.cors.enabled: true  
http.cors.allow-origin: "*"  
#开启密码认证  
xpack.security.enabled: true  
#开启ssl认证  
xpack.security.transport.ssl.enabled: true  
xpack.security.transport.ssl.verification_mode: certificate  
#证书的位置  
xpack.security.transport.ssl.keystore.path: /etc/elasticsearch/elastic-certificates.p12  
xpack.security.transport.ssl.truststore.path: /etc/elasticsearch/elastic-certificates.p12

 

## JVM配置

 

由于 Elasticsearch 是依赖Java，所以可以通过 /etc/elasticsearch/jvm.options 配置文件来设定 JVM 的相关配置。如果没有特殊需求按默认即可。  
不过其中还是有两项最重要的 -Xmx4g 与 -Xms4g，用于指定 JVM 的最大堆和最小堆内存大小。服务器内存大小为 8G，此处设置 1G，也合适。如果太小会导致 Elasticsearch 刚刚启动就立刻停止，太大会拖慢系统本身。

 

## 生成TLS和身份认证

 

在节点1的es的安装目录bin目录（/usr/share/elasticsearch/bin）下执行如下命令，生成elastic-certificates.p12文件，复制该文件到其他俩个节点。

 

./elasticsearch-certutil cert -out /etc/elasticsearch/elastic-certificates.p12 -pass ""

 

#注意上面生成文件的所属组,修改为elasticsarch  
chown elasticsearch:elasticsearch /etc/elasticsearch/elastic-certificates.p12

 

## 创建集群密码

 

创建集群密码时，需要依次启动三台服务器，不启动集群添加密码的操作执行不了。

 

[root@es-1 bin]$ ./elasticsearch-setup-passwords interactive  
Initiating the setup of passwords for reserved users elastic,apm_system,kibana,logstash_system,beats_system,remote_monitoring_user.  
You will be prompted to enter passwords as the process progresses.  
Please confirm that you would like to continue [y/N]y

 

Enter password for [elastic]:   
Reenter password for [elastic]:   
Enter password for [apm_system]:   
Reenter password for [apm_system]:   
Enter password for [kibana]:   
Reenter password for [kibana]:   
Enter password for [logstash_system]:   
Reenter password for [logstash_system]:   
Enter password for [beats_system]:   
Reenter password for [beats_system]:   
Enter password for [remote_monitoring_user]:   
Reenter password for [remote_monitoring_user]:   
Changed password for user [apm_system]  
Changed password for user [kibana]  
Changed password for user [logstash_system]  
Changed password for user [beats_system]  
Changed password for user [remote_monitoring_user]  
Changed password for user [elastic]  
[root@es-1 bin]$   
#为上面所有的用户设置相同的密码  
#生成密码后，可以通过，curl -XGET http://localhost:9200/_cat/indices?v -u elastic:密码 查看es中的索引，会发现生成了一个.security-7的索引，该索引存在设置的密码就生效了，如果不小心把该索引删除，之前设置的密码就认证失败了，需要重新设置密码

---
本页由 梦飞idc云平台（https://www.mfisp.com）提供。站点导航见 https://www.mfisp.com/llms.txt
