elasticsearch单机多节点集群搭建

elasticsearch单机多节点集群搭建

elasticsearch7开始不支持单机多节点部署

环境准备

  1. centos服务器两台:10.188.131.247、10.20.148.122

  2. elasticsearch-6.8.23、kibana-6.8.23安装包下载(下载地址:https://www.elastic.co/cn/downloads/past-releases#elasticsearch)

  3. 新增es用户(elasticsearch不能用root用户启动)

    groupadd es
    useradd -g es -m es
    passwd es
    

集群搭建

  1. 集群概览:3个master节点,3个数据节点

    服务器节点名称是否为主节点是否为数据节点
    10.20.148.122node-1truetrue
    10.20.148.122node-2truetrue
    10.20.148.122node-3truetrue
  2. 解压elasticsearch-6.8.23.tar.gz

    tar -zxvf elasticsearch-6.8.23.tar.gz
    mv elasticsearch-6.8.23 elasticsearch
    
  3. 复制为node-1

    cp -r elasticsearch node-1
    # 创建数据储存目录
    cd node-1
    mkdir -p data
    # 创建日志储存目录
    mkdir -p logs
    # 创建归档目录
    mkdir -p es_snapshot
    
  4. 配置elasticsearch.yml(以node-1节点为例)

    vim /home/es/node-1/config/elasticsearch.yml
    

    注意:每个配置项冒号后面需要空一格,否则启动会报错

    #集群的名称,不同的节点通过相同集群名称来组装集群
    cluster.name: es-cluster-122
    #节点名称,每个节点配置不同名称
    node.name: node-1
    #是否主节点
    node.master: true
    #是否数据节点        
    node.data: true
    #单机最大节点数          
    node.max_local_storage_nodes: 3
    #索引数据的存储路径
    path.data: /data2/es/node-1/data
    #日志文件的存储路径
    path.logs: /data2/es/node-1/logs
    #绑定的ip地址
    network.host: 10.20.148.122
    #设置对外服务的http端口,默认为9200
    http.port: 9200
    #设置节点间交互的tcp端口,默认是9300 
    transport.tcp.port: 9300
    transport.tcp.compress: true
    #设置集群中节点的初始列表,可以通过这些节点来自动发现新加入集群的节点
    discovery.zen.ping.unicast.hosts: ["10.20.148.122:9300", "10.20.148.122:9301","10.20.148.122:9302"]
    #防止脑裂现象,如果没有这种设置,遭受网络故障的集群就有可能将集群分成两个独立的集群 - 这将导致数据丢失当节点<=2时设置为1,>2时官方的推荐值是(N/2)+1
    discovery.zen.minimum_master_nodes: 2
    #启动时锁定内存,设置为true来锁住内存。因为内存交换到磁盘对服务器性能来说是致命的,当jvm开始swapping时es的效率会降低,所以要保证它不swap
    bootstrap.memory_lock: true
    bootstrap.system_call_filter: false
    #========使用head插件的时候需要添加这3个配置========
    http.cors.enabled: true
    http.cors.allow-origin: "*"
    http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type
    #action.destructive_requires_name: true
    #防止同一个shard的主副本存在同一个物理机上
    cluster.routing.allocation.same_shard.host: true
    #es 归档仓库路径
    path.repo: ["/data2/es/node-1/es_snapshot"]
    thread_pool.write.queue_size: 8192
    
  5. 创建node-2、node3节点

    cp -r node-1 node-2
    cp -r node-1 node-3
    

    node-2,node-3节点配置与node-1类似,修改node.name、path.data、path.log、http.port、transport.tcp.port、path.repo等配置为对应值即可
    在这里插入图片描述

  6. 如果内存空间不足,需修改jvm.options中配置

    vim /home/es/node-1/config/jvm.options 
    #默认是1g官方建议对jvm进行一些修改,不然很容易出现OOM,参考官网改参数配置最好不要超过内存的50% 
    -Xms750m
    -Xmx750m
    
  7. 启动各个节点

    #!/bin/bash
    WORKDIR=$(dirname $0)
    
    nohup $WORKDIR/node-1/bin/elasticsearch -d 2>&1 &
    nohup $WORKDIR/node-2/bin/elasticsearch -d 2>&1 &
    nohup $WORKDIR/node-3/bin/elasticsearch -d 2>&1 &
    

    如果出现

    OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
    

    解决办法是修改jvm.options文件配置vim /home/es/node-1/config/jvm.options,将

    -XX:+UseConcMarkSweepGC 改为 -XX:+UseG1GC
    
  8. 查看节点情况

    curl -XGET 'http://10.20.148.122:9200/_cat/nodes?pretty'
    curl -XGET 'http://10.20.148.122:9200/_cat/health?v'
    

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DbIlqE9g-1663591872587)(/Users/wuxiaojun/Library/Application Support/typora-user-images/image-20220919202311897.png)]

kibana可视化平台

  1. 解压kibana-6.8.23-linux-x86_64.tar.gz

    tar -zxvf kibana-6.8.23-linux-x86_64.tar.gz
    mv kibana-6.8.23-linux-x86_64.tar.gz kibana
    
  2. 配置kibana.yml

    cd kibana/config/
    vim kibana.yml
    # 修改端口
    server.port: 5601
    # 修改IP
    server.host: "10.188.131.247"
    # 修改监控的es集群地址
    elasticsearch.hosts: ["http://10.20.148.122:9200"]
    
  3. 启动

    cd kibana/bin/
    nohup ./kibana &
    
    # 查看进程
    lsof -i:5601/netstat -tunlp|grep 5601
    

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qAVl6JwC-1663591872587)(/Users/wuxiaojun/Library/Application Support/typora-user-images/image-20220919205041890.png)]

  4. 可视化

    http://10.188.131.247:5601/
    

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZDe4rGSi-1663591872587)(/Users/wuxiaojun/Library/Application Support/typora-user-images/image-20220919203328652.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kp3BKjkK-1663591872588)(/Users/wuxiaojun/Library/Application Support/typora-user-images/image-20220919203405283.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-p1qwAlMS-1663591872588)(/Users/wuxiaojun/Library/Application Support/typora-user-images/image-20220919203526897.png)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值