Questo documento contiene un riferimento per i diversi ruoli e autorizzazioni richiesti da Migrate to Virtual Machines. In Google Cloud, i ruoli e le autorizzazioni sono generalmente associati a un account di servizio o a un account utente.
Le seguenti sezioni descrivono i ruoli e le autorizzazioni organizzati dai componenti principali di Migrate to Virtual Machines:
- Account utente della console Google Cloud
- Migrazione ad account di servizio predefinito per le macchine virtuali
- Account di servizio del progetto di destinazione
Inoltre, Cloud Identity and Access Management (IAM) include due ruoli predefiniti che puoi utilizzare per controllare l'accesso degli utenti della tua organizzazione.
Ruolo | Titolo | Descrizione |
---|---|---|
roles/vmmigration.admin | Amministratore di VM Migration | Consente agli utenti di creare nuove origini Migrate to Virtual Machines ed eseguire tutte le altre operazioni di migrazione. |
roles/vmmigration.viewer | Visualizzatore VM Migration | Consente agli utenti di recuperare informazioni su Migrate to Virtual Machines nella console Google Cloud. Destinato agli utenti che monitorano le migrazioni, ma non le eseguono. |
Ad esempio, se vuoi consentire a un utente della tua organizzazione di visualizzare
le informazioni su una migrazione, ma non di eseguirne una, assegnagli
il ruolo roles/vmmigration.viewer
.
Account utente della console Google Cloud
Un progetto target Migrate to Virtual Machines definisce il progetto di destinazione per un'istanza Compute Engine che esegue la VM migrata. Il progetto host Migrate to Virtual Machines può essere utilizzato come progetto di destinazione. Se vuoi eseguire la migrazione delle VM in altri progetti, devi aggiungerle come progetti target per Migrate to Virtual Machines.
Affinché un utente possa aggiungere un progetto di destinazione e per configurare i dettagli dell'istanza di Compute Engine nel progetto di destinazione, deve disporre dei ruoli e delle autorizzazioni Identity and Access Management (IAM) necessari.
Poiché esegui queste azioni nella console Google Cloud, l'account utente che richiede queste autorizzazioni è quello che utilizzi per accedere alla console Google Cloud:
Per aggiungere un progetto di destinazione a Migrate to Virtual Machines, l'account utente che utilizzi per accedere alla console Google Cloud richiede le autorizzazioni descritte in Autorizzazioni per aggiungere un progetto di destinazione.
Per configurare i dettagli della destinazione dell'istanza Compute Engine in esecuzione nel progetto di destinazione, l'account utente utilizzato per accedere alla console Google Cloud richiede le autorizzazioni per accedere ai dati nel progetto di destinazione, ad esempio reti, tipi di istanza e altro ancora. Vedi Autorizzazioni per configurare un'istanza di destinazione.
A seconda di come configuri IAM per il tuo ambiente, potresti configurare un singolo utente per eseguire entrambe le azioni o configurare due utenti separati.
Autorizzazioni per aggiungere un progetto di destinazione
Per aggiungere un progetto di destinazione, l'account utente che utilizzi per accedere alla console Google Cloud richiede:
- Il ruolo
vmmigration.admin
nel progetto host Il ruolo
resourcemanager.projectIamAdmin
nel progetto target
Per istruzioni su come impostare queste autorizzazioni, consulta Configurazione delle autorizzazioni sull'account di servizio predefinito del progetto host.
Autorizzazioni per configurare i dettagli della destinazione per un'istanza Compute Engine
Per configurare i dettagli della destinazione dell'istanza Compute Engine nel progetto di destinazione, l'account utente che utilizzi per accedere alla console Google Cloud richiede:
Il ruolo
roles/compute.viewer
nel progetto target
Per istruzioni su come impostare queste autorizzazioni, consulta Configurazione delle autorizzazioni sull'account di servizio predefinito del progetto host.
Account di servizio predefinito Migrate to Virtual Machines
Quando abiliti l'API Migrate to Virtual Machines, quando abiliti l'API Migrate to Virtual Machines, viene creato un account di servizio predefinito nel progetto host e viene assegnato il ruolo vmmigration.serviceAgent
. Migrate to Virtual Machines utilizza questo account di servizio per creare l'istanza di Compute Engine nel progetto di destinazione come parte del clone di test e della migrazione completa.
A seconda dell'ambiente, potrebbe essere necessario modificare le autorizzazioni dell'account di servizio predefinito.
Autorizzazioni quando si utilizza un VPC condiviso nel progetto di destinazione
Per eseguire il deployment di un'istanza Compute Engine in un progetto di destinazione che accede a un VPC condiviso, devi aggiungere il ruolo compute.networkUser
all'account di servizio predefinito Migrate to Virtual Machines per consentire l'accesso alle subnet nel progetto host del VPC condiviso.
Consulta Configurazione delle autorizzazioni per un VPC condiviso per istruzioni sull'impostazione di queste autorizzazioni.
Account di servizio del progetto di destinazione
Per impostazione predefinita, quando esegui il deployment della VM migrata in un'istanza Compute Engine di destinazione, all'istanza non viene assegnato alcun account di servizio.
Se l'istanza di Compute Engine richiede l'accesso ai servizi e alle API Google Cloud, crea un account di servizio nel progetto di destinazione con le autorizzazioni necessarie per accedere a quei servizi e API. Poi, collega l'account di servizio all'istanza Compute Engine durante la configurazione dei dettagli della destinazione.
Tuttavia, per collegare l'account di servizio di destinazione all'istanza Compute Engine, l'account di servizio predefinito Migrate to Virtual Machines richiede le autorizzazioni necessarie, come descritto in Configurare le autorizzazioni sull'account di servizio del progetto di destinazione.
Autorizzazioni per configurare AWS come origine
In questa sezione vengono specificati i campi del modello JSON di autorizzazioni. Per i dettagli su come implementare le autorizzazioni di migrazione, consulta la sezione Creare un criterio AWS IAM.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ec2:DescribeInstances",
"ec2:DescribeVolumes",
"ec2:DescribeInstanceTypes",
"ec2:DescribeSnapshots",
"ec2:CreateTags",
"ec2:CreateSnapshots",
"ec2:StopInstances"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"ebs:ListSnapshotBlocks",
"ebs:ListChangedBlocks",
"ebs:GetSnapshotBlock",
"ec2:DeleteSnapshot",
"ec2:DeleteTags"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:ResourceTag/m2vm-resource": "snapshot"
}
}
}
]
}
Per visualizzare l'inventario delle istanze candidate alla migrazione, concedi le autorizzazioni Migrate to Virtual Machines per ec2:DescribeInstances, ec2:DescribeVolumes ed ec2:DescribeInstanceTypes.
Migrate to Virtual Machines richiede le seguenti autorizzazioni per eseguire la migrazione dei volumi EC2 da AWS a Google Cloud:
- Per creare uno snapshot dei volumi, concedi le autorizzazioni per ec2:DescribeSnapshots, ec2:CreateSnapshots ed ec2:CreateTag.
- Per copiare i dati in Google Cloud, concedi le autorizzazioni per ebs:ListSnapshotBlocks, ebs:ListChangedBlocks ed ebs:GetSnapshotBlock.
- Per eliminare gli snapshot precedenti, concedi le autorizzazioni per ec2:DeleteSnapshot ed ec2:DeleteTag.
Per eseguire un cutover, concedi le autorizzazioni di Migrate to Virtual Machines per ec2:StopInstances.
Autorizzazioni per configurare Azure come origine
In questa sezione vengono descritti i campi del modello JSON delle autorizzazioni. Per maggiori dettagli su come implementare le autorizzazioni di migrazione, consulta la sezione Creare un ruolo personalizzato.
Le autorizzazioni seguenti sono necessarie per creare un gruppo di risorse associato all'origine, verificare che esista, elencare le risorse che contiene ed eliminarlo quando l'origine viene eliminata:
"Microsoft.Resources/subscriptions/resourceGroups/write",
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Resources/subscriptions/resourceGroups/delete"
Per ottenere l'elenco dell'inventario e i dettagli delle VM di cui viene eseguita la migrazione è necessaria la seguente autorizzazione:
"Microsoft.Compute/virtualMachines/read"
Per distribuire una VM quando viene eseguita la migrazione a una VM Google Cloud, è necessaria la seguente autorizzazione:
"Microsoft.Compute/virtualMachines/deallocate/action"
Per creare, elencare ed eliminare gli snapshot/ripristinare i punti della VM in fase di migrazione sono necessarie le seguenti autorizzazioni:
"Microsoft.Compute/restorePointCollections/read",
"Microsoft.Compute/restorePointCollections/write",
"Microsoft.Compute/restorePointCollections/delete",
"Microsoft.Compute/restorePointCollections/restorePoints/read",
"Microsoft.Compute/restorePointCollections/restorePoints/write",
"Microsoft.Compute/restorePointCollections/restorePoints/delete",
"Microsoft.Compute/snapshots/delete",
"Microsoft.Compute/snapshots/write",
"Microsoft.Compute/snapshots/read"
Per leggere i dati di snapshot e / o ripristino dei punti sono necessarie le seguenti autorizzazioni:
"Microsoft.Compute/restorePointCollections/restorePoints/diskRestorePoints/read",
"Microsoft.Compute/restorePointCollections/restorePoints/diskRestorePoints/beginGetAccess/action",
"Microsoft.Compute/restorePointCollections/restorePoints/diskRestorePoints/endGetAccess/action",
"Microsoft.Compute/snapshots/beginGetAccess/action",
"Microsoft.Compute/snapshots/endGetAccess/action"