GitLab에서 백업을 S3로 설정 + 정기적으로 백업 삭제
설정 방법은 기본적으로 공식 문서대로입니다.
EC2의 IAM 역할을 사용하는 방법
GitLab을 EC2에서 실행하는 경우 IAM 역할을 사용하여 액세스 토큰의 포함을 피할 수 있습니다.
공식 문서에는 설명이 없지만 다음 설정에서 IAM 역할을 사용할 수있었습니다.
이는 GitLab의 백업 파일을 업로드하는 데 사용되는 Fog라는 라이브러리에서 지원되기 때문입니다.
설정 방법
다음과 같이 설정하면 IAM 역할을 사용하여 S3 백업이 가능합니다.
gitlab_rails['backup_upload_connection'] = {
'provider' => 'AWS',
'region' => 'リージョン名',
'aws_access_key_id' => '', # 空だけど必要
'aws_secret_access_key' => '',# 空だけど必要
'use_iam_profile' => true,
}
gitlab_rails['backup_upload_remote_directory'] = 'バケット名'
필수 항목의 유효성을 검사하므로 aws_access_key_id
, aws_secret_access_key
를 비워두고 'use_iam_profile' => true
를 지정하면 IAM 역할을 사용할 수 있습니다.
이것은 아래에 보고된 공식 대응 MR이 병합될 때까지의 회피책이 될 것이라고 생각합니다.
gitlab_rails['backup_upload_connection'] = {
'provider' => 'AWS',
'region' => 'リージョン名',
'aws_access_key_id' => '', # 空だけど必要
'aws_secret_access_key' => '',# 空だけど必要
'use_iam_profile' => true,
}
gitlab_rails['backup_upload_remote_directory'] = 'バケット名'
S3에 업로드된 백업 파일을 정기적으로 지우는 방법
GitLab 측 백업에서는 backup_keep_time
의 만료된 파일이 자동으로 삭제됩니다. 그러나 S3에 업로드한 경우에는 이 기한이 적용되지 않고 백업 파일이 모두 축적되어 갑니다.
이 대응책으로서 삭제 스크립트를 사용하는 방법 가 있습니다만, S3의 수명주기 라고 하는 기능을 사용하는 것이 쉽습니다.
이 S3의 라이프사이클 기능을 사용하면 지정된 기간 후에 파일을 삭제하거나 Glacier와 같은 저가의 장기 저장 스토리지로 이동할 수 있습니다.
설정 방법
S3의 버킷 속성에 있는 "라이프 사이클"에서 설정할 수 있습니다.
다음과 같이 임의의 경과일수 후에 삭제하는 설정이 가능합니다.
Reference
이 문제에 관하여(GitLab에서 백업을 S3로 설정 + 정기적으로 백업 삭제), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/falcon8823/items/e2eb542fbc42bb27b601
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(GitLab에서 백업을 S3로 설정 + 정기적으로 백업 삭제), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/falcon8823/items/e2eb542fbc42bb27b601텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)