搭建Elastcsearch集群(7.7版本)

  1. 将在官网下载的rpm包上传到系统中
  2. ssh登录系统,然后执行yum -y localinstall elasticsearch-7.7.0-x86_64.rpm
  3. 配置/etc/elasticsearch/elasticsearch.yml配置文件如下内容。
[root@localhost ~]# egrep -v "#|^$" /etc/elasticsearch/elasticsearch.yml   
cluster.name: zduozhu-elk
node.name: elk1
path.data: /elk/data
path.logs: /elk/logs
bootstrap.memory_lock: true
network.host: 192.168.130.185
http.port: 9200
discovery.seed_hosts: ["192.168.130.185", "192.168.130.186"]
cluster.initial_master_nodes: ["elk1", "elk2”]

参数名称

参数说明

cluster.name

集群名称,相同名称为一个集群

node.name

节点名称,集群模式下每个节点名称唯一

node.master

当前节点是否可以被选举为master节点,是:true、否:false

node.data

当前节点是否用于存储数据,是:true、否:false

path.data

索引数据存放的位置

path.logs

日志文件存放的位置

bootstrap.memory_lock

需求锁住物理内存,是:true、否:false

bootstrap.system_call_filter

SecComp检测,是:true、否:false

network.host

监听地址,用于访问该es

network.publish_host

可设置成内网ip,用于集群内各机器间通信

http.port

es对外提供的http端口,默认 9200

transport.tcp.port

TCP的默认监听端口,默认 9300

discovery.seed_hosts

es7.x 之后新增的配置,写入候选主节点的设备地址,在开启服务后可以被选为主节点

cluster.initial_master_nodes

es7.x 之后新增的配置,初始化一个新的集群时需要此配置来选举master

http.cors.enabled

是否支持跨域,是:true,在使用head插件时需要此配置

http.cors.allow-origin

“*” 表示支持所有域名

  1. vim /usr/lib/systemd/system/elasticsearch.service打开这个配置文件新增一条配置内容,此内容是涉及内存使用限制,配置内容及位置如下
    LimitMEMLOCK=infinity
  2. centos7 Rocky系统_运维


  3. 执行systemctl daemon-reload 加载配置.
  4. 执行vim /etc/elasticsearch/jvm.options 修改配置文件内容如下。此配置文件用于修改es的最大内存限制和最小内存限制,建议两个值设置为相同值。
  5. 创建数据目录和日志目录mkdir -p /elk/{data,logs}
  6. 授权目录权限给elasticsearch用户chown -R elasticsearch:elasticsearch /elk/
  7. 启动systemctl start elasticsearch可看到端口占用及对应目录下的日志文件。
  8. 执行curl 192.168.130.185:9200 确认运行正常
  9. 至此130.185节点安装完毕,下面开始安装另外一台
  10. 第二台130.186环境安装方法相同,主要要注意/etc/elasticsearch/elasticsearch.yml中的节点名称即可。
  11. 两台安装完毕后在任意节点上执行curl http://192.168.130.185:9200/_cluster/health?pretty=true查看集群是不是green状态
{
  "cluster_name" : "zduozhu-elk",
  "status" : "green",
  "timed_out" : false,
  "number_of_nodes" : 2,
  "number_of_data_nodes" : 2,
  "active_primary_shards" : 0,
  "active_shards" : 0,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 0,
  "delayed_unassigned_shards" : 0,
  "number_of_pending_tasks" : 0,
  "number_of_in_flight_fetch" : 0,
  "task_max_waiting_in_queue_millis" : 0,
  "active_shards_percent_as_number" : 100.0
}
  1. 执行执行 curl http://192.168.130.185:9200/_cat/health
    查看接口状态如下
    1590385456 05:44:16 zduozhu-elk green 2 2 0 0 0 0 0 0 - 100.0%