버킷 간 데이터 이동

이 페이지에서는 소스 버킷에서 대상 버킷으로 객체를 복사하여 버킷의 콘텐츠를 이동하는 방법을 설명합니다.

개요

버킷을 만들 때는 버킷 이름, 상위 프로젝트를 포함하여 설정하는 일부 속성이 영구적으로 적용되고 변경할 수 없습니다.

버킷에 새 이름을 사용하려면 원하는 이름으로 새 버킷을 만들고 이전 버킷에서 새 버킷으로 객체를 복사하면 효과적으로 새 이름을 사용할 수 있습니다. 그런 다음 이전 버킷을 삭제할 수 있습니다. 다음에 유의하세요.

  • 버킷을 삭제하면 버킷 이름을 재사용할 수 있습니다.

  • 한 버킷에서 다른 버킷으로 객체를 이동하는 작업의 주된 목표가 다른 버킷 위치에 데이터를 저장하는 것이라면 버킷을 직접 재배치하는 것이 좋습니다.

필수 권한

콘솔

Cloud de Confiance 콘솔을 사용하여 이 가이드를 완료하려면 적절한 IAM 권한이 있어야 합니다. 액세스하려는 버킷이 사용자가 만든 프로젝트에 존재할 경우 프로젝트 소유자가 필요한 권한이 포함된 역할을 사용자에게 부여해야 할 수 있습니다.

특정 작업에 필요한 권한 목록은 Cloud de Confiance 콘솔에 대한 IAM 권한을 참고하세요.

관련 역할 목록은 Cloud Storage 역할을 참조하세요. 또는 특별히 제한된 권한이 있는 커스텀 역할을 만들 수 있습니다.

명령줄

명령줄 유틸리티를 사용하여 이 가이드를 완료하려면 적절한 IAM 권한이 있어야 합니다. 액세스하려는 버킷이 사용자가 만든 프로젝트에 존재할 경우 프로젝트 소유자가 필요한 권한이 포함된 역할을 사용자에게 부여해야 할 수 있습니다.

특정 작업에 필요한 권한 목록은 gcloud storage 명령어에 대한 IAM 권한을 참조하세요.

관련 역할 목록은 Cloud Storage 역할을 참조하세요. 또는 특별히 제한된 권한이 있는 커스텀 역할을 만들 수 있습니다.

REST API

JSON API

JSON API를 사용하여 이 가이드를 완료하려면 적절한 IAM 권한이 있어야 합니다. 액세스하려는 버킷이 사용자가 만든 프로젝트에 존재할 경우 프로젝트 소유자가 필요한 권한이 포함된 역할을 사용자에게 부여해야 할 수 있습니다.

특정 작업에 필요한 권한 목록은 JSON 메서드에 대한 IAM 권한을 참조하세요.

관련 역할 목록은 Cloud Storage 역할을 참조하세요. 또는 특별히 제한된 권한이 있는 커스텀 역할을 만들 수 있습니다.

버킷 간에 데이터 이동

콘솔

  1. 아직 대상 버킷이 없으면 버킷을 만듭니다.

  2. 소스 버킷에서 대상 버킷으로 각 객체를 복사합니다.

  3. 소스 버킷과 그 콘텐츠를 삭제합니다.

명령줄

  1. 대상 버킷을 만듭니다(아직 없는 경우).

  2. 소스 버킷의 콘텐츠를 대상 버킷에 재귀적으로 복사하려면 --recursive 옵션과 함께 gcloud storage cp 명령어를 사용합니다.

    gcloud storage cp --recursive gs://SOURCE_BUCKET/* gs://DESTINATION_BUCKET

    각 항목의 의미는 다음과 같습니다.

    • SOURCE_BUCKET은 원래 버킷의 이름입니다. 예를 들면 old-bucket입니다.

    • DESTINATION_BUCKET은 데이터를 이동하려는 버킷의 이름입니다. 예를 들면 my-bucket입니다.

    버킷에서 관리형 폴더플랫 네임스페이스를 사용하는 경우 관리형 폴더를 복사하려면 명령어에 --include-managed-folders 플래그를 포함해야 합니다.

  3. 소스 버킷의 콘텐츠를 소스 버킷 자체와 함께 재귀적으로 삭제하려면 --recursive 옵션과 함께 gcloud storage rm 명령어를 사용합니다.

    gcloud storage rm --recursive gs://SOURCE_BUCKET

    여기서 SOURCE_BUCKET은 원래 버킷의 이름입니다. 예를 들면 old-bucket입니다.

    또는 소스 버킷 자체를 삭제하지 않고 소스 버킷의 콘텐츠만 삭제하려면, --all-versions 플래그와 ** 와일드 카드를 함께 사용하여 gcloud storage rm 명령어를 실행합니다.

    gcloud storage rm --all-versions gs://SOURCE_BUCKET/**

    여기서 SOURCE_BUCKET은 원래 버킷의 이름입니다. 예를 들면 old-bucket입니다.

REST API

JSON API

  1. 아직 대상 버킷이 없으면 버킷을 만듭니다.

  2. 소스 버킷에서 대상 버킷으로 각 객체를 복사합니다.

  3. 소스 버킷에서 각 객체를 삭제합니다.

  4. 소스 버킷을 삭제합니다.

XML API

  1. 아직 대상 버킷이 없으면 버킷을 만듭니다.

  2. 소스 버킷에서 대상 버킷으로 각 객체를 복사합니다.

  3. 소스 버킷에서 각 객체를 삭제합니다.

  4. 소스 버킷을 삭제합니다.

다음 단계