博客
关于我
Centos7安装elastic 6.x(6.8.8)集群(亲测可行)
阅读量:408 次
发布时间:2019-03-05

本文共 2203 字,大约阅读时间需要 7 分钟。

安装Elasticsearch集群

1. 准备工作

在开始安装之前,确保你已经准备好了以下资源:

  • 操作系统:CentOS 7 或者 Ubuntu 18.04+
  • JDK:安装Elasticsearch时需要相应版本的JDK。根据Elasticsearch文档,6.8.8 版本支持 JDK 8。请不要选择过高版本的Elasticsearch,它可能需要更高版本的JDK。
  • 网络:确保各个节点之间可以互相通信,防火墙配置合理。

2. 单节点安装

2.1 安装Elasticsearch

  • 下载合适的版本:访问Elasticsearch官方网站,找到历史版本下载。注意选择支持你的JDK版本的Elasticsearch。
  • 上传并解压:将下载的压缩包上传到目标节点的 /usr/local/es/ 目录,解压。
  • 配置环境变量
    ES_HOME=/usr/local/es/elasticsearch-6.8.8export PATH $PATH:$ES_HOME/bin
  • 创建用户:创建一个名为 es 的用户,并设置密码。
    useradd es && passwd es
  • 权限调整:将解压后的目录授权给 es 用户。
    chown -R es:es /usr/local/es/elasticsearch-6.8.8
  • 启动服务:切换到 es 用户并启动Elasticsearch。
    su - eselasticsearch

    如果启动时出现权限错误,可能需要检查日志文件。

  • 2.2 验证启动

    • 连接到 http://localhost:9200,如果看到响应页面,说明Elasticsearch已经启动成功。
    • 使用 jps 命令查看Elasticsearch进程:
      jps | grep Elasticsearch

    3. 集群搭建

    3.1 准备节点

    • 确保三个节点(node1, node2, node3)都安装了Elasticsearch。
    • 每个节点的用户和权限都保持一致。

    3.2 修改配置文件

  • Elasticsearch配置文件:编辑每个节点的配置文件,添加以下内容:
    cluster.name: my-es-clusternode.name: node1discovery.zen.ping.unicast.hosts: ["node1", "node2", "node3"]network.host: 0.0.0.0discovery.zen.minimum_master_nodes: 2gateway.recover_after_nodes: 3
  • 数据和日志目录:确保每个节点的数据和日志目录存在,并授权给 es 用户。
  • 3.3 拷贝配置和数据

    • elasticsearch-6.8.8 目录从 node1 拷贝到 node2 和 node3。
      scp -r /usr/local/es/elasticsearch-6.8.8 root@node2:/usr/local/es/scp -r /usr/local/es/elasticsearch-6.8.8 root@node3:/usr/local/es/
    • 清理目标节点的旧数据和日志:
      rm -rf /usr/local/es/elasticsearch-6.8.8/data/rm -rf /usr/local/es/elasticsearch-6.8.8/logs/

    3.4 启动集群

  • 授权目标节点
    chown -R es:es /usr/local/es/elasticsearch-6.8.8
  • 逐个节点启动
    su - eselasticsearch -d
  • 验证集群状态
    curl http://node1:9200/_cat/nodes?v

    或者使用Elasticsearch Head插件连接到任意一个节点。

  • 4. 故障排除

    4.1 文件描述符限制

    如果遇到文件描述符不够用的错误,修改系统配置:

  • 打开 /etc/security/limits.conf,添加以下限制:
    * soft nofile 65535* hard nofile 65535
  • 应用修改:
    sysctl -p
  • 4.2 内存和线程限制

  • 打开 /etc/sysctl.conf,添加以下配置:

    vm.max_map_count=262144

    应用修改:

    sysctl -p
  • 修改用户线程限制:

    * soft nproc 4096* hard nproc 4096

    应用修改:

    sysctl -p
  • 4.3 权限问题

    如果启动时出现权限错误,重新授权目录:

    cd /usr/local/eschown -R es:es elasticsearch-6.8.8

    5. 后台启动

    为了更方便管理,可以使用后台启动:

    elasticsearch -d

    6. 常见问题

    6.1 如何关闭Elasticsearch?

    • 使用 Ctrl + C 退出当前会话。
    • 使用 killkill -9 强制终止进程。

    6.2 如何查看进程?

    使用 jps 命令:

    jps | grep Elasticsearch

    6.3 如何后台启动?

    使用命令:

    elasticsearch -d

    6.4 如何设置密码?

    在集群配置完成后,可以通过Elasticsearch Web 界面设置管理员密码。

    转载地址:http://ywdzz.baihongyu.com/

    你可能感兴趣的文章
    Objective-C实现压缩文件夹(附完整源码)
    查看>>
    Objective-C实现双向A*算法(附完整源码)
    查看>>
    Objective-C实现双向广度优先搜索算法(附完整源码)
    查看>>
    Objective-C实现反转字符串算法(附完整源码)
    查看>>
    Objective-C实现向量叉乘(附完整源码)
    查看>>
    Objective-C实现哈希表算法(附完整源码)
    查看>>
    Objective-C实现图书借阅系统(附完整源码)
    查看>>
    Objective-C实现图层混合算法(附完整源码)
    查看>>
    Objective-C实现图片erosion operation侵蚀操作算法(附完整源码)
    查看>>
    Objective-C实现图片的放大缩小(附完整源码)
    查看>>
    Objective-C实现图片腐蚀(附完整源码)
    查看>>
    Objective-C实现图片膨胀(附完整源码)
    查看>>
    Objective-C实现均值滤波(附完整源码)
    查看>>
    Objective-C实现域名转IP(附完整源码)
    查看>>
    Objective-C实现培根密码算法(附完整源码)
    查看>>
    Objective-C实现基于 LIFO的堆栈算法(附完整源码)
    查看>>
    Objective-C实现基于 LinkedList 的添加两个数字的解决方案算法(附完整源码)
    查看>>
    Objective-C实现基于事件对象实现线程同步(附完整源码)
    查看>>
    Objective-C实现基于文件流拷贝文件(附完整源码)
    查看>>
    Objective-C实现基于模板的双向链表(附完整源码)
    查看>>