Questo argomento descrive come configurare le autorizzazioni per una migrazione manuale di Google Cloud Migrate for Compute Engine (in precedenza Velostrata). 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
Prerequisiti
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 di ruoli
Crea i ruoli a livello di progetto:
- Apri un prompt dei comandi ed esegui questo comando. Sostituisci il parametro di accesso con le informazioni di accesso del tuo account Google Cloud.
gcloud auth login login@google.com --no-launch-browser --brief
- Scarica il file di Cloud Deployment Manager dalla pagina Download.
- Espandi il file scaricato e salvalo in una directory a cui puoi accedere durante la creazione dei ruoli.
- Nelle directory espanse, apri la directory
manual
.cd google/migrate/gce/manual
Utilizzando i file YAML in quella directory, assegna le autorizzazioni ai ruoli:
gcloud iam roles create "velos_manager" --project project-ID \ --file velos_gcp_mgmt_role.yaml --no-user-output-enabled --quiet gcloud iam roles create "velos_ce" --project project-ID \ --file velos_gcp_ce_role.yaml.yaml --no-user-output-enabled --quiet
Creazione account di servizio
Crea l'account di servizio
velos-manager
in Google Cloud. Nota:project-ID
è il tuo progetto di infrastruttura.gcloud config set project project-ID gcloud iam service-accounts create "velos-manager" --display-name "velos-manager"
Assegna il ruolo
velos_manager
all'account di serviziovelos-manager
.gcloud projects add-iam-policy-binding project-ID --member \ serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com" \ --role "projects/project-ID/roles/velos_manager" \ --no-user-output-enabled --quiet
Aggiungi altri ruoli obbligatori al ruolo
velos_manager
:gcloud projects add-iam-policy-binding project-ID --member \ serviceAccount:"velos-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:"velos-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:"velos-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:"velos-manager@project-ID.iam.gserviceaccount.com" \ --role "roles/monitoring.viewer" --no-user-output-enabled --quiet gcloud iam service-accounts add-iam-policy-binding \ "velos-manager@project-ID.iam.gserviceaccount.com" \ --member=serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com" \ --role=roles/iam.serviceAccountTokenCreator --project project-ID
Crea l'account di servizio
velos-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 "velos-cloud-extension" \ --display-name "velos-cloud-extension"
Assegna il ruolo
velos_ce
all'account di serviziovelos-cloud-extension
:gcloud projects add-iam-policy-binding project-ID \ --member serviceAccount:"velos-cloud-extension@project-ID.iam.gserviceaccount.com" \ --role "projects/project-ID/roles/velos_ce" \ --no-user-output-enabled --quiet
Assegna altri ruoli obbligatori all'account di servizio
velos-cloud-extension
:gcloud projects add-iam-policy-binding project-ID \ --member serviceAccount:"velos-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:"velos-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 ruoli
I seguenti passaggi creano ruoli per Migrate for Compute Engine su Google Cloud.
- Crea i ruoli Migrate for Compute Engine in Google Cloud a livello di organizzazione:
gcloud auth login orgadmin@google.com --no-launch-browser --brief
- Scarica il file di Cloud Deployment Manager dalla pagina Download.
- Espandi il file scaricato e salvalo in una directory a cui puoi accedere durante la creazione dei ruoli.
- Nelle directory espanse, apri la directory
manual
.cd google/migrate/gce/manual
Utilizzando i file YAML in quella directory, assegna le autorizzazioni ai ruoli:
gcloud iam roles create "velos_manager" --organization organization-ID \ --file velos_gcp_mgmt_role.yaml --no-user-output-enabled --quiet gcloud iam roles create "velos_ce" --project project-ID \ --file velos_gcp_ce_role.yaml.yaml --no-user-output-enabled --quiet
Creazione di account di servizio e assegnazione dei ruoli
Crea l'account di servizio
velos-manager
in Google Cloud. Anche se puoi creare l'account di serviziovelos-manager
in qualsiasi progetto, Migrate for Compute Engine 4.5 consiglia di creare questo servizio nel progetto host per semplificare la configurazione.gcloud config set project project-ID gcloud iam service-accounts create "velos-manager" \ --display-name "velos-manager"
Assegna il ruolo
velos_manager
all'account di serviziovelos-manager
.gcloud organizations add-iam-policy-binding organization-ID \ --member serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com"\ --role organizations/organization-ID/roles/"velos_manager"\ --no-user-output-enabled --quiet gcloud iam service-accounts add-iam-policy-binding \ "velos-manager@project-ID.iam.gserviceaccount.com" \ --member=serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com" \ --role=roles/iam.serviceAccountTokenCreator --project project-ID
Aggiungi altri ruoli obbligatori al ruolo
velos_manager
:gcloud organizations add-iam-policy-binding organization-ID --member \ serviceAccount:"velos-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:"velos-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:"velos-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:"velos-manager@project-ID.iam.gserviceaccount.com" \ --role "roles/monitoring.viewer" --no-user-output-enabled --quiet gcloud iam service-accounts add-iam-policy-binding \ "velos-manager@project-ID.iam.gserviceaccount.com" \ --member=serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com" \ --role=roles/iam.serviceAccountTokenCreator --project project-ID
Crea l'account di servizio
velos-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 "velos-cloud-extension" \ --display-name "velos-cloud-extension"
Assegna il ruolo
velos_ce
all'account di serviziovelos-cloud-extension
:gcloud projects add-iam-policy-binding project-ID \ --member serviceAccount:"velos-cloud-extension@project-ID.iam.gserviceaccount.com" \ --role "projects/project-ID/roles/velos_ce" \ --no-user-output-enabled --quiet
Assegna altri ruoli obbligatori all'account di servizio
velos-cloud-extension
:gcloud projects add-iam-policy-binding project-ID \ --member serviceAccount:"velos-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:"velos-cloud-extension@project-ID.iam.gserviceaccount.com" \ --role "roles/monitoring.metricWriter" \ --no-user-output-enabled --quiet