第 5 章 三个可用区的通用扩展集群配置
作为存储管理员,您可以为带有 Ceph OSD 的三个可用区配置通用扩展集群配置。
Ceph 可能会因为其网络和集群而丢失 Ceph OSD,这同样可靠,因为 CRUSH map 之间随机分布失败。如果关闭了多个 OSD,剩余的 OSD 和 monitor 仍然管理以操作。
使用单个集群将数据可用性限制为具有单一故障点的单个位置。然而,在某些情况下,可能需要高可用性。使用三个可用区可让集群降低电源丢失,甚至在自然灾难时丢失完整的数据中心。
对于三个可用区的通用集群配置,支持三个数据中心,每个站点包含两个数据副本。这有助于确保即使在数据中心中断期间,数据仍可从另一个站点访问并写入。使用这个配置,池复制大小为 6
,池 min_size
为 3
。
标准 Ceph 配置在网络或数据中心的许多故障中存活,永远不会破坏数据一致性。如果您在失败后恢复足够的 Ceph 服务器,它会恢复。如果您丢失了数据中心,Ceph 可以维护可用性,但仍然可以形成 monitor 仲裁,并且具有足够副本的数据来满足池的 min_size
,或者再次复制的 CRUSH 规则以满足大小。
5.1. 常规扩展集群部署限制 复制链接链接已复制到粘贴板!
在使用常规扩展集群时,应考虑以下限制。
- 三个可用区的通用扩展集群配置不支持在两个或多个区域的 netsplit 场景中 I/O 操作。虽然集群对基本 Ceph 命令仍然可访问,但 I/O 使用量仍不可用,直到 netsplit 被解决为止。这与扩展模式不同,其中 tiebreaker 监控可以隔离集群的一个区域,并在 netsplit 期间在降级模式下继续 I/O 操作。有关扩展模式的更多信息,请参阅 Stretch 模式。
在三个可用区配置中,Red Hat Ceph Storage 旨在容忍多个主机故障。但是,如果集群中超过 25% 的 OSD 停机,Ceph 可能会停止将 OSD 标记为
out
。这个行为由mon_osd_min_in_ratio
参数控制。默认情况下,mon_osd_min_
设置为 0.75,即集群中至少有 75% 的 OSD 必须保持在(主动)状态,然后任何额外的 OSD 都可以标记为in
_ratioout
。此设置可防止将太多 OSD 标记为out
,这会导致大量数据移动。当 OSD 返回到服务时,数据移动可能会导致高客户端 I/O 的影响,以及长时间恢复时间。如果 Red Hat Ceph Storage 停止将 OSD 标记为 out,一些放置组(PG)可能无法重新平衡处理 OSD,可能会导致不活跃的放置组(PG)。
重要在调整
mon_osd_min_in_ratio
值时,可以允许更多 OSD 被标记为 out 和 trigger 重新平衡,这应该谨慎完成。有关mon_osd_min_in_ratio
参数的更多信息,请参阅 Ceph 监控器和 OSD 配置选项。