第 7 章 设置放置组自动扩展模式
Red Hat Ceph Storage 集群中的每个池具有 PG 的 pg_autoscale_mode 属性,您可以设置为 off、上的、或 warn。
-
off:禁用池的自动扩展。管理员最多可为每个池选择适当的 PG 数。如需更多信息,请参阅 放置组 count 部分。 -
在 上:为给定池启用自动调整 PG 数。 -
警告:当 PG 数量需要调整时,Radings 健康警报。
在 Red Hat Ceph Storage 5 及更新的版本中,pg_autoscale_mode 默认为 on。升级的存储集群保留现有的 pg_autoscale_mode 设置。对于新创建的池,pg_auto_scale 模式为 on。PG 计数会自动调整,ceph status 可能会在 PG 计数调整期间显示恢复状态。
自动缩放器使用 bulk 标志来确定哪个池应当以完整补充的 PG 开头,并且仅在池之间的使用量比率不会被缩减。但是,如果池没有 bulk 标记,池以最少的 PG 开头,并且仅在池中有更多使用量时才会开始。
自动扩展程序(autoscaler)会识别任何重叠的根,并防止扩展带有重叠根的池,因为重叠的根可能会导致扩展过程出现问题。
流程
在现有池中启动自动扩展:
语法
ceph osd pool set POOL_NAME pg_autoscale_mode on
ceph osd pool set POOL_NAME pg_autoscale_mode onCopy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph osd pool set testpool pg_autoscale_mode on
[ceph: root@host01 /]# ceph osd pool set testpool pg_autoscale_mode onCopy to Clipboard Copied! Toggle word wrap Toggle overflow 在新创建的池中启用自动扩展:
语法
ceph config set global osd_pool_default_pg_autoscale_mode MODE
ceph config set global osd_pool_default_pg_autoscale_mode MODECopy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph config set global osd_pool_default_pg_autoscale_mode on
[ceph: root@host01 /]# ceph config set global osd_pool_default_pg_autoscale_mode onCopy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
批量标记创建池:语法
ceph osd pool create POOL_NAME --bulk
ceph osd pool create POOL_NAME --bulkCopy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph osd pool create testpool --bulk
[ceph: root@host01 /]# ceph osd pool create testpool --bulkCopy to Clipboard Copied! Toggle word wrap Toggle overflow 为现有池设置或取消设置
批量标记:重要这些值必须写为
true、false、1或0。1等同于true,0等同于false。如果使用不同的大写,或使用其他内容进行写入,则会发出错误。以下是使用错误语法编写的命令示例:
[ceph: root@host01 /]# ceph osd pool set ec_pool_overwrite bulk True Error EINVAL: expecting value 'true', 'false', '0', or '1'
[ceph: root@host01 /]# ceph osd pool set ec_pool_overwrite bulk True Error EINVAL: expecting value 'true', 'false', '0', or '1'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 语法
ceph osd pool set POOL_NAME bulk true/false/1/0
ceph osd pool set POOL_NAME bulk true/false/1/0Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph osd pool set testpool bulk true
[ceph: root@host01 /]# ceph osd pool set testpool bulk trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow 获取现有池的
批量标记:语法
ceph osd pool get POOL_NAME bulk
ceph osd pool get POOL_NAME bulkCopy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph osd pool get testpool bulk bulk: true
[ceph: root@host01 /]# ceph osd pool get testpool bulk bulk: trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow