마이그레이션 수행

적절한 IAM 권한이 있고 필요한 조직 정책이 시행되는 경우 Resource Manager API를 사용하여 프로젝트 리소스를 조직 리소스 간에 마이그레이션할 수 있습니다.

gcloud

프로젝트를 다른 조직 리소스로 마이그레이션하려면 다음 명령어를 실행합니다.

gcloud beta projects move PROJECT_ID \
    --organization ORGANIZATION_ID

또한 다음 명령어를 사용하여 폴더를 대상 리소스로 지정할 수도 있습니다.

gcloud beta projects move PROJECT_ID \
    --folder FOLDER_ID

다음 필드를 바꿉니다.

  • PROJECT_ID는 마이그레이션하려는 프로젝트의 ID 또는 번호입니다.
  • ORGANIZATION_ID는 프로젝트를 이동하려는 조직 리소스의 ID입니다. 조직 리소스 또는 폴더 중 하나의 대상만 지정할 수 있습니다.
  • FOLDER_ID는 프로젝트를 이동하려는 폴더의 ID입니다. 폴더 또는 조직 리소스 중 하나의 대상만 지정할 수 있습니다.

API

v1 Resource Manager API를 사용하여 해당 parent 필드를 대상 리소스의 ID로 설정하여 조직 리소스 간에 프로젝트를 마이그레이션할 수 있습니다.

프로젝트를 마이그레이션하려면 다음 단계를 따르세요.

  • projects.get() 메서드를 사용하여 project 객체를 가져옵니다.
  • parent 필드를 조직 리소스의 ID 또는 이동할 폴더의 ID로 설정합니다.
  • projects.update() 메서드를 사용하여 project 객체를 업데이트합니다.

다음은 위 단계를 보여주는 코드 스니펫입니다.

    project = crm.projects().get(projectId=flags.projectId).execute()
    project['parent'] = {
        'type': 'organization',
        'id': flags.organizationId
    }

    project = crm.projects().update(
    projectId=flags.projectId, body=project).execute()

마이그레이션 롤백

실수로 프로젝트를 마이그레이션한 경우 이전 소스를 새 대상으로, 이전 대상을 새 소스로 지정하고 마이그레이션을 다시 수행하여 작업을 롤백할 수 있습니다. 필요한 IAM 권한이 있고 이를 완전히 새로운 마이그레이션처럼 허용하는 조직 정책이 시행 중이어야 합니다.

프로젝트가 조직 없음에서 조직 리소스로 마이그레이션된 마이그레이션을 롤백하려면 Cloud Customer Care에 문의하세요.