【问题标题】:Gitlab Omnibus: Delete backup from Amazon S3Gitlab Omnibus:从 Amazon S3 中删除备份
【发布时间】:2016-05-31 18:26:54
【问题描述】:

我想删除超过 1 周的备份文件。我从 gitlab 关注了这个 backup document 并成功创建了备份文件以上传到 Amazon S3。

我也设置了gitlab_rails['backup_keep_time'] = 604800,但是还是不行。

但是,根据我在他们创建的 IAM 用户策略中观察到的情况。没有删除文件的权限。

备份文件正在打包,我不想在 AWS 中手动执行此操作。

是否有任何标准方法可以删除 Amazon S3 for gitlab 综合包中的备份文件?

{
  "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"
      ]
    }
  ]
}

【问题讨论】:

    标签: amazon-s3 crontab gitlab gitlab-omnibus


    【解决方案1】:

    您可以通过以下步骤使用 S3 生命周期策略:

    1. 单击您的 S3 属性并选择生命周期选项卡,然后单击添加规则。

    2. 点击配置规则。

    3. 选中永久删除并输入 7 天(或您想要的任何其他数字)并点击查看。

    4. 输入规则名称并点击“创建并激活规则”。

    5. 检查您的规则创建成功并享受。

    【讨论】:

      【解决方案2】:

      如果您只对清除 s3 存储桶中的旧备份感兴趣,您可以直接在 AWS 中实现。在 s3 存储桶属性上,您可以设置生命周期策略以使文件过期超过指定天数或转移到更便宜的冰川。

      【讨论】:

        【解决方案3】:

        请注意,backup_keep_time 配置选项仅管理本地文件。 GitLab 不会自动修剪存储在第三方对象存储(例如 AWS S3)中的旧文件...

        https://docs.gitlab.com/ce/raketasks/backup_restore.html

        【讨论】:

          猜你喜欢
          • 2018-08-28
          • 1970-01-01
          • 2015-10-30
          • 1970-01-01
          • 2015-01-16
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多