Red Hat Training
A Red Hat training course is available for Red Hat Ceph Storage
3.4.4. 动态 Bucket Index Resharding
动态 bucket 重新划分的过程定期检查所有 Ceph 对象网关存储桶,并检测需要重新划分的存储桶。如果 bucket 增长大于 rgw_max_objs_per_shard
参数中指定的值,Ceph 对象网关会在后台动态重新定义存储桶。rgw_max_objs_per_shard
的默认值是每个分片 100k 对象。
重要
目前,红帽不支持在多站点配置中重新划分动态存储桶。要在此类配置中重新定义存储桶索引,请参阅使用多站点手动 Resharding Buckets。
先决条件
- 阅读 bucket 分片限制。
流程
启用动态存储桶索引重新划分
-
将 Ceph
配置文件中的 rgw_dynamic_resharding
设置设为true
,这是默认值。 可选。如果需要,更改 Ceph 配置文件中的以下参数:
-
rgw_reshard_num_logs
:重新划分日志的分片数量。默认值为16
。 -
rgw_reshard_bucket_lock_duration
:在重新划分期间存储桶上锁定的持续时间。默认值为120
秒。 -
rgw_dynamic_resharding
:启用或禁用动态重新划分。默认值为true
。 -
rgw_max_objs_per_shard
:每个分片的最大对象数量。默认值为每个分片100000
对象。 -
rgw_reshard_thread_interval
:重新线程处理循环之间的最长时间。默认值为600
秒。
-
-
将 Ceph
将存储桶添加到重新划分队列中:
radosgw-admin reshard add --bucket BUCKET_NAME --num-shards NUMBER
替换:
- BUCKET_NAME,带有要重新shard 的存储桶的名称。
- NUMBER,使用新分片数。
例如:
$ radosgw-admin reshard add --bucket data --num-shards 10
列出重新划分队列:
$ radosgw-admin reshard list
检查存储桶重新划分状态:
radosgw-admin reshard status --bucket BUCKET_NAME
替换:
- BUCKET_NAME,带有要重新shard的存储桶的名称
例如:
$ radosgw-admin reshard status --bucket data
注意The
radosgw-admin reshard status
命令将显示以下状态标识符之一:-
not-resharding
-
in-progress
-
done
立即处理重新划分队列中的条目:
$ radosgw-admin reshard process
取消待处理的存储桶重新划分:
radosgw-admin reshard cancel --bucket BUCKET_NAME
替换:
- BUCKET_NAME,待处理 bucket 的名称。
例如:
$ radosgw-admin reshard cancel --bucket data
重要您只能取消 待处理的 重新划分操作。不要取消 持续 重新划分的操作。
- 如果您使用 Red Hat Ceph Storage 3.1 及更早的版本,请删除过时的存储桶条目,如 重新划分后清除过时的实例 中所述。