Elasticsearch——分布式特性
  vxNQtvtQlfbi 2023年11月02日 46 0

分布式特性

  • es支持集群模式,是一个分布式系统,其好处主要有两个:
    • 增大系统容量,如内存、磁盘、使得es集群可以支持PB级的数据
    • 提高系统可用性,即使部分节点停止服务,整个集群依然可以正常服务
  • es集群由多个es实例组成
    • 不同集群通过集群名字来区分,可通过cluster.name进行修改,默认为elasticsearch
    • 每个es实例本质上是一个JVM进程,且有自己的名字,通过node.name进行修改

cerebro的安装与运行

cerebro地址:https://github.com/lmenezes/cerebro

下载解压

https://github.com/lmenezes/cerebro/releases

wget https://github.com/lmenezes/cerebro/releases/download/v0.8.1/cerebro-0.8.1.tgz
tar xzf cerebro-0.8.1.tgz

启动

cerebro-0.8.1/bin/cerebro
[info] play.api.Play - Application started (Prod)
[info] p.c.s.AkkaHttpServer - Listening for HTTP on /0:0:0:0:0:0:0:0:9000
  • 指定端口
bin/cerebro -Dhttp.port=8080
  • 配置服务器 非必须:如果经常使用的话,可以先在conf/application.conf中配置好ElasticSearch服务器地址
hosts = [
  {
    host = "http://localhost:9200"
    name = "Some Cluster"
  },
  # Example of host with authentication
  #{
  #  host = "http://some-authenticated-host:9200"
  #  name = "Secured Cluster"
  #  auth = {
  #    username = "username"
  #    password = "secret-password"
  #  }
  #}
]

使用方法

访问cerebro服务 通过上述设定的9000端口访问cerebro服务,页面显示信息如下图所示

只需要输入ElasticSearch的URL并点击connect按钮,成功连接即可显示如下图所示信息。需要注意的是由于cerebro运行在容器中,直接输入localhost:9200即使通过浏览器能够访问也可能无法连接,需要保证的是在cerebro的容器中能够访问到的URL,比如这里使用的本机的IP

点击Connect按钮即可连接成功,连接后可以显示集群信息:

  • 概要信息

  • 节点信息

  • Rest接口

  • 其他功能

启动一个节点

Cluster State

Master Node

创建一个索引

Coordinating Node

Data Node

新增一个节点

提高系统可用性

  • 服务可用性
    • 2个节点的情况下,允许其中1个节点停止服务
  • 数据可用性
    • 引入副本(Replication)解决
    • 每个节点上都有完备的数据

副本 如下图所示,node2上是test_index的副本

增大系统容量

分片

Cluster Health

故障转移

文档分布式存储

脑裂问题

Shard详解

 

参考: https://www.jianshu.com/p/433d821f9667

https://blog.csdn.net/liumiaocn/article/details/98517815

https://www.jianshu.com/p/133f74d4b1e9

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
vxNQtvtQlfbi