2.3. Red Hat Ceph Storage 工作负载注意事项

Ceph 存储集群的一个关键优势在于能够使用性能域支持同一存储集群中的不同类型的工作负载。不同的硬件配置可以与每个性能域关联。存储管理员可以在适当的性能域中部署存储池,为应用提供专为特定性能和成本配置文件量身定制的存储。为这些性能域选择适当的大小和优化的服务器是设计 Red Hat Ceph Storage 集群的一个重要方面。

在读取和写入数据的 Ceph 客户端接口中,Ceph 存储集群显示为一个客户端存储数据的简单池。但是,存储集群以对客户端接口完全透明的方式执行许多复杂的操作。Ceph 客户端和 Ceph 对象存储守护进程(称为 Ceph OSD)或只是 OSD,都使用可扩展哈希下的受控复制 (CRUSH) 算法来存储和检索对象。Ceph OSD 可以在存储集群内的容器中运行。

CRUSH map 描述了集群资源的拓扑结构,并且 map 存在于客户端主机和集群中的 Ceph 监控主机中。Ceph 客户端和 Ceph OSD 都使用 CRUSH map 和 CRUSH 算法。Ceph 客户端直接与 OSD 通信,消除了集中式对象查找和潜在的性能瓶颈。利用 CRUSH map 并与其对等方通信,OSD 可以处理复制、回填和恢复,从而实现动态故障恢复。

Ceph 使用 CRUSH map 来实施故障域。Ceph 还使用 CRUSH map 实施性能域,这只需将底层硬件的性能配置文件纳入考量。CRUSH map 描述了 Ceph 存储数据的方式,它作为简单的层次结构(特别是圆环图和规则集)实施。CRUSH map 可以支持多种层次结构,将一种类型的硬件性能配置集与另一类分隔开。Ceph 实施具有设备"类"的性能域。

例如,您可以让这些性能域共存在同一 Red Hat Ceph Storage 集群中:

  • 硬盘(HDD)通常适合基于成本和容量的工作负载。
  • 吞吐量敏感的工作负载通常使用 HDD,在固态驱动器 (SSD) 上 Ceph 写入日志。
  • MySQL 和 MariaDB 等 IOPS 密集型工作负载通常使用 SSD。

图 2.1. 性能和故障域

性能和故障域

工作负载

Red Hat Ceph Storage 针对三种主要工作负载进行了优化:

重要

在购买硬件,请仔细考虑由 Red Hat Ceph Storage 运行的工作负载,因为它可能会显著影响存储集群的价格和性能。例如,如果工作负载是容量优化的,并且硬件更适合通过吞吐量优化的工作负载,则硬件的成本将超过必要成本。相反,如果工作负载被优化吞吐量,且硬件更适合容量优化的工作负载,则存储集群的性能会受到影响。

  • 优化 IOPS: IOPS(Input, output per second)优化部署适合云计算操作,例如将 MYSQL 或 MariaDB 实例作为 OpenStack 上的虚拟机运行。优化 IOPS 部署需要更高的性能存储,如 15k RPM SAS 驱动器和单独的 SSD 日志,以处理频繁的写入操作。一些高 IOPS 情景使用所有闪存存储来提高 IOPS 和总吞吐量。

    IOPS 优化存储集群具有以下属性:

    • 每个 IOPS 的成本最低。
    • 每 GB 的 IOPS 最高。
    • 99 个百分点延迟一致性.

    IOPS 优化存储集群的用例:

    • 典型的块存储.
    • 用于硬盘 (HDD) 或 2x 复制的 3 倍复制,用于固态硬盘 (SSD)。
    • OpenStack 云上的 MySQL.
  • 优化吞吐量:使用优化吞吐量的部署适合服务大量数据,如图形、音频和视频内容。优化吞吐量的部署需要高带宽网络硬件、控制器和硬盘,具有快速顺序的读写特征。如果要求快速数据访问,则使用吞吐量优化存储策略。此外,如果要求快速写入性能,将 Solid State Disk (SSD) 用于日志将显著提高写入性能。

    吞吐量优化存储集群具有以下属性:

    • 每 MBps 成本最低(吞吐量)。
    • 每个 TB 的 MBps 最高。
    • 每个 BTU 的 MBps 最高。
    • 每个 Watt 的 MBps 最高。
    • 97% 的延迟一致性.

    优化吞吐量的存储集群用例:

    • 块或对象存储。
    • 3 倍复制。
    • 面向视频、音频和图像的主动性能存储.
    • 流媒体,如 4k 视频.
  • 优化容量: 容量优化部署适合以尽可能低的成本存储大量数据。容量优化的部署通常会以更具吸引力的价格点来换取性能。例如,容量优化部署通常使用速度较慢且成本更低的 SATA 驱动器和共同定位日志,而不是使用 SSD 进行日志。

    成本和容量优化的存储集群具有以下属性:

    • 每 TB 成本最低。
    • 每 TB 的 BTU 最低。
    • 每 TB 的 Watts 最低.

    用于成本和容量优化的存储集群有:

    • 典型的对象存储。
    • 纠删代码,以最大程度地提高可用容量
    • 对象存档。
    • 视频、音频和图像对象存储库.