首页>>后端>>SpringBoot->es集群搭建?

es集群搭建?

时间:2023-12-14 本站 点击:0

ES集群原理与搭建

1、副本 为了提高ES的高可用同时也为了提高搜索的吞吐量,我们将分片复制一份或多份存储在其它的服务器,这样即使当前的服务器挂掉了,拥有副本的服务器照常可以提供服务。

2、在运行中的集群上是可以动态调整副本分片数目的,我们可以按需伸缩集群。让我们把副本数从默认的 1 增加到 2。users 索引现在拥有 9 个分片: 3 个主分片和 6 个副本分片。

3、搭建一个es集群是由模式可循的。 这是一个基础版的职责分离的部署架构: 但是如果大量的聚合查询等操作,这种架构不太适合了。

4、高性能通信:使用高速网络通信协议,如Infiniband、RDMA等,保证节点间的通信速度和吞吐量。

5、安装环境简介 硬件环境:两台四核cpu、4G内存、500G硬盘的虚拟机。软件环境:64位Ubuntu104 LTS;主机名分别为sparkspark2,IP地址分别为1**.1*.**.***/***。JDK版本为7。

ES集群性能优化及维护

可以从三方面进行优化:JVM性能调优、ES性能调优、控制数据来源 可以从三方面进行优化:JVM 性能调优、ES 性能调优、控制数据来源 第一步是 JVM 调优。

在kibana中查看es的线程池使用情况:get _nodes/stats/thread_pool?pretty 发现有大量的rejected。说明es的性能有问题,来不及写入的日志被丢弃了。

当然,如果只是在相同节点数目的集群上增加更多的副本分片并不能提高性能,因为每个分片从节点上获得的资源会变少。 你需要增加更多的硬件资源来提升吞吐量。

Elasticsearch的线程池其实就是对Java自带的进行封装,虽然用户可以更改相关配置,但官方强烈不建议去修改默认值,在项目的实际使用中,我们也是对es的bulk线程配置做了调整。

es集群由多个 数据节点 和一个 主节点 (可以有多个备选主节点)组成。其中数据节点负责数据存储和具体操作,如执行搜索、聚合等任务,计算压力较大。

ES集群的 rebalance 和 allocation 功能,可以自动均衡集群内部数据、分配分片,保证各个节点间尽量均衡。但是,在高访问量或者节点宕机的情况下,大范围的 rebalance 会影响到集群性能。所以,调整好集群相关参数,是重中之重。

es指定分片以及分片副本数

1、移动分片*** **假设我们有两个节点:es_node_one和es_node_two,ElasticSearch在es_node_one节点上分配了ops索引的两个分片,我们现在希望将第二个分片移动到es_node_two节点上。

2、对于同一次查询查询请求,ES会在选择某个分片副本进行查询。例如:如图1所示,索引twitter中有3个主分片,每个分片有2个副本,共9个分片,一次搜索请求会由3个分片来完成,他们可能是主分片也可能是副本分片。

3、注意:默认情况下,创建的索引分片数量是 5 个,副本数量是 1 个。

InfluxDB与ElasticSearch

总的来说,ES适用的场景多过InfluxDB,但也因此,其性能优势不大,磁盘存储成本也会相对高一些。两者都支持集群和分布式。据说InfluxDB的最新版本,对集群功能已经不开源了,商业版本支持。开源版本,单机版稳定性优于集群。

数据源Data Source:grafana确切的说是一个前端展示工具,它自己不提供数据,所以必须给它配置数据源。目前支持的数据源有:Graphite, InfluxDB, OpenTSDB, Prometheus, Elasticsearch, CloudWatch,Zabbix等。

App Metrics支持格式化为Plain Text(纯文本)和JSON,以及格式化为如:InfluxDB, Prometheus, Elasticsearch 和 Graphite 这类时序数据的储存格式。

Grafana是一个开源的,拥有丰富dashboard和图表编辑的指标分析平台,和Kibana不同的是Grafana专注于时序类图表分析,而且支持多种数据源,如Graphite、InfluxDB、Elasticsearch、Mysql、K8s、Zabbix等。

通过创建连续查询,用户可以指定InfluxDB执行连续查询的时间间隔、单次查询的时间范围以及查询规则。

时序数据库:InfluxDB等 WideCloumn:DataStax、Cassandra、Apache HBase和Bigtable等 多模型数据库 :支持上面不只一种类别特性的NoSQL,比如MongoDB、Redis Labs、Amazon DynamoDB和Azure Cosmos DB等。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/SpringBoot/33089.html