如何将 GitLab 备份到云端(S3)

如何将 GitLab 备份到云端(S3)

我正在尝试关注 gitlab文档将备份上传至云端,但我发现它很稀疏,而且不太直接。

创建 tar 非常简单。

我的问题始于

对于综合套餐:

gitlab_rails['backup_upload_connection'] = {
  'provider' => 'AWS',
  'region' => 'eu-west-1',
  'aws_access_key_id' => 'AKIAKIAKI',
  'aws_secret_access_key' => 'secret123'
}
gitlab_rails['backup_upload_remote_directory'] = 'my.s3.bucket'

我该怎么处理它?我就把它放进去/var/opt/gitlab/gitlab-rails/etc/gitlab.yml,就这样吗?

  multipart_chunk_size:
  encryption:

  gitlab_rails['backup_upload_connection'] = {
    'provider' => 'AWS',
    'region' => 'eu-west-1',
    'aws_access_key_id' => 'AKIAKIAKI',
    'aws_secret_access_key' => 'secret123'
  }
  gitlab_rails['backup_upload_remote_directory'] = 'gitlabbackupxan1234'

  ## GitLab Shell settings
  gitlab_shell:
    path: /opt/gitlab/embedded/service/gitlab-shell/

然后我们来到

如果您要将备份上传到 S3,您可能需要创建一个具有受限访问权限的新 IAM 用户。要授予上传用户上传备份的权限,请创建以下 IAM 配置文件,将 my.s3.bucket 替换为您的存储桶的名称:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "Stmt1412062044000",
      "Effect": "Allow",
    ...
      "Resource": [
        "arn:aws:s3:::my.s3.bucket"
      ]
    }
  ]
}

再说一遍,怎么办?我开始阅读有关 AIM 的文章,但这是一个很大的话题,我不太清楚该如何处理。

答案1

您应该按照http://cloudkul.com/blog/automate-gitlab-backups-within-amazon-s3-bucket/

不,您应该将“backup_upload_connection”和“backup_upload_remote_directory”设置放在 /etc/gitlab/gitlab.rb 中...您还应该取消注释其他一些设置——如您从上面的链接中看到的那样。然后您应该重新配置。

您转到 IAM -> 新用户 -> 创建 -> 策略 -> 创建用户策略 -> 粘贴给定的策略 -> 替换为您创建的 s3 存储桶的名称(需要替换 2 个位置)。完成新用户步骤后,您将了解 aws_access_key_id 和 aws_secret_access_key。

您还应该按照他们描述的方式设置 cron。

相关内容