zoukankan      html  css  js  c++  java
  • 搭建 ElasticSearch 2.4.6分布式集群

    Elasticsearch集群中有的节点一般有三种角色:master node、data node和client node。

    1:master node:master几点主要用于元数据(metadata)的处理,比如索引的新增、删除、分片分配等。
    2:data node:data 节点上保存了数据分片。它负责数据相关操作,比如分片的 CRUD,以及搜索和整合操作。这些操作都比较消耗 CPU、内存和 I/O 资源;
    3:client node:client 节点起到路由请求的作用,实际上可以看做负载均衡器。( 对于没有很多请求的业务,client node可以不加,master和data足矣)
    

    选取10.90.4.9这台机器做为client node,elasticsearch.yml中的配置如下:

    # 集群的名字,免得跟别人的集群混在一起  
    cluster.name: ucas
    # 节点名字  
    node.name: node-09
    node.master: true
    node.data: false
    # 修改一下ES的监听地址,这样别的机器也可以访问  
    network.host: 0.0.0.0
    discovery.zen.ping.unicast.hosts: ["10.90.4.9"]
    discovery.zen.ping.multicast.enabled: true
    

    启动10.90.4.9上的es服务器,现在只是一个单机集群。
    在10.90.4.8这台机器上配置好同样的ES作为master node,elasticsearch.yml中的配置如下:

    # 集群的名字,免得跟别人的集群混在一起  
    cluster.name: ucas
    # 节点名字 
    node.name: node-08
    node.master: true
    node.data: true
    # 修改一下ES的监听地址,这样别的机器也可以访问  
    network.host: 0.0.0.0
    discovery.zen.ping.unicast.hosts: ["10.90.4.9"]
    discovery.zen.ping.multicast.enabled: true
    

    10.90.4.7作为data node,配置如下:

    # 集群的名字,免得跟别人的集群混在一起  
    cluster.name: ucas
    # 节点名字 
    node.name: node-07
    node.master: false
    node.data: true
    # 修改一下ES的监听地址,这样别的机器也可以访问  
    network.host: 0.0.0.0
    discovery.zen.ping.unicast.hosts: ["10.90.4.9"]
    discovery.zen.ping.multicast.enabled: true
    

    访问http://10.90.4.9:9200/_plugin/head/
    image.png
    如图,node-09为client节点,不存储数据。

    Tips:

    如果想要在一台机器上启动多个节点,步骤如下:

    1:复制一份ELasticsearch的安装包
    2:修改端口,比如一个是9200,一个是9205
    3:删除data目录下的数据(如果是新解压的安装包就不必了)

    建议或者问题欢迎留言。

  • 相关阅读:
    .net持续集成cake篇之使用vs或者vscode来辅助开发cake脚本
    Redis集合类型
    Git如何合并Commit
    Redis列表类型
    Redis散列表类型
    Redis字符串类型
    2. 引用计数法(Reference Counting)
    调皮的控制台
    Python str与bytes之间的转换
    安全速查
  • 原文地址:https://www.cnblogs.com/zhousiwei/p/10625690.html
Copyright © 2011-2022 走看看