安装

硬件与容量规划

师成师成· 更新于 2026-09-28· 阅读 5 分钟· 0 次阅读

登录后可跨设备保存划线和私人笔记登录

本指南概述了不同规模 Apache Ozone 集群的硬件需求和容量规划建议。合理的硬件选型对于实现最佳性能、可靠性和成本效益至关重要。

注意:Apache Ozone 可以在 Kubernetes 中以单节点方式运行,并提供全部功能,适用于开发、测试和小规模工作负载。本指南中的硬件规格反映的是生产部署的常见配置。您的硬件选择应取决于所需规模、性能要求和工作负载特征。

原则

规划 Ozone 部署时,请考虑以下关键原则:

  • 元数据与数据硬件分离:元数据服务(OM、SCM)与数据服务(Datanode)的需求不同。
  • 元数据使用 SSD/NVMe:所有元数据服务都需要为 RocksDB 提供高速存储。
  • 元数据纵向扩展:为现有元数据节点增加资源,而不是增加节点数量。
  • Datanode 横向扩展:随着容量和吞吐量需求增长,增加更多 Datanode 机器。
  • 为故障做规划:集群容量应能应对磁盘和节点的预期故障。Datanode 原始容量不要超过 400 TB。

指南

硬件配置最佳实践

磁盘配置

  • 生产环境应使用企业级磁盘
  • 数据节点使用 SAS HDD 磁盘
  • 系统盘使用针对混合工作负载优化的 SSD/NVMe
  • 元数据和 Ratis 日志使用针对重度写入工作负载优化的 NVMe 或 SAS SSD
  • 系统盘和元数据存储使用硬件 RAID1
  • 元数据磁盘至少保留 20% 的可用空间,用于 RocksDB compaction
  • 在容量规划中考虑磁盘故障率(通常为每年 1–5%),并使用 SMART 监控磁盘健康状况。

内存配置

  • 每个节点至少为操作系统和其他服务预留 4-8GB 内存
  • 合理规划内存以避免使用 swap,但不要完全禁用 swap;这样可以防止 OOM killer 不可预测地终止关键进程。
  • 对于同机部署的服务(OM+SCM),堆大小应能同时容纳两个服务及其开销
  • 生产环境的 JVM 使用 G1GC 垃圾收集器

扩容规划

  • 设计机架时要考虑扩容能力
  • Datanode 可以按 1 个或更多节点为增量添加
  • 规划硬件更换周期(通常为 3-5 年)

网络规划

适当的网络规划对 Ozone 性能至关重要:

带宽容量规划

确保网络带宽与磁盘总吞吐量相匹配

  • HDD:每块磁盘约 150-200MB/s
  • SSD:每块磁盘约 500MB/s 以上
  • NVMe:每块磁盘约 1-3GB/s 以上
网络超售比
  • 超售比最高限制为 2:1
  • 理想情况:元数据和重度负载采用 1:1 的接入比

最小生产部署

最小的生产就绪部署应包含:

  • 3 个节点用于 OM 高可用(可与 SCM 合署部署)
  • 3 个节点用于 SCM 高可用(可与 OM 合署部署)
  • 至少一个 Recon 实例
  • 使用 RS-6-3 编码至少需要 10 个 DataNode,使用 RS-10-4 编码需要 15 个 DataNode

硬件总量(汇总)

  • 3 个元数据节点(同时运行 OM 和 SCM)
  • 10 个以上 DataNode

参考配置

小型企业部署(3 - 20PB)

由 3 个元数据节点和 10 个以上 DataNode 组成的整合架构。

元数据节点(3 台)

  • 2 颗 16 核 CPU(共 32 核)
  • 128GB 内存
  • 每个服务(OM 和 SCM)各 31GB JVM 堆内存
  • 2 块 480GB SSD 混合负载硬盘组建 RAID1,用于操作系统
  • 2 块 2TB 写优化 NVMe 组建 RAID1
  • 2 个 25GbE 网络端口

DataNode(10 台以上)

  • 2 颗 16 核 CPU(共 32 核)
  • 128GB 内存
  • 48GB JVM 堆内存
  • 2 块 480GB SSD 混合负载硬盘组建 RAID1,用于操作系统
  • 6 块以上 SAS HDD
  • 2 块 480GB 写优化 NVMe 组建 RAID1(元数据)
  • 2 个 25GbE 网络端口

大型企业部署(20PB 以上)

专用服务架构。

OM 节点(3 台)

  • 2 颗 20 核 CPU(共 40 核)
  • 256GB 内存
  • 48GB JVM 堆内存
  • 2 块 480GB SSD 混合负载硬盘组建 RAID1,用于操作系统
  • 2 块 4TB 写优化 NVMe 组建 RAID1
  • 2 个 100GbE 网络端口

SCM 节点(3 台)

  • 2 颗 20 核 CPU(共 40 核)
  • 256GB 内存
  • 48GB JVM 堆内存
  • 2 块 480GB SSD 混合负载硬盘组建 RAID1,用于操作系统
  • 2 块 4TB 写优化 NVMe 组建 RAID1
  • 2 个 100GbE 网络端口

DataNode(80 台以上)

  • 2 颗 16 核 CPU(共 32 核)
  • 128GB 内存
  • 48GB JVM 堆内存
  • 2 块 480GB SSD 混合负载硬盘组建 RAID1,用于操作系统
  • 6 块以上 SAS HDD
  • 2 块 480GB 写优化 NVMe 组建 RAID1(元数据)
  • 2 个 100GbE 网络端口

Recon 节点(1 台)

  • 2 颗 12 核 CPU(共 24 核)
  • 128GB 内存
  • 48GB JVM 堆内存
  • 2 块 2TB NVMe 组建 RAID1
  • 2 个 100GbE 网络

S3 网关节点(3 台以上)

  • 2 颗 16 核 CPU(共 32 核)
  • 128GB 内存
  • 48GB JVM 堆内存
  • 2 块 480GB SSD 混合负载硬盘组建 RAID1,用于操作系统
  • 2 个 100GbE 网络端口

S3 网关的负载均衡

可以将 S3 网关与使用它们的应用程序合署部署,也可以使用专用硬件或软件 L7 负载均衡器在各 S3 网关之间分摊流量。

评论

登录后参与评论

正在加载评论…