新钛云服已累计为您分享693篇技术干货
介绍
pg_autoscaler
模块首先在 Nautilus (14.2.x) 版本中引入,是在 Ceph 集群中自动管理归置组的绝佳方式。根据预期的池使用情况,pg_autoscaler
可以根据池使用情况和用户设置的调整来提出建议并调整集群中归置组的数量。
自动缩放器带有一系列调整选项,包括--bulk
标志、target_size_ratio
、noautoscale
、bias
、pg_num
、pg_num_max
和pg_num_min
。为了准备最新的 Quincy 版本,我们通过发布标准测试和派生的调整建议和故障排除技巧对这些调整进行了测试,用户可以在升级到 Quincy 时参考这些调整。在这篇博文中,我们总结了自动扩缩器带来的最初挑战,概述了发布标准测试带来的最佳调优实践,并以一些自动扩缩器故障排除技巧结束。
--bulk 标志的最初挑战和动机
在 Quincy 之前,一些通过自动化工具安装 Ceph 的用户从一开始就遇到了性能问题。默认情况下,自动缩放器会以最小数量的 PG 开始创建每个池,仅在使用量增加后增加该数量。这种行为主要导致大型池的性能不佳,需要比自动缩放器提供的最小数量更多的 PG。
这种“默认安装”行为导致了 Quincy 引入该--bulk
标志。用户现在可以使用--bulk
来标志大容量的存储池。--bulk
通过在池上设置标志,自动缩放器将从一开始就分配更多的 PG。这样,用户不再需要等待自动缩放器检测到更多的使用情况,然后再分配适当数量的 PG。
调整建议
--bulk 标志应该用于大型池以获得最佳性能。
该--bulk
标志现在可用于指示存储池将很大,并且应该从大量 PG 开始。用户可以在创建新池时和在现有池上设置--bulk
标志。任何不带--bulk
标志创建的池都将保持默认行为,即从最小数量的 PG 开始。
要在池创建期间设置--bulk
标志,请使用ceph osd pool create <pool-name> --bulk
。要在现有池上设置或取消设置--bulk
标志,请使用ceph osd pool set <pool-name> bulk <true/false/1/0>
。要获取现有池的--bulk
标志状态,请使用ceph osd pool get <pool-name> bulk
。
如果您希望一个池相对于其他池消耗更多的集群容量,请使用 target_size_ratio 设置。
可以使用target_size_ratio