공유 VPC의 권한 구성

공유 VPC를 사용하는 조직은 여러 프로젝트의 리소스를 공통 가상 프라이빗 클라우드(VPC) 네트워크에 연결할 수 있으므로 해당 네트워크의 내부 IP를 사용하여 서로 안전하고 효율적으로 통신할 수 있습니다.

공유 VPC를 사용하는 경우 프로젝트 하나를 공유 VPC 호스트 프로젝트로 지정하고 여기에 다른 서비스 프로젝트 하나 이상을 연결합니다. 공유 VPC 호스트 프로젝트의 VPC 네트워크를 공유 VPC 네트워크라고 합니다. 서비스 프로젝트의 요건을 충족하는 리소스는 공유 VPC 네트워크의 서브넷을 사용할 수 있습니다.

Migrate to Virtual Machines에서 공유 VPC 사용

Migrate to Virtual Machines 환경에서 공유 VPC를 사용하는 경우 마이그레이션된 VM을 Compute Engine 대상 프로젝트에 배포할 수 있도록 권한을 올바르게 구성했는지 확인해야 합니다.

예를 들어 다음과 같은 환경이 있다고 가정해 보겠습니다.

  • 프로젝트 A - Migrate to Virtual Machines 호스트 프로젝트
  • 프로젝트 B - 공유 VPC 호스트 프로젝트 및 서브넷 정의
  • 프로젝트 C - Migrate to Virtual Machines 대상 프로젝트 및 공유 VPC 서비스 프로젝트

이 예시에서는 프로젝트 B에 공유 VPC를 정의합니다. 프로젝트 B를 공유 VPC 호스트 프로젝트라고 합니다.

그런 다음 VM을 Migrate to Virtual Machines 대상 프로젝트인 프로젝트 C의 Compute Engine 인스턴스로 마이그레이션합니다. 여기서 프로젝트 C는 공유 VPC에 액세스합니다. 이 예시에서 프로젝트 C를 공유 VPC 서비스 프로젝트라고 합니다. Compute Engine 인스턴스를 배포하기 전에 공유 VPC 프로비저닝에 설명된 대로 프로젝트 C가 프로젝트 B의 서비스 프로젝트로 작동하도록 구성한 상태여야 합니다.

하지만 Compute Engine 인스턴스를 배포하기 전에 프로젝트 A의 Migrate to Virtual Machines 기본 서비스 계정에 필요한 권한이 있는지 확인해야 합니다. 특히 Migrate to Virtual Machines에는 공유 VPC 호스트 프로젝트의 서브네트워크에 compute.networkUser 역할이 필요합니다.

다음 섹션에서는 Migrate to Virtual Machines 기본 서비스 계정을 구성하는 방법을 설명합니다.

Migrate to Virtual Machines 기본 서비스 계정 구성

Migrate Connector 설치에 설명된 대로 첫 번째 마이그레이션을 만들 때 호스트 프로젝트에 기본 서비스 계정이 생성됩니다.

공유 VPC에 액세스하는 대상 프로젝트에 Compute Engine 인스턴스를 배포하려면 공유 VPC 호스트 프로젝트의 서브네트워크에 대한 compute.networkUser 역할을 Migrate to Virtual Machines 기본 서비스 계정에 추가해야 합니다. 이 역할을 추가하는 방법에는 두 가지가 있습니다.

  • 공유 VPC 호스트 프로젝트의 일부 서브넷에만 액세스할 수 있는 서비스 프로젝트 관리자가 되도록 Migrate to Virtual Machines 기본 서비스 계정을 할당합니다. 이 옵션에서는 공유 VPC 호스트 프로젝트의 일부 서브넷에 대해서만 compute.networkUser 역할을 부여하여 서비스 프로젝트 관리자를 정의하는 세분화된 방법을 제공합니다.

    이 절차의 단계는 일부 서브넷의 서비스 프로젝트 관리자를 참조하세요.

  • Migrate to Virtual Machines 기본 서비스 계정이 공유 VPC 호스트 프로젝트의 모든 서브넷에 액세스할 수 있는 서비스 프로젝트 관리자가 되도록 허용합니다. 이 경우 공유 VPC 호스트 프로젝트의 compute.networkUser 역할을 Migrate to Virtual Machines 기본 서비스 계정에 부여합니다. 그러면 기본 서비스 계정이 공유 VPC 호스트 프로젝트의 모든 기존 및 향후 서브넷에 액세스할 수 있습니다.

공유 VPC 호스트 프로젝트의 모든 서브넷에 액세스하도록 Migrate to Virtual Machines 기본 서비스 계정을 구성하려면 다음 안내를 따르세요.

  1. Google Cloud 콘솔에서 Migrate to Virtual Machines 페이지를 엽니다.

    Migrate to Virtual Machines 페이지로 이동

  2. 대상 탭을 선택합니다.

    페이지 상단에 Migrate to Virtual Machines 기본 서비스 계정의 이메일 주소를 다음 형식으로 표시하는 정보 상자가 있습니다.

    service-M4CE_HOST_PROJECT_NUMBER@gcp-sa-vmmigration.iam.gserviceaccount.com

  3. 이메일 주소를 복사합니다.

  4. 이 이메일 주소를 사용하여 공유 VPC 호스트 프로젝트에 대한 compute.networkUser 역할을 Migrate to Virtual Machines 기본 서비스 계정에 부여합니다.

    gcloud projects add-iam-policy-binding VPC_HOST_PROJECT_ID \
       --member=serviceAccount:service-M4CE_HOST_PROJECT_NUMBER@gcp-sa-vmmigration.iam.gserviceaccount.com \
       --role=roles/compute.networkUser

사용자 계정에 역할 및 권한 할당에 대한 자세한 내용은 리소스에 대한 액세스 권한 부여, 변경, 취소를 참조하세요.