0%

Elasticsearch集群

单台机器的处理能力是有限的,如果想要增加系统的吞吐能力,只能增加多台机器,多台机器就构成了集群,每台机器叫做集群的一个节点。

一、概念

      Elasticsearch的主旨是随时可用和按需扩容,而扩容可以通过购买性能更强大(垂直扩容)或者数量更多的服务器(水平扩容)来实现。虽然Elasticsearch可以获益于更强大的硬件设备,但是垂直扩容是有极限的。Elasticsearch真正的扩容能力是来自于水平扩容—​为集群添加更多的节点,并且将负载压力和稳定性分散到这些节点中。

根据节点属性的不同,可分为以下几种:

  • Master-eligible node
  • Data node
  • Ingest node
  • Remote-eligible node
  • Machine learning node
  • Transform node

二、使用

  1. 启动方式

    • 配置文件方式(单机多节点方式实现)

      • 复制多份elasticsearch安装目录,可以端口号来去区分
      • 分别修改配置elasticsearch.yml
      1
      2
      3
      #cluster.name: my-application
      node.name: node-9200/9201/9202
      http.port: 9200/9201/9202
      • 依次启动多个节点(首先启动的节点为主节点)
    • 命令行模式(同一个目录下执行即可)

    1
    2
    3
    bin/elasticsearch -E node.name=node9200 -E cluster.name=singleTest -E path.data=data9200 -d
    bin/elasticsearch -E node.name=node9201 -E cluster.name=singleTest -E path.data=data9201 -d
    bin/elasticsearch -E node.name=node9202 -E cluster.name=singleTest -E path.data=data9202 -d
  2. 查看http://localhost:9200/_cat/health?v

    • epoch:161848663
    • timestamp:11:37:19
    • cluster:singleTest
    • status:green
    • node.total:3
    • node.data:3
    • shards:0
    • pri:0
    • relo:0
    • init:0
    • unassign:0
    • pending_tasks:0
    • max_task_wait_time:-
    • active_shards_percent:100.0%
  3. 安装集群监控工具cerebro

    • 下载cerebro-0.9.4.tgz文件
    • 解压tar -zxvf cerebro-0.9.4.tgz
    • 切换目录cd cerebro-0.9.4
    • 启动./bin/cerebro -Dhttp.port=8080
    • 访问http://localhost:8080/,输入框输入http://localhost:9200,Connect

三、参考

  1. 参考一
  2. 参考二
  3. 参考三
  4. 参考四
  5. 参考五