Questo argomento descrive come configurare manualmente le autorizzazioni necessarie per la migrazione delle VM. Queste indicazioni hanno lo scopo di aiutare chi vuole comprendere o controllare le autorizzazioni concesse per il processo di migrazione e i carichi di lavoro migrati.
In questa pagina viene descritto il processo di creazione del ruolo per la migrazione a:
- Un singolo progetto Google Cloud
- Più progetti Google Cloud
Prima di iniziare
Per le migrazioni di Migrate for Compute Engine sono necessari due account di servizio.
Per ulteriori informazioni su ciascuno di questi account di servizio e sui ruoli associati, consulta Configurazione di Google Cloud.
Per ulteriori informazioni sui comandi gcloud
e sui relativi parametri, consulta la documentazione dell'interfaccia a riga di comando di gcloud.
- Devi installare Google Cloud SDK.
- Crea un progetto Google Cloud per ospitare l'infrastruttura Migrate for Compute Engine su Google Cloud.
Chiameremo questo progetto progetto di infrastruttura. Utilizza questo progetto ovunque vedi
project-ID
. - Abilita le API seguenti nel tuo progetto di infrastruttura.
gcloud services enable iam.googleapis.com --project project-ID gcloud services enable cloudresourcemanager.googleapis.com --project project-ID gcloud services enable compute.googleapis.com --project project-ID gcloud services enable storage-component.googleapis.com --project project-ID gcloud services enable logging.googleapis.com --project project-ID gcloud services enable monitoring.googleapis.com --project project-ID
Per continuare, seleziona se stai eseguendo la migrazione a un solo progetto o a più progetti.
Progetto singolo
Questa sezione descrive come creare gli account di servizio necessari per un singolo progetto autonomo e assegnare i ruoli appropriati a tali account.
Creazione account di servizio
Crea l'account di servizio
migration-manager
in Google Cloud.gcloud config set project project-ID gcloud iam service-accounts create "migration-manager" --display-name "migration-manager"
Assegna ruoli all'account di servizio
migration-manager
.gcloud projects add-iam-policy-binding project-ID --member \ serviceAccount:"migration-manager@project-ID.iam.gserviceaccount.com" \ --role "roles/cloudmigration.inframanager" \ --no-user-output-enabled --quiet gcloud projects add-iam-policy-binding project-ID --member \ serviceAccount:"migration-manager@project-ID.iam.gserviceaccount.com" \ --role "roles/cloudmigration.storageaccess" \ --no-user-output-enabled --quiet gcloud projects add-iam-policy-binding project-ID --member \ serviceAccount:"migration-manager@project-ID.iam.gserviceaccount.com" \ --role "roles/iam.serviceAccountUser" \ --no-user-output-enabled --quiet gcloud projects add-iam-policy-binding project-ID --member \ serviceAccount:"migration-manager@project-ID.iam.gserviceaccount.com" \ --role "roles/logging.logWriter" \ --no-user-output-enabled --quiet gcloud projects add-iam-policy-binding project-ID --member \ serviceAccount:"migration-manager@project-ID.iam.gserviceaccount.com" \ --role "roles/monitoring.metricWriter" \ --no-user-output-enabled --quiet gcloud projects add-iam-policy-binding project-ID --member \ serviceAccount:"migration-manager@project-ID.iam.gserviceaccount.com" \ --role "roles/monitoring.viewer" \ --no-user-output-enabled --quiet gcloud iam service-accounts add-iam-policy-binding \ "migration-manager@project-ID.iam.gserviceaccount.com" \ --member=serviceAccount:"migration-manager@project-ID.iam.gserviceaccount.com" \ --role=roles/iam.serviceAccountTokenCreator --project project-ID
Crea l'account di servizio
migration-cloud-extension
in Google Cloud. Crea questo account nel progetto in cui prevedi di eseguire il deployment dell'estensione Cloud Migrate for Compute Engine (CE).gcloud iam service-accounts create "migration-cloud-extension" \ --display-name "migration-cloud-extension"
Assegna ruoli all'account di servizio
migration-cloud-extension
.gcloud projects add-iam-policy-binding project-ID \ --member serviceAccount:"migration-cloud-extension@project-ID.iam.gserviceaccount.com" \ --role "roles/cloudmigration.storageaccess" \ --no-user-output-enabled --quiet gcloud projects add-iam-policy-binding project-ID \ --member serviceAccount:"migration-cloud-extension@project-ID.iam.gserviceaccount.com" \ --role "roles/logging.logWriter" \ --no-user-output-enabled --quiet gcloud projects add-iam-policy-binding project-ID \ --member serviceAccount:"migration-cloud-extension@project-ID.iam.gserviceaccount.com" \ --role "roles/monitoring.metricWriter" \ --no-user-output-enabled --quiet
Più progetti
Questa sezione descrive come creare i ruoli necessari per le migrazioni in più progetti e come assegnarli agli account di servizio.
Creazione di account di servizio e assegnazione dei ruoli
Crea l'account di servizio
migration-manager
in Google Cloud. Anche se puoi creare l'account di serviziomigration-manager
in qualsiasi progetto, la creazione di questo servizio nel progetto host semplificherà la configurazione.gcloud config set project project-ID gcloud iam service-accounts create "migration-manager" \ --display-name "migration-manager"
Assegna ruoli all'account di servizio
migration-manager
.gcloud organizations add-iam-policy-binding organization-ID --member \ serviceAccount:"migration-manager@project-ID.iam.gserviceaccount.com" \ --role "roles/cloudmigration.inframanager" \ --no-user-output-enabled --quiet gcloud projects add-iam-policy-binding project-ID --member \ serviceAccount:"migration-manager@project-ID.iam.gserviceaccount.com" \ --role "roles/cloudmigration.storageaccess" \ --no-user-output-enabled --quiet gcloud organizations add-iam-policy-binding organization-ID --member \ serviceAccount:"migration-manager@project-ID.iam.gserviceaccount.com" \ --role "roles/iam.serviceAccountUser" \ --no-user-output-enabled --quiet gcloud projects add-iam-policy-binding project-ID --member \ serviceAccount:"migration-manager@project-ID.iam.gserviceaccount.com" \ --role "roles/logging.logWriter" \ --no-user-output-enabled --quiet gcloud projects add-iam-policy-binding project-ID --member \ serviceAccount:"migration-manager@project-ID.iam.gserviceaccount.com" \ --role "roles/monitoring.metricWriter" \ --no-user-output-enabled --quiet gcloud projects add-iam-policy-binding project-ID --member \ serviceAccount:"migration-manager@project-ID.iam.gserviceaccount.com" \ --role "roles/monitoring.viewer" \ --no-user-output-enabled --quiet gcloud iam service-accounts add-iam-policy-binding \ "migration-manager@project-ID.iam.gserviceaccount.com" \ --member=serviceAccount:"migration-manager@project-ID.iam.gserviceaccount.com" \ --role=roles/iam.serviceAccountTokenCreator --project project-ID
Crea l'account di servizio
migration-cloud-extension
in Google Cloud. Crea questo account nel progetto in cui prevedi di eseguire il deployment dell'estensione Cloud Migrate for Compute Engine (CE).gcloud iam service-accounts create "migration-cloud-extension" \ --display-name "migration-cloud-extension"
Assegna ruoli all'account di servizio
migration-cloud-extension
.gcloud projects add-iam-policy-binding project-ID \ --member serviceAccount:"migration-cloud-extension@project-ID.iam.gserviceaccount.com" \ --role "roles/cloudmigration.storageaccess" \ --no-user-output-enabled --quiet gcloud projects add-iam-policy-binding project-ID \ --member serviceAccount:"migration-cloud-extension@project-ID.iam.gserviceaccount.com" \ --role "roles/logging.logWriter" \ --no-user-output-enabled --quiet gcloud projects add-iam-policy-binding project-ID \ --member serviceAccount:"migration-cloud-extension@project-ID.iam.gserviceaccount.com" \ --role "roles/monitoring.metricWriter" \ --no-user-output-enabled --quiet