3.9. bucket 管理
作为存储管理员,在使用 Ceph 对象网关时,您可以通过在用户之间移动 bucket 并将它们重命名来管理存储桶。
3.9.1. 移动存储桶 复制链接链接已复制到粘贴板!
The radosgw-admin bucket 实用程序提供在用户之间移动 bucket 的功能。为此,请将存储桶链接到新用户,并将 bucket 的所有权更改为新用户。
您可以移动存储桶:
3.9.1.1. 先决条件 复制链接链接已复制到粘贴板!
- 正在运行的 Red Hat Ceph Storage 集群
- 已安装 Ceph 对象网关
- bucket
- 各种租户和非租户用户
3.9.1.2. 在非租户用户之间移动存储桶 复制链接链接已复制到粘贴板!
The radosgw-admin bucket chown 命令提供将 bucket 的所有权及其包含的所有对象从一个用户更改为另一个用户的功能。为此,请从当前用户取消链接存储桶,将它链接到新用户,然后将 bucket 的所有权更改为新用户。
流程
将存储桶链接到一个新用户:
radosgw-admin bucket link --uid=user --bucket=bucket
radosgw-admin bucket link --uid=user --bucket=bucketCopy to Clipboard Copied! Toggle word wrap Toggle overflow 替换:
- 使用用户名 将存储桶链接到的用户
- 带有 存储桶 名称的存储桶
例如,要将
数据存储桶链接到名为user2的用户:radosgw-admin bucket link --uid=user2 --bucket=data
# radosgw-admin bucket link --uid=user2 --bucket=dataCopy to Clipboard Copied! Toggle word wrap Toggle overflow 验证存储桶已成功链接到
user2:radosgw-admin bucket list --uid=user2
# radosgw-admin bucket list --uid=user2 [ "data" ]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将存储桶的所有权更改为新用户:
radosgw-admin bucket chown --uid=user --bucket=bucket
radosgw-admin bucket chown --uid=user --bucket=bucketCopy to Clipboard Copied! Toggle word wrap Toggle overflow 替换:
- 用户名 为 user 的用户,将存储桶所有权更改为
- 带有 存储桶 名称的存储桶
例如,要将数据存储的所有权更改为
user2:radosgw-admin bucket chown --uid=user2 --bucket=data
# radosgw-admin bucket chown --uid=user2 --bucket=dataCopy to Clipboard Copied! Toggle word wrap Toggle overflow 通过检查以下命令输出中的
所有者行来验证数据存储桶的所有权是否已成功更改:radosgw-admin bucket list --bucket=data
# radosgw-admin bucket list --bucket=dataCopy to Clipboard Copied! Toggle word wrap Toggle overflow
3.9.1.3. 在租户用户之间移动存储桶 复制链接链接已复制到粘贴板!
您可以将存储桶从一个租户用户移动到另一个租户用户。
流程
将存储桶链接到一个新用户:
radosgw-admin bucket link --bucket=current-tenant/bucket --uid=new-tenant$user
radosgw-admin bucket link --bucket=current-tenant/bucket --uid=new-tenant$userCopy to Clipboard Copied! Toggle word wrap Toggle overflow 替换 :
- bucket 是租户名称 的当前 租户
- 带有 存储桶 名称的存储桶以链接
- 新租户,名称为新用户的租户
- 用户名 为新用户的用户
例如,将
数据存储桶从test租户链接到test的用户:2 租户中名为 user2radosgw-admin bucket link --bucket=test/data --uid=test2$user2
# radosgw-admin bucket link --bucket=test/data --uid=test2$user2Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证存储桶已成功链接到
user2:radosgw-admin bucket list --uid=test$user2
# radosgw-admin bucket list --uid=test$user2 [ "data" ]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将存储桶的所有权更改为新用户:
radosgw-admin bucket chown --bucket=new-tenant/bucket --uid=new-tenant$user
radosgw-admin bucket chown --bucket=new-tenant/bucket --uid=new-tenant$userCopy to Clipboard Copied! Toggle word wrap Toggle overflow 替换:
- 带有 存储桶 名称的存储桶以链接
- 新租户,名称为新用户的租户
- 用户名 为新用户的用户
例如,将
数据存储桶的所有权更改为test:2 租户中的 user2radosgw-admin bucket chown --bucket='test2/data' --uid='test$tuser2'
# radosgw-admin bucket chown --bucket='test2/data' --uid='test$tuser2'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 通过检查以下命令输出中的
所有者行来验证数据存储桶的所有权是否已成功更改:radosgw-admin bucket list --bucket=test2/data
# radosgw-admin bucket list --bucket=test2/dataCopy to Clipboard Copied! Toggle word wrap Toggle overflow
3.9.1.4. 将存储桶从非租户用户移到租户的用户 复制链接链接已复制到粘贴板!
您可以将存储桶从非租户用户移到租户用户。
流程
可选。如果您还没有多个租户,您可以通过启用
rgw_keystone_implicit_tenants并从外部租户访问 Ceph 对象网关来创建它们:打开并编辑 Ceph 配置文件,默认为
/etc/ceph/ceph.conf。启用rgw_keystone_implicit_tenants选项:rgw_keystone_implicit_tenants = true
rgw_keystone_implicit_tenants = trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
s3cmd或swift命令从外部租户访问 Ceph 对象网关:swift list
# swift listCopy to Clipboard Copied! Toggle word wrap Toggle overflow 或使用
s3cmd:s3cmd ls
# s3cmd lsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 从外部租户进行第一次访问可创建等效的 Ceph 对象网关用户。
将存储桶移到租户的用户:
radosgw-admin bucket link --bucket=/bucket --uid='tenant$user'
radosgw-admin bucket link --bucket=/bucket --uid='tenant$user'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 替换 :
- 带有 存储桶 名称的存储桶
- 带有 新用户的租户名称的租户
- 用户名 为新用户的用户
例如,将
数据存储桶移到测试租户中的tenanted-user中:radosgw-admin bucket link --bucket=/data --uid='test$tenanted-user'
# radosgw-admin bucket link --bucket=/data --uid='test$tenanted-user'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证
数据存储桶是否已成功链接到tenanted-user:radosgw-admin bucket list --uid='test$tenanted-user'
# radosgw-admin bucket list --uid='test$tenanted-user' [ "data" ]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将存储桶的所有权更改为新用户:
radosgw-admin bucket chown --bucket='tenant/bucket name' --uid='tenant$user'
radosgw-admin bucket chown --bucket='tenant/bucket name' --uid='tenant$user'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 替换 :
- 带有 存储桶 名称的存储桶
- 带有 新用户的租户名称的租户
- 用户名 为新用户的用户
例如,将
数据存储桶的所有权更改为test租户内的tenanted-user:radosgw-admin bucket chown --bucket='test/data' --uid='test$tenanted-user'
# radosgw-admin bucket chown --bucket='test/data' --uid='test$tenanted-user'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 通过检查以下命令输出中的
所有者行来验证数据存储桶的所有权是否已成功更改:radosgw-admin bucket list --bucket=test/data
# radosgw-admin bucket list --bucket=test/dataCopy to Clipboard Copied! Toggle word wrap Toggle overflow