虚拟机环境 centos7Elasticsearch6.7.1
cluster.name: ywf-es

服务器 node.name node.master node.data
192.168.111.128 node-1 true true
192.168.111.129 node-2 true true
192.168.111.130 node-3 true true

ES安装

  1. # 下载地址 https://www.elastic.co/cn/downloads/past-releases#elasticsearch
  2. # 创建目录
  3. mkdir /opt/elk
  4. # 解压到/opt/elk
  5. tar -zxvf elasticsearch-6.7.1.tar.gz
  6. # 重命名
  7. mv elasticsearch-6.7.1 es

创建目录

  1. cd /opt/elk/es
  2. # 创建data目录 存放数据
  3. mkdir data
  4. # 创建logs目录 存放日志
  5. mkdir logs

修改elasticsearch配置文件

  • vim /opt/elk/es/config/elasticsearch.yml
    1. #集群的名称
    2. cluster.name: ywf-es
    3. #节点名称,其余两个节点分别为node-2 和node-3
    4. node.name: node-1
    5. #指定该节点是否有资格被选举成为master节点,默认是true,es是默认集群中的第一台机器为master,如果这台机挂了就会重新选举master
    6. node.master: true
    7. #允许该节点存储数据(默认开启)
    8. node.data: true
    9. #索引数据的存储路径
    10. path.data: /opt/elk/es/data
    11. #日志文件的存储路径
    12. path.logs: /opt/elk/es/logs
    13. #设置为true来锁住内存。因为内存交换到磁盘对服务器性能来说是致命的,当jvm开始swapping时es的效率会降低,所以要保证它不swap
    14. bootstrap.memory_lock: false
    15. #绑定的ip地址
    16. network.host: 192.168.111.128
    17. #设置对外服务的http端口,默认为9200
    18. http.port: 9200
    19. # 设置节点间交互的tcp端口,默认是9300
    20. transport.tcp.port: 9300
    21. #Elasticsearch将绑定到可用的环回地址,并将扫描端口9300到9305以尝试连接到运行在同一台服务器上的其他节点。
    22. #这提供了自动集群体验,而无需进行任何配置。数组设置或逗号分隔的设置。每个值的形式应该是host:port或host
    23. #(如果没有设置,port默认设置会transport.profiles.default.port 回落到transport.tcp.port)。
    24. #请注意,IPv6主机必须放在括号内。默认为127.0.0.1, [::1]
    25. discovery.zen.ping.unicast.hosts: ["192.168.111.128:9300", "192.168.111.129:9300", "192.168.111.130:9300"]
    26. #如果没有这种设置,遭受网络故障的集群就有可能将集群分成两个独立的集群 - 分裂的大脑 - 这将导致数据丢失
    27. discovery.zen.minimum_master_nodes: 3

    调整jvm内存

    1. vim /opt/elk/es/config/jvm.options
    2. #默认是1g官方建议对jvm进行一些修改,不然很容易出现OOM,参考官网改参数配置最好不要超过内存的50%
    3. -Xms512m
    4. -Xmx512m

    修改limits.conf

    ``` vim /etc/security/limits.conf

    添加如下内容,保存退出

    es soft nofile 65536 es hard nofile 65536
  • soft nofile 65535
  • hard nofile 65535
  • soft nproc 4096
  • hard nproc 4096
    1. <a name="06086768"></a>
    2. ### 修改sysctl.conf
    vim /etc/sysctl.conf vm.max_map_count=655360
    <a name="91915e6d"></a>
    ### 执行sysctl -p
    
    sysctl -p
    <a name="88c1fe80"></a>
    ### 拷贝到其他服务器
    
    scp -r /opt/elk/es root@192.168.111.129:/opt/elk scp -r /opt/elk/es root@192.168.111.130:/opt/elk
    ```
    vim /opt/elk/es/config/elasticsearch.yml
    
    修改elasticsearch配置文件
    node.name分别为node-2node-3
    network.host分别为192.168.111.129、192.168.111.130

    建立用户并授权

    #(es不能用root运行) 
    #添加用户
    useradd es
    #赋予文件夹权限
    chown -R es:es /opt/elk/es
    

    启动应用

    # 切换用户为es
    su es
    bin/elasticsearch -d
    

    验证

    浏览器访问
    http://192.168.111.128:9200/
    http://192.168.111.129:9200/
    http://192.168.111.130:9200/
    es集群搭建 - 图1