ElasticSearch 5.2版本集群安装

2017-03-02  本文已影响723人  海盗公爵

服务器环境: CentOS6

  1. jdk 安装
    jdk最低版本为1.8版本,如果服务器中JAVA_HOME的版本低于1.8, 则可安装好jdk1.8之后,在 /bin/elasticsearch 中配置JAVA_HOME

  2. 下载ElasticSearch5.2
    下载地址: https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.2.2.tar.gz
    分别使用的命令如下:
    wget "https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.2.2.tar.gz"
    tar -zxvf elasticsearch-5.2.2.tar.gz

  3. 服务器参数配置
    切换到root用户下
    sysctl -w vm.max_map_count=262144 #定义了一个进程能拥有的最多的内存区域

  4. elasticsearch 配置
    cluster.name: es_test # 同一个集群需要同一个cluster.name
    node.name: es_node_1 # 不同的节点配置不同的node name

    path.data: /data/to/data # es数据存储的目录
    path.logs: /data/to/logs # es日志存储的地方

    bootstart.memory_lock: true # es所占内存锁,防止内存溢出
    bootstrap.system_call_filter: false # Centos6不支持SecComp,而ES5.2.0默认bootstrap.system_call_filter为true

    network 对外暴露的端口

    network.host: 0.0.0.0 # 默认为 192.168.0.1 需要改为0.0.0.0 否则外网访问不到
    http.port: 9200 # 设置对外的http端口

    Discovery 服务发现(用来集群之间互相发现的)

    transport.tcp.port: 9300 #默认的集群间通信的端口号为9300
    discovery.zen.ping.unicast.hosts: ["IP:Port", "IP:PORT", "IP:PORT"] # ip:port 为集群中所有节点的ip和端口号,端口号没有时默认为9300
    discovery.zen.minimum_master_nodes: 2 # 防止脑裂,最好设置为 (master_eligible_nodes / 2) + 1
    discovery.zen.ping_timeout: 10s # master节点选举超时设置

  5. elasticsearch 启动
    在bin目录下使用如下命令: ./elasticsearch
    如果想将其运行在后台: nohup ./elasticsearch &

  6. 查看是否成功运行
    http://localhost:9200/_cat/health?v # 能够成功获取到当前集群情况
    http://localhost:9200/ # 获取当前版本情况

  7. 高级参数设置
    (1) Elasticsearch使用线程池来运行不同的操作,确保Elasticsearch用户可以创建至少为2048个
    ulimit -u 2048
    (2) 线程池设置
    参考文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-threadpool.html
    (3) gateway 主要用来对数据进行持久化,整个集群重启之后可以通过gateway重新恢复数据
    参考文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-gateway.html

  8. 插件安装
    使用 命令进行安装 (注意:elasticsearch-plugin 的java_home 也需要设置为1.8):
    bin/elasticsearch-plugin install [plugin_name]

上一篇 下一篇

猜你喜欢

热点阅读