池是用于存储对象的逻辑分区。
当您首次部署集群而不创建池时,Ceph 使用默认池来存储数据。池为您提供:
弹性:您可以设置允许多少 OSD 失败而不会丢失数据。对于复制池,它是对象的所需副本/副本数。典型配置存储一个对象和一个附加副本(即size = 2),但您可以确定副本/副本的数量。对于纠删码池,它是编码块的数量(即在纠删码配置文件中m=2)
Placement Groups:您可以为池设置归置组的数量。典型的配置为每个 OSD 使用大约 100 个归置组来提供最佳平衡,而不会占用太多计算资源。设置多个池时,请注意确保为池和整个集群设置合理数量的归置组。
CRUSH 规则:当您将数据存储在池中时,对象及其副本(或用于纠删码池的块)在集群中的放置由 CRUSH 规则控制。如果默认规则不适合您的用例,您可以为您的池创建自定义 CRUSH 规则。
快照:当您使用 ceph osd pool mksnap 创建快照时,您可以有效地拍摄特定池的快照。
要将数据组织到池中,您可以列出、创建和删除池。您还可以查看每个池的利用率统计信息。
要列出集群的池,请执行:
ceph osd lspools
在创建池之前,请参阅Pool、PG 和 CRUSH 配置参考。理想情况下,您应该覆盖 Ceph 配置文件中归置组数量的默认值,因为默认值并不理想。有