资讯专栏INFORMATION COLUMN

ES集群规划优化方案

社区管理员 / 606人阅读



1.1 现状资源接入量


监控设备达到4000+节点,其中网络设备400+ (监控项数约80万,采集频率1分钟),日数据量200G 左右。
1.2 问题
ES为普通 6节点普通集群,未做冷热分类,读写压力巨大,导致数据写入缓慢、查询数据返回超时。


1.3 计划采取措施

  • 常规集群模式变更为冷(6个月历史数据)热(1个月数据)集群;
  • 热节点采用固态硬盘替换机械硬盘,提升读写性能。





ES配置




2.1 预备硬件基本信息

生产环境预备的是:

  • 3主节点:内存64G,8核,5T的机械硬盘;
  • 3热数据节点:内存64G,16核,5T的固态硬盘;
  • 3冷数据节点:内存64G,8核,50T的机械硬盘。

图片

2.2 现状分析

1)主节点磁盘资源使用不完


因为仅主节点非数据节点不存储数据,因此主节点不需要多带带配置5T的硬盘。


2)主机数较多


因为主机内存仅为64g内存,因此单个主机仅能部署1个数据节点,节点间的通信是主机间通信,相比主机内节点间通信会增加通信延时,节点数越多要求的主机数越多,不仅增加节点间通信延时,同时扩展性很差,因此建议采用较大内存主机,主机内部署多个节点。


2.3 规划逻辑

1)主节点和数据节点共用主机


主节点和数据节点在同一个主机上能减少主节点与数据节点间的延时。


2)规划数据量及所需承载节点数

  • 热设备存储30天的数据,冷设备存储6个月的数据,生产环境目前每天产生的数据大概在200G左右,周期为30天之前的数据迁移至冷节点。
  • 总热数据量=200G*30 约6t数据,按单个64g内存数据节点规划可以承载1.85t数据(内存存储比为30),至少需4个热数据节点。
  • 总冷数据量=200G*6*30 约36t数据,按单个64g内存数据节点规划可以承载32t数据(内存存储比为500),至少需要2个冷数据节点。

2.4 规划优化方案


1)主节点和热数据节点
按256g机器来规划,256g机器最多可以部署4个节点,其中一个节点当做主节点,其它部署为数据节点,因此需要2台256g作为主节点和热数据节点共用的主机,考虑单主机故障容灾,建议使用3台256g的机器作为主节点和热数据节点共用的主机。相比之前规划减少6台主机。
2)冷数据节点
目前3台64g内存的主机作为冷数据节点已达到上述至少2个冷数据节点的要求,因此可以暂不更改,如果资源足够,也可以采用2台128/256g内存的机器,每个主机上部署2个冷数据节点,共4个冷数据节点。
结合规划逻辑和实际情况,目前的规划方案如下,后续可根据实际使用情况进行调整。
3)现场生产实际情况
目前有3台512G内存、48核、39T机械硬盘、4块2.9T固态硬盘的物理机(若不划分虚拟机,则4块固态硬盘可以叠加),因此方案改为:物理机不划分虚拟机,一台物理机上部署1个主节点(不占用磁盘)、2个热数据节点(使用固态硬盘)、1个冷数据节点(使用机械硬盘)。


2.5 配置文件

1)生成证书,在node0执行一次即可(xpack开启)


cd elasticsearch
export  JAVA_HOME=/home/shsnc/snc_product/elasticsearch/jdk ##修改JDK的环境变量
./bin/elasticsearch-certutil ca ##一直回车即可
./bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12 ##一直回车即可
mv elastic-certificates.p12 ./config/    ##将证书文件放置到node0指定路径
mv elastic-stack-ca.p12 ./config/      ##将证书文件放置到node0指定路径
scp elastic-certificates.p12 elastic-stack-ca.p12 192.168.XXX.178:/home/shsnc/snc_product/elasticsearch/config/    ##将证书文件放置到node1指定路径
scp elastic-certificates.p12 elastic-stack-ca.p12 192.168.XXX.179:/home/shsnc/snc_product/elasticsearch/config/    ##将证书文件放置到node2指定路径
./bin/x-pack-env ##执行环境变量
./bin/x-pack-security-env ##执行环境变量
./bin/elasticsearch-setup-passwords interactive ##手动配置每个用户密码
export  JAVA_HOME=/home/shsnc/snc_product/jdk ##还原JDK的环境变量


2)主节点配置


cluster.name: shsnc
node.name: node0
network.host: 192.168.XXX.177
http.port: 9200
transport.tcp.port: 9300
node.master: true
node.data: false
node.ingest: true
bootstrap.memory_lock: true
cluster.routing.allocation.same_shard.host: true
xpack.license.self_generated.type: basic
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: /home/shsnc/snc_product/elasticsearch/config/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: /home/shsnc/snc_product/elasticsearch/config/elastic-certificates.p12
http.cors.enabled: true
http.cors.allow-origin: "*"
bootstrap.system_call_filter: false
node.attr.box_type: hot
discovery.zen.ping.unicast.hosts: ["192.168.XXX.177:9300","192.168.XXX.178:9300","192.168.XXX.179:9300"


3)热数据节点配置

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/129089.html

相关文章

  • TiDB 在 Ping++ 金融聚合支付业务中的实践

    摘要:随着业务扩大,过大的单表已不足以支撑复杂的查询场景,因此引入了两个方案同时提供数据服务,阿里云的解决方案,用来解决复杂关系型多维分析场景。 Ping++ 介绍 Ping++ 是国内领先的支付解决方案 SaaS 服务商。自 2014 年正式推出聚合支付产品,Ping++ 便凭借7行代码接入支付的极致产品体验获得了广大企业客户的认可。 如今,Ping++ 在持续拓展泛支付领域的服务范围,旗...

    qqlcbb 评论0 收藏0
  • TiDB 在 Ping++ 金融聚合支付业务中的实践

    摘要:随着业务扩大,过大的单表已不足以支撑复杂的查询场景,因此引入了两个方案同时提供数据服务,阿里云的解决方案,用来解决复杂关系型多维分析场景。 Ping++ 介绍 Ping++ 是国内领先的支付解决方案 SaaS 服务商。自 2014 年正式推出聚合支付产品,Ping++ 便凭借7行代码接入支付的极致产品体验获得了广大企业客户的认可。 如今,Ping++ 在持续拓展泛支付领域的服务范围,旗...

    stormgens 评论0 收藏0
  • [译]优化ElasticSearch之合理分配索引分片

    摘要:原文链接大多数用户在创建索引时通用会问的一个重要问题是我需要创建多少个分片在本文中我将介绍在分片分配时的一些权衡以及不同设置带来的性能影响如果想搞清晰你的分片策略以及如何优化请继续往下阅读为什么要考虑分片数分片分配是个很重要的概念很多用户对 原文链接: https://qbox.io/blog/optimizi... 大多数ElasticSearch用户在创建索引时通用会问的一个重要问...

    付伦 评论0 收藏0
  • TOP100summit:【分享实录】爆炸式增长的斗鱼架构平台的演进

    摘要:吴瑞诚斗鱼数据平台部总监曾先后就职于淘宝一号店。目前负责斗鱼实时离线数据处理个性推荐系统和搜索引擎。斗鱼统一日志监控系统有了配置中心,可以以此实现服务的开关和降级。 本篇文章内容来自2016年TOP100summit斗鱼数据平台部总监吴瑞城的案例分享。编辑:Cynthia2017年11月9-12日北京国家会议中心第六届TOP100summit,留言评论有机会获得免费体验票。 吴瑞诚:斗...

    baukh789 评论0 收藏0
  • 滴滴 Elasticsearch 多集群架构实践

    摘要:本文给大家分享下滴滴在多集群架构的实践。负责整个集群的元数据管理。任务处理模型,在任务执行完成后,会回调大量处理元数据变更。滴滴平台通过统一管控索引,避免了同一个索引名称出现在连接的多个集群中。 出品 | 滴滴技术作者 |魏子珺 showImg(https://segmentfault.com/img/bVbsMkj?w=1800&h=766); Elasticsearch 是基于 L...

    zengdongbao 评论0 收藏0
  • Elasticsearch 压测方案esrally 简介

    摘要:我们来看下文件该文件主要包含下面几个部分和的描述文字一个地址,指明测试数据的下载根路径,与下方中的结合,可得到数据的下载地址。的配置位于目录默认是中下面。上面的命令便是执行一次压测,并指定使用的,运行该中的的,指定的为的实例。 由于 Elasticsearch(后文简称es) 的简单易用及其在大数据处理方面的良好性能,越来越多的公司选用 es 作为自己的业务解决方案。然而在引入新的解决...

    rainyang 评论0 收藏0

发表评论

0条评论

社区管理员

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<