es加节点会平衡数据吗

es加节点会平衡数据吗,第1张

es加节点会平衡数据。一个集群cluster由一个或者多个节点组成,具有相同的cluster.name,协同工作,分项数据和负载。当有新的节点加入或者删除了一个节点时,集群回感知到并能够平衡数据。es集群会自动做负载均衡,如果我们现在加一个es节点到集群中来的话,es会按照一定的规则将部分shard分配到新的节点上去。

es主节点作用

主节点的主要职责是负责集群层面的相关 *** 作,管理集群变更,如创建或删除索引,跟踪哪些节点是群集的一部分,并决定哪些分片分配给相关的节点。主节点也可以作为数据节点,但稳定的主节点对集群的健康是非常重要的,默认情况下任何一个集群中的节点都有可能被选为主节点。

一、集群搭建

1.前置 *** 作

若克隆已有的es虚拟机,一定要清空一下文件:

2.配置集群,修改elasticsearch.yml

# 配置集群名称,保证每个节点的名称相同,如此就能都处于一个集群之内了

cluster.name: imooc-es-cluster

# 每一个节点的名称,必须不一样

node.name: es-node1

# http端口(使用默认即可)

http.port: 9200

# 主节点,作用主要是用于来管理整个集群,负责创建或删除索引,管理其他非master节点(相当于企业老总)

node.master: true

# 数据节点,用于对文档数据的增删改查

node.data: true

# 集群列表(列出所有的其它服务器ip)

discovery.seed_hosts: ["192.168.1.184", "192.168.1.185", "192.168.1.186"]

# 启动的时候使用一个master节点

cluster.initial_master_nodes: ["es-node1"]

3.可查看剔除注释的配置文件内容

more elasticsearch.yml | grep ^[^#]

4.分别启动各个节点,后查看信息

二、集群脑裂

1.集群脑裂

如果发生网络中断或者服务器宕机,那么集群会有可能被划分为两个部分,各自有自己的master管理,那么这就是脑裂

服务器1原为master,宕机后自己投票为master

2.解决方案

解决实现原理:半数以上的节点同意选举,节点方可成为master

discovery.zen.minimum_master_nodes=(N/2)+1

N为集群中master节点的数量,也就是node.master=true服务节点总数

3.ES7之后无此参数,已交由es自己管理

ES现在是很多系统中不可或缺的一部分,为了在使用时快速的部署一个ES环境,这里记录一下自己的一些 *** 作步骤。

所有的 *** 作都是基于Docker来的,没有装Docker的话请参照 官方文档 安装

采用的ES版本为6.8.13

宿主机系统为Centos 7.8

单机版添加密码验证

集群版使用ssl传输

将下面的内容粘贴到elasticsearch.yml

ES_JAVA_OPTS设置了ES的启动内存,自己按需修改

discovery.type=single-node表示该es为单节点,不加这个的话,你的es健康状态会显示为黄色

根据提示,先输入y,然后输入密码,这里会要求输入多次,主要是需要给好几个系统添加密码,用户默认elastic

至此,单节点的elasticsearch就部署好了,通过elasticsearch head即可连接使用

生成的ssl证书在用户目录certs下 cd ~/certs 即可看到

后续步骤需要在每一台集群服务器上执行

NODE_LIST:配置集群中其他节点的地址,格式为:ip:port,ip2:port2

NODE_NAME:当前节点的name

至此,搭建就完了

我们一般在开发与测试的使用使用的单节点的es,节约资源嘛,而在生产的时候,那肯定就需要上集群了,这时候在开发与测试环境的时候,java的连接配置就会与生产有一些出入

我一般都是用的 spring-boot-starter-data-elasticsearch 搭配 x-pack-transport 来连接

先引入相关的依赖

版本号这东西自己注意下哈,es对这还是挺敏感的

这里主要是通过isCluster这个配置来区分的

如果连接的是集群,由于我们之前为集群配置了一个ssl证书,所以java连接的时候也是需要使用那个证书的,所以会多出来几个配置


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11829322.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-19
下一篇2023-05-19

发表评论

登录后才能评论

评论列表(0条)

    保存