Gitlab Omnibus:从Amazon S3中删除备份

8
我想要删除一周前的备份文件。 我按照 gitlab 的 备份文档 成功地创建了备份文件以上传到 Amazon S3。
我还设置了gitlab_rails ['backup_keep_time'] = 604800,但并没有起作用。
然而,从我观察到的 IAM 用户策略中可以得知,没有授权来删除这些文件。
备份文件正在不断累积,我不想在 AWS 中手动执行此操作。 在 gitlab omnibus 包中是否有标准方法来删除 Amazon S3 中的备份文件?
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "Stmt1412062044000",
      "Effect": "Allow",
      "Action": [
        "s3:AbortMultipartUpload",
        "s3:GetBucketAcl",
        "s3:GetBucketLocation",
        "s3:GetObject",
        "s3:GetObjectAcl",
        "s3:ListBucketMultipartUploads",
        "s3:PutObject",
        "s3:PutObjectAcl"
      ],
      "Resource": [
        "arn:aws:s3:::my.s3.bucket/*"
      ]
    },
    {
      "Sid": "Stmt1412062097000",
      "Effect": "Allow",
      "Action": [
        "s3:GetBucketLocation",
        "s3:ListAllMyBuckets"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Sid": "Stmt1412062128000",
      "Effect": "Allow",
      "Action": [
        "s3:ListBucket"
      ],
      "Resource": [
        "arn:aws:s3:::my.s3.bucket"
      ]
    }
  ]
}
3个回答

14
您可以按照以下步骤使用S3生命周期策略:
  1. 点击您的S3属性,选择“生命周期”选项卡,然后单击“添加规则”。

    第一步

  2. 单击“配置规则”。

    第二步

  3. 勾选“永久删除”,输入七天(或任何其他数字),然后单击“回顾”。

    第三步

  4. 输入规则名称,然后单击“创建和激活规则”。

    第四步

  5. 检查您的规则是否成功创建并享受它带来的便利。

    第五步


1
如果您只想在s3存储桶中清除旧备份,您可以直接在AWS中实现此目的。在s3存储桶属性中,您可以设置生命周期策略来过期指定天数以前的文件或移动到更便宜的冰川存储。

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接