es集群扩容-新增一个节点

雅冰石 雅冰石     2023-01-19     281

关键词:

Elasticsearch群集是一组具有相同cluster.name属性的节点。当节点加入或离开集群时,集群会自动重新组织自身,以便在可用节点之间均匀分布数据。

ES可实现在线扩集群。

一 实验环境

IP

节点名称

备注

集群名称

192.168.144.246

node-1

集群中现有节点

vcom

192.168.144.247

node-2

192.168.144.248

node-3

192.168.144.250

node-4

要新增的节点

二 实验步骤

这里演示添加一个ES节点到现ES集群里。

2.1 搭建ES单实例

略。

注意只需安装ES软件,但不要启动该ES节点,否则后面会因为集群uuid不一样,而导致无法将该节点加入到集群里。

2.2 配置新添加的ES节点

2.2.1 修改配置文件

2.2.1.1 添加集群名称

cd /usr/local/ElasticSearch/config

vi elasticsearch.yml

确保cluster.name名称和要加入的ES集群里的集群名称一致,这里是vcom:

cluster.name: vcom

2.2.1.2 设置自动发现

修改discovery.zen.ping.unicast.hosts,添加ES集群中其他节点的信息,修改后示例:

discovery.zen.ping.unicast.hosts: ["192.168.144.246","192.168.144.247","192.168.144.248","192.168.144.250"]

 2.2.1.3 修改node.name

确保node.name不能和集群中现有节点重复。

这里将其设置为node-4:

node.name: node-4

2.2.1.4 添加密码认证相关信息

若ES集群原本就没配置密码认证,则可以跳过该步骤,否则,需要在新增节点里也添加下密码认证信息。

/*

前提准备:

#创建相关目录

cd /usr/local/ElasticSearch

mkdir config/certs

#将集群中其中一个节点上的密码认证文件拷贝到新添加服务器上

scp 192.168.144.246:/usr/local/ElasticSearch/config/certs/elastic-certificates.p12 /usr/local/ElasticSearch/config/certs/

#修改密码认证目录的属主为ES用户

chown -R EsUser:EsUser /usr/local/ElasticSearch/config/certs/

*/

#修改配置文件,添加密码认证参数

xpack.security.transport.ssl.verification_mode: certificate

xpack.security.transport.ssl.keystore.path: certs/elastic-certificates.p12

xpack.security.transport.ssl.truststore.path: certs/elastic-certificates.p12

2.2.2 启动新添加的ES节点

systemctl start elasticsearch

确保ES端口启动:

netstat -nltp | grep 端口

2.3 验证

2.3.1 检查集群状态

curl -u elastic:密码 http://192.168.144.246:10412/_cluster/health/

"cluster_name":"vcom","status":"green","timed_out":false,"number_of_nodes":4,"number_of_data_nodes":4,"active_primary_shards":5,"active_shards":10,"relocating_shards":0,"initializing_shards":0,"unassigned_shards":0,"delayed_unassigned_shards":0,"number_of_pending_tasks":0,"number_of_in_flight_fetch":0,"task_max_waiting_in_queue_millis":0,"active_shards_percent_as_number":100.0

看到节点数量由3变为4了。

需要确保status为green。

2.3.2 在新节点上验证下是否能查询数据

 

2.4 配置ES集群现有节点(非必选)

为了方便从配置文件里看出该集群都有哪些节点构成,这里也修改下每个ES节点配置文件中的discovery.zen.ping.unicast.hosts,写上所有节点的ip。

2.4.1 修改配置文件

cd /usr/local/ElasticSearch/config

vi elasticsearch.yml

添加新增后节点的ip,添加后:

--本篇文章参考了

Add and remove nodes in your cluster | Elasticsearch Guide [7.15] | Elastic

es7.6.2集群迁移(从一套es集群迁移数据到另一套集群)(代码片段)

有时有需要从ES集群中去除多个节点的需求,比如迁移一套ES集群到另外一套ES集群,这时可以先将新的ES节点加入到现有集群里,再将老ES节点下线。一实验环境 ​​​​​二实验步骤2.1集群扩容-添加新节点可参考ES... 查看详情

es7.6.2集群迁移(从一套es集群迁移数据到另一套集群)(代码片段)

有时有需要从ES集群中去除多个节点的需求,比如迁移一套ES集群到另外一套ES集群,这时可以先将新的ES节点加入到现有集群里,再将老ES节点下线。一实验环境 ​​​​​二实验步骤2.1集群扩容-添加新节点可参考ES... 查看详情

elasticsearch之十集群部署及分布式内部机制

...个10T服务器可能20万。水平扩容:采购更多服务器,加入集群。大数据。新增或减少es实例时,es集群会将数据重新分配。功能:注意:es7以前primaryshard的默认数量是5,replica默认是1,默认有10个shard,5个primaryshard,5个replicashard以... 查看详情

kubernetes-集群扩容增加node节点

参考技术A  最近Kubernetes集群的负载很高,为了减轻负载压力,打算新增节点进行集群扩容,具体方法如下。这里有两个参数,一个是TOKEN,一个是Kubernetes认证的SHA256加密字符串,TOKEN可以通过如下命令查看每个token只有2... 查看详情

es扩容实战记录

...万大数据查询的工具,我们经常会遇到es内存不足导致es集群分片损坏的情况,介于以上情况,我在这里为大家提供es集群扩容的正确操作方式我这里使用两台es作为数据节点,分别是es1和es2,为了将两台服务器节点都从4G调整到16... 查看详情

kafka集群扩容后的数据迁移

参考技术A最近我们生产环境的kafka集群有增加节点的需求,然而kafka在新增节点后并不会像elasticsearch那样感知到新节点加入后自动将数据reblance到新集群中,因此这个过程需要我们手动分配。一番折腾之后,实现了增加kafka集群... 查看详情

es系列6-elasticsearch集群进阶

参考技术A  当集群中只有一个节点在运行时,意味着会有一个单点故障问题——没有冗余。幸运的是,我们只需再启动一个节点即可防止数据丢失。当你在同一台机器上启动了第二个节点时,只要它和第一个节点有同样... 查看详情

es技术规划

...台质量评估缺失监控报警体系不完善缺乏运维体系建设无集群性能评估和压测报告无容灾容错措施无迁移扩容方案无最佳实践(容量、集群规模、jvm配置等等)无优化方案二、业务目标提效率降成本,web自动化运维平台建设优化性... 查看详情

elasticseach

...片、clusterdiscovery、shared负载均衡,shared副本请求路由、集群扩容、shared重分配2、Elasticseach的垂直扩容与水平扩容(1)垂直扩容:采购更强大的服务器(2)水平扩容:扩容对应用程序透明3、增加或减少节点时的数据rebalance(1)保持负载... 查看详情

[es]elasticsearch总结(代码片段)

...2 倒排索引基本概念3 倒排索引简单实例4 单词词典三 集群(Cluster)1 发现机制2 节点角色3 脑裂现象四 elasticsearch集群扩容和容灾1 集群健康2主分片和复制分片3 扩容4 集群容灾五 ES索引和 查看详情

es集群分布式详解

参考技术AES集群中各节点角色功能简介本博客根据ES7.15,介绍ES中各节点角色功能。集群节点角色可以在配置文件elasticsearch.yml中通过node.roles配置,如果配置了节点角色,那么该节点将只会执行配置的角色功能;如果不配置,该... 查看详情

elasticsearch7.x集群分片及水平扩容讲解(代码片段)

一、ES中的分片上篇文章我们讲解了ES7.X的集群环境搭建,本篇主要讲解下ES的分片和扩容。上篇文章地址:https://blog.csdn.net/qq_43692950/article/details/122244793一个索引可以存储超出单个节点硬件限制的大量数据。比如,一... 查看详情

es集群原理与搭建

参考技术A查看集群健康状况:URL+/GET_cat/healthCluster代表一个集群,集群中有多个节点,其中有一个为主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的。es的一个概念就是去中心化,字面上理解就是无... 查看详情

elasticsearches集群原理与搭建

一、ES集群原理  查看集群健康状况:URL+/GET_cat/health  (1)、ES基本概念名词    Cluster   代表一个集群,集群中有多个节点,其中有一个为主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部... 查看详情

rediscluster集群扩容主从节点详细教程(代码片段)

文章目录1.Cluster集群扩容概念2.在新节点部署rediscluster3.使用工具将redis-4加入集群3.1.安装ruby环境3.2.将redis-4加入集群4.将槽位重新分配4.1.所有节点分出槽位给新节点4.2.迁移指定节点的槽位给新节点4.3.查看集群信息及状态5.配置... 查看详情

elasticsearch:避免es集群的“脑裂”现象

参考技术Aes集群由多个数据节点和一个主节点(可以有多个备选主节点)组成。其中数据节点负责数据存储和具体操作,如执行搜索、聚合等任务,计算压力较大。主节点负责创建、删除索引、分配分片、追踪集群中的节点状态... 查看详情

elasticsearch学习之基础概念

...:kibana,数据抓取组件:logstash,filebeat。ES相关概念1.ES集群  Elasticsearch是一个分布式系统,具有高可用性及可扩展性,当集群中有节点停止或丢失时不会影响集群的服务以及数据的丢失;同时当访问量或数据量增加时可用采... 查看详情

3-1es集群介绍

...节点物理最大值导致单个节点无法存储整个索引数据一个集群就是由一一个或多个节点组织在一起,它们共同持有你整个的数据,并一起提供索引和搜索功能。一个集群由一个唯一的名字标识,这个名字默认就是elasticsearch。这... 查看详情