Google 서비스 사용 설정 및 서비스 계정 구성

마이그레이션을 시작하려면 다음 섹션에서 아래 단계를 수행해야 합니다.

Google Cloud CLI 및 필수 서비스 사용 설정

모든 Migrate to Containers 사용자는 Google Cloud CLI를 구성하고 필요한 Google 서비스를 사용 설정해야 합니다.

Google Cloud CLI 준비

gcloud를 준비하려면 다음 안내를 따르세요.

  1. gcloud CLI를 설치하고 초기화합니다.
  2. gcloud CLI를 업데이트합니다.
    gcloud components update
  3. gcloud CLI가 데이터와 서비스에 액세스할 수 있는 권한이 있는지 확인합니다.
    gcloud auth login

    새 브라우저 탭이 열리고 계정을 선택하라는 메시지가 나타납니다.

  4. Cloud Storage 버킷에 액세스하는 데 필요한 사용자 인증 정보를 설정합니다.

    개별 사용자의 경우 다음 gcloud 명령어를 사용합니다.

    gcloud auth application-default login

    새 브라우저 탭이 열리고 계정을 선택하라는 메시지가 나타납니다.

    또는 서비스 계정을 사용하는 경우 GOOGLE_APPLICATION_CREDENTIALS 환경 변수를 서비스 계정 키가 포함된 JSON 파일의 경로로 설정합니다.

    export GOOGLE_APPLICATION_CREDENTIALS="[PATH]"

필수 서비스 사용 설정

Migrate to Containers를 사용하려면 다음 Google 서비스를 사용 설정해야 합니다.

이름 제목
servicemanagement.googleapis.com Service Management API
servicecontrol.googleapis.com Service Control API
cloudresourcemanager.googleapis.com Cloud Resource Manager API
compute.googleapis.com Compute Engine API
container.googleapis.com Kubernetes Engine API
containerregistry.googleapis.com Container Registry API
cloudbuild.googleapis.com Cloud Build API

필수 서비스가 사용 설정되어 있는지 확인하려면 다음을 사용하세요.

gcloud services list

필수 서비스가 나열되지 않으면 서비스를 사용 설정하세요.

gcloud services enable servicemanagement.googleapis.com servicecontrol.googleapis.com cloudresourcemanager.googleapis.com compute.googleapis.com container.googleapis.com containerregistry.googleapis.com cloudbuild.googleapis.com

gcloud 서비스에 대한 자세한 내용은 gcloud 서비스를 참조하세요.

서비스 계정 구성

서비스 계정은 사용자가 아닌 애플리케이션 또는 가상 머신(VM) 인스턴스에서 사용하는 특별한 유형의 계정입니다. 애플리케이션은 서비스 계정을 사용하여 승인된 API 호출을 만듭니다.

예를 들어 Compute Engine 가상 머신을 서비스 계정으로 실행할 수 있으며 해당 계정에 필요한 리소스에 대한 액세스 권한을 부여할 수 있습니다. 이렇게 하면 서비스 계정은 서비스의 ID가 되며 서비스 계정의 권한은 서비스가 액세스할 수 있는 리소스를 제어합니다.

Migrate to Containers를 사용하는 경우 서비스 계정 두 개를 만듭니다.

서비스 계정 사용 시 권장사항

Migrate to Containers에 사용할 동일한 프로젝트에서 별도의 서비스 계정을 만드는 것이 좋습니다. 그런 다음 필요한 작업을 수행하는 데 필요한 권한만 서비스 계정에 할당합니다. 이렇게 하면 서비스 계정과 연결된 권한을 제한할 수 있습니다.

Container Registry 및 Cloud Storage에 액세스하기 위한 서비스 계정 만들기

storage.admin 역할이 있는 서비스 계정을 만들고 Migrate to Containers 구성요소를 설치할 때 전달합니다.

  1. m4a-install 서비스 계정을 만듭니다.

    gcloud iam service-accounts create m4a-install \
     --project=PROJECT_ID
  2. 서비스 계정에 storage.admin 역할을 부여합니다.

    gcloud projects add-iam-policy-binding PROJECT_ID  \
     --member="serviceAccount:m4a-install@PROJECT_ID.iam.gserviceaccount.com" \
     --role="roles/storage.admin"
  3. 서비스 계정의 키 파일을 다운로드합니다.

    gcloud iam service-accounts keys create m4a-install.json \
     --iam-account=m4a-install@PROJECT_ID.iam.gserviceaccount.com \
     --project=PROJECT_ID 

서비스 계정 키를 JSON 파일로 다운로드한 후 Migrate to Containers 설치에 설명된 절차를 수행하여 대상 Google Kubernetes Engine 클러스터에 Migrate to Containers를 설치할 수 있습니다.

Compute Engine을 마이그레이션 소스로 사용한 서비스 계정 만들기

Compute Engine을 마이그레이션 소스로 사용하려면 compute.viewercompute.storageAdmin 역할이 있는 서비스 계정을 만듭니다.

  1. m4a-ce-src 서비스 계정을 만듭니다.

    gcloud iam service-accounts create m4a-ce-src \
     --project=PROJECT_ID
  2. 서비스 계정에 compute.viewer 역할을 부여합니다.

    gcloud projects add-iam-policy-binding PROJECT_ID  \
     --member="serviceAccount:m4a-ce-src@PROJECT_ID.iam.gserviceaccount.com" \
     --role="roles/compute.viewer"
  3. 서비스 계정에 compute.storageAdmin 역할을 부여합니다.

    gcloud projects add-iam-policy-binding PROJECT_ID  \
     --member="serviceAccount:m4a-ce-src@PROJECT_ID.iam.gserviceaccount.com" \
     --role="roles/compute.storageAdmin"
  4. 서비스 계정의 키 파일을 다운로드합니다.

    gcloud iam service-accounts keys create m4a-ce-src.json \
     --iam-account=m4a-ce-src@PROJECT_ID.iam.gserviceaccount.com \
     --project=PROJECT_ID 

서비스 계정 키를 JSON 파일로 다운로드한 후 Compute Engine 워크로드를 마이그레이션하기 위한 소스를 만들 수 있습니다. 마이그레이션 소스 추가를 참조하세요.

마이그레이션 소스로 Migrate to Virtual Machines 사용

마이그레이션 소스로 Migrate to Virtual Machines 준비

Migrate to Virtual Machines 5.0을 마이그레이션 소스로 사용하려면 먼저 다음 단계에 설명된 대로 Migrate to Virtual Machines 서비스를 사용 설정하고 커넥터를 설치해야 합니다.

  1. Migrate to Virtual Machines 서비스 사용 설정
  2. Migrate Connector 설치

Migrate to Virtual Machines 서비스 계정 지정

Migrate to Virtual Machines를 마이그레이션 소스로 사용하려면 vmmigration.admin 역할이 바인딩된 서비스 계정을 서비스 프로젝트에 만듭니다.

  1. m2c-m2vm-src-service 서비스 계정을 만듭니다.

    gcloud iam service-accounts create m2c-m2vm-src-service  --project=PROJECT_ID
    
  2. 서비스 계정에 vmmigration.admin 역할을 부여합니다.

    gcloud projects add-iam-policy-binding PROJECT_ID  \
    --member="serviceAccount:m2c-m2vm-src-service@PROJECT_ID.iam.gserviceaccount.com" \
    --role="roles/vmmigration.admin"
    
  3. 서비스 계정의 키 파일을 다운로드합니다.

    gcloud iam service-accounts keys create m2c-m2vm-src-service.json \
    --iam-account=m2c-m2vm-src-service@PROJECT_ID.iam.gserviceaccount.com \
    --project=PROJECT_ID
    

Migrate to Virtual Machines 대상 프로젝트 서비스 계정 지정

Migrate to Virtual Machines를 마이그레이션 소스로 사용하려면 대상 프로젝트에 compute.instanceAdmin.v1compute.storageAdmin 역할이 바인딩된 서비스 계정을 만듭니다.

  1. m2c-m2vm-src-gce 서비스 계정을 만듭니다.

    gcloud iam service-accounts create m2c-m2vm-src-gce  --project=PROJECT_ID
    
  2. 서비스 계정에 compute.instanceAdmin.v1 역할을 부여합니다.

    gcloud projects add-iam-policy-binding TARGET_PROJECT_ID  \
    --member="serviceAccount:m2c-m2vm-src-gce@PROJECT_ID.iam.gserviceaccount.com
    --role="roles/compute.instanceAdmin.v1"
    
  3. 서비스 계정에 compute.storageAdmin 역할을 부여합니다.

    gcloud projects add-iam-policy-binding TARGET_PROJECT_ID  \
    --member="serviceAccount:m2c-m2vm-src-gce@PROJECT_ID.iam.gserviceaccount.com" \
    --role="roles/compute.storageAdmin"
    
  4. 서비스 계정의 키 파일을 다운로드합니다.

    gcloud iam service-accounts keys create m2c-m2vm-src-gce.json \
    --iam-account=m2c-m2vm-src-gce@PROJECT_ID.iam.gserviceaccount.com \
    --project=PROJECT_ID
    

서비스 계정 키를 JSON 파일로 다운로드한 후 Migrate to Virtual Machines 워크로드를 마이그레이션하기 위한 소스를 만들 수 있습니다. 마이그레이션 소스 추가를 참조하세요.

다음 단계