대부분의 고객에게는 보관 파일을 .와 함께 GitHub-owned blob storage저장하는 것이 좋습니다. 이 경로는 가장 간단한 경로이며 추가 구성이 필요하지 않습니다.
그러나 방화벽 요구 사항이 있거나 마이그레이션이 완료된 후 보관을 유지해야 하는 경우 외부 공급자를 사용하여 스토리지를 구성할 수 있습니다.
보관을 스테이징할 위치 선택
GL2GH extension 각 GitLab 프로젝트를 보관 파일로 내보낸 다음, 읽을 수 있는 GitHub Blob Storage에 보관 파일을 업로드합니다. 마이그레이션을 실행할 때 스토리지 백 엔드를 선택합니다.
| 스토리지 옵션 | 선택하는 방법 | Notes |
|---|
GitHub-owned blob storage (권장) | --use-github-storage | 설치가 필요하지 않습니다.
GitHub 는 마이그레이션에 성공한 후 또는 마이그레이션 실패 후 7일 후에 자동으로 보관 파일을 삭제합니다.
AWS S3 |
--aws-bucket-name(, AWS_REGION``AWS_ACCESS_KEY_ID및 환경 변수와 AWS_SECRET_ACCESS_KEY 함께, 필요에 따라AWS_SESSION_TOKEN) | 버킷과 해당 수명 주기를 소유합니다.
GitHub 는 스토리지에서 보관 파일을 삭제하지 않습니다.
Azure Blob Storage (애저 블롭 스토리지) |
AZURE_STORAGE_CONNECTION_STRING 환경 변수(단일 migrate-repo 명령의 경우 대신 사용할 --azure-storage-connection-string수 있습니다). | 스토리지 계정 액세스 키 연결 문자열만 지원됩니다(SAS 아님).
GitHub 는 스토리지에서 보관 파일을 삭제하지 않습니다.
Blob Storage 구성
사용하는 GitHub-owned blob storage경우 아무 것도 구성할 필요가 없습니다. 플래그를 사용하여 CLI에서 --use-github-storage 이 메서드를 선택합니다. 그러나 속도가 느리거나 프록시된 연결이 있는 경우 변수(기본값 100MiB, 최소 5MiB)를 더 낮은 숫자로 설정할 GITHUB_OWNED_STORAGE_MULTIPART_MEBIBYTES 수 있습니다.
외부 Blob Storage를 사용하는 경우 이를 설정해야 합니다.
AWS S3 스토리지 버킷 설정
AWS에서 S3 버킷을 설정합니다. 자세한 내용은 AWS 설명서의 버킷 만들기를 참조하세요.
또한 다음 권한이 있는 AWS 액세스 키 및 비밀 키가 필요합니다.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:GetObject",
"s3:ListBucketMultipartUploads",
"s3:AbortMultipartUpload",
"s3:ListBucket",
"s3:DeleteObject",
"s3:ListMultipartUploadParts"
],
"Resource": [
"arn:aws:s3:::github-migration-bucket",
"arn:aws:s3:::github-migration-bucket/*"
]
}
]
}
참고
GitHub Enterprise Importer은 마이그레이션이 완료된 후 AWS에서 보관을 삭제하지 않습니다. 스토리지 비용을 줄이려면 일정 기간 후의 보관 파일의 자동 삭제를 구성하는 것이 좋습니다. 자세한 내용은 AWS 설명서의 버킷에 대한 수명 주기 구성 설정을 참조하세요.
마이그레이션을 실행할 준비가 되면 지역, 액세스 키, 비밀 키 및 세션 토큰(필요한 경우)과 같은 GitHub CLI에 AWS 자격 증명을 제공해야 합니다. 인수로 전달하거나 AWS_REGION, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY 및 AWS_SESSION_TOKEN(으)로 불리는 환경 변수를 설정할 수 있습니다.
또한 --aws-bucket-name 인수를 사용하여 S3 버킷의 이름을 전달해야 합니다.
Azure Blob Storage 스토리지 계정 설정
Azure에서 스토리지 계정을 만들고 연결 문자열을 기록해 둡니다. 자세한 내용은 Microsoft Docs의 스토리지 계정 액세스 키 관리를 참조하세요.
참고
GitHub Enterprise Importer은 마이그레이션이 완료된 후 Azure Blob Storage에서 보관을 삭제하지 않습니다. 스토리지 비용을 줄이려면 일정 기간 후의 보관 파일의 자동 삭제를 구성하는 것이 좋습니다. 자세한 내용은 Microsoft Docs의 데이터 수명 주기를 자동으로 관리하여 비용 최적화를 참조하세요.
마이그레이션을 실행할 준비가 되면 GitHub CLI에 인수로 연결 문자열을 전달하거나 AZURE_STORAGE_CONNECTION_STRING 환경 변수를 사용하여 전달할 수 있습니다.
네트워크 액세스 허용
스토리지 계정에 방화벽 규칙을 구성한 경우 마이그레이션 대상의 IP 범위에 대한 액세스를 허용했는지 확인합니다. GitLab에서 GitHub 마이그레이션에 대한 액세스 관리을(를) 참조하세요.