首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将C年会桶迁移到零停机时间的新用户。

将C年会桶迁移到零停机时间的新用户。
EN

Stack Overflow用户
提问于 2021-06-11 21:44:15
回答 1查看 364关注 0票数 0

我有一个ceph/radosgw桶,其中包含数百万个对象,我需要将存储桶的所有权更改为另一个用户。

通常,这是通过link对新用户执行桶,然后对其中的所有文件执行chown,如下所示:

代码语言:javascript
复制
radosgw-admin bucket unlink --uid=user1 --bucket=bigbucket
radosgw-admin bucket link --uid=user2 --bucket=bigbucket
radosgw-admin bucket chown --uid=user2 --bucket=bigbucket

不幸的是,chown operation has to loop over every single object in the bucket为了更新元数据。这会导致延长停机时间窗口(有时是每百万对象1小时),旧用户和新用户都无法访问存储桶的全部内容。

是否有任何方法可以改变不需要停机时间的桶所有权?一些想法:

  • 是否可以同时拥有一个桶或特定对象?
  • ,我们可以创建新用户,然后更改他们的uid或其他元数据,让他们访问旧用户的桶吗?
  • 可以解决客户端的问题,还是可以使用代理?

EN

回答 1

Stack Overflow用户

发布于 2021-06-30 16:46:11

在通过chown命令完成迁移之前,您可以向存储桶中添加一个桶策略,以访问两个用户:

代码语言:javascript
复制
{
  "Version": "2012-10-17",
  "Statement": [{
    "Effect": "Allow",
    "Principal": {"AWS": ["arn:aws:iam:::user/user1", "arn:aws:iam:::user/user2"]},
    "Action": "*",
    "Resource": [
      "arn:aws:s3:::bigbucket/*"
    ]
  }]
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67943759

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档