前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ES集群与角色规划

ES集群与角色规划

作者头像
章工运维
发布2024-03-13 09:19:06
1600
发布2024-03-13 09:19:06
举报
文章被收录于专栏:章工运维

# 前言

ES8自2020年2月发布至今已有一年多时间,相较于es7而言,最大的改变是彻底删除_type,并默认开启三层安全配置,进一步提高了集群安全性,同时kibana的实用性也进一步提升,大部分日常操作都可以通过web界面完成。本系列教程使用最新的es8.8版本,从运维角度出发,以构建日志平台为目的,以尽可能贴近实际生产的场景案例,优先使用简易的部署方式和kibana图形化界面操作。由浅入深,带领大家逐步上手和掌握ELK技术栈。更多ELK相关内容欢迎访问官方文档或本人博客笔记:https://www.cuiliangblog.cn/catalog/10898409

# 业务场景需求

日志类业务,假设理想情况下,此集群每天最多能够采集20GB的原始日志,需要经常查询最近7天数据,历史数据最大查询时间为30天,日志数据归档存储最多为60天。

# 规划分析

# 集群架构

日志类业务,通常情况下首选热温架构。如果有数据归档存储需求,可加入冷节点存储归档数据。 热节点使用高速SSD+小内存机器,温节点使用低速HDD+大内存机器,冷节点使用最便宜的DAS/SAN/磁带存储,组合达到最大性能和最低成本。

# 预估容量

原始数据量和索引后所占磁盘空间之间的比例大约为 1.1,所以20GB的原始数据预计会在磁盘上产生 22GB的索引数据。 加上副本分片(通常为1副本)后,此数值会翻倍,每天为44GB。 在30天内,主副分片占用量为1320GB,加上归档存储30天的数据(通常为0副本)占用量660GB,总计1980GB,这就是集群需要处理的总量。

# 热节点规模预估

在预估数据节点时,需要注意以下几点:

  • 预留 15%警戒磁盘水位空间。
  • 为错误余量和后台活动预留+ 5%。
  • 保留等效的数据节点以处理故障。

基于这些数据,我们便可以确定热节点所需的总磁盘空间和总内存量。

磁盘与内存的比例

有效保留期(天)

需存储的数据量 (GB)

所需总磁盘空间 (GB)

所需总内存 (GB)

30:1

7

308

370

12

为保障数据完整性,避免单点故障,同一索引的主副分片不能位于同一节点,因此热温节点数量最少各2台。考虑到hot节点写入负载较高,为提高集群写入能力,规划三台节点,热节点的最低配置如下所示:

节点

CPU(核)

内存(GB)

数据盘(GB)

hot-1

1

4

123

hot-2

1

4

123

hot-3

1

4

123

# 温节点规模预估

热节点上超出保留期的数据将会转移到温节点。通过计算这些节点需要存储的数据量,我们便可以预估所需的规模,计算时也需要将高磁盘水位线和后台活动预留的开销考虑在内。

磁盘与内存的比例

有效保留期(天)

需存储的数据量(GB)

所需总磁盘空间(GB)

所需总内存 (GB)

100:1

23

1012

1214

12

温节点的最低配置如下所示

节点

CPU(核)

内存(GB)

数据盘(GB)

warm-1

1

6

607

warm-2

1

6

607

# 冷节点规模预估

温节点上超出保留期的数据将会转移到冷节点。

磁盘与内存的比例

有效保留期(天)

需存储的数据量(GB)

所需总磁盘空间(GB)

所需总内存 (GB)

1000:1

30

660

792

1

本实验中仅使用一台冷节点为例演示,存储到冷节点的索引不设置副本数。冷节点的最低配置如下所示

节点

CPU(核)

内存(GB)

数据盘(GB)

cold-1

1

1

792

# master节点预估

除了数据节点,我们通常还需要专用master节点,在实际生产环境建议部署3台master节点,以便提高集群的弹性和可用性。由于这些节点不处理任何流量,所以它们的规模很小,后期随着业务集群规模增长再提高配置或增加master节点数。master节点的最低配置如下所示

节点

CPU(核)

内存(GB)

数据盘(GB)

master

1

2

0

# 集群规划设计

# 组件调用关系

# ES集群组件关系

# 节点角色与配置

建议将数据节点内存至少配置到4G以上,随着数据写入以及Elastic Agent部署,2G内存经常会出现OOM。 由于是实验环境,master节点暂部署一台,生产环境建议master节点3台。 fleet server节点建议部署在es集群之外,生产环境建议2台及以上组成集群,通过负载均衡方式管理与下发agent策略。 考虑到es节点还需要运行logstash、kibana、filebeat、kafka等服务,集群角色与配置规划如下:

主机名

CPU

内存

数据盘

es角色

其他服务

ip

es-fleet1

1C

1G

0

fleet server、filebeat、自定义APP

192.168.10.130

es-fleet2

1C

1G

0

fleet server、minIO、Grafana、Prometheus

192.168.10.131

es-master

4C

4G

50G

master,ingest

kibana、elastic agent

192.168.10.132

es-hot1

2C

4G

120G

data_content,data_hot

kafka、elastic agent

192.168.10.133

es-hot2

2C

4G

120G

data_content,data_hot

kafka、elastic agent

192.168.10.134

es-hot3

2C

4G

120G

data_content,data_hot

kafka、elastic agent

192.168.10.135

es-warm1

2C

6G

600G

data_content,data_warm

logstash、elastic agent

192.168.10.136

es-warm2

2C

6G

600G

data_content,data_warm

logstash、elastic agent

192.168.10.137

es-cold

1C

2G

800G

data_content,data_cold

elastic agent

192.168.10.138

# 软件与系统版本

操作系统:rockylinux:9.2 内核版本:5.15.49 ELK版本:8.8.2 prometheus版本:2.45.0 grafana版本:10.0.2

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-03-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • # 前言
  • # 业务场景需求
  • # 规划分析
    • # 集群架构
      • # 预估容量
        • # 热节点规模预估
          • # 温节点规模预估
            • # 冷节点规模预估
              • # master节点预估
              • # 集群规划设计
                • # 组件调用关系
                  • # ES集群组件关系
                    • # 节点角色与配置
                      • # 软件与系统版本
                      相关产品与服务
                      对象存储
                      对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
                      领券
                      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档