Este documento contém uma referência para as diferentes funções e autorizações necessárias para a migração para máquinas virtuais. No Google Cloud, as funções e as autorizações estão normalmente associadas a uma conta de serviço ou a uma conta de utilizador.
As secções seguintes descrevem estas funções e autorizações organizadas pelos principais componentes da migração para máquinas virtuais:
- Google Cloud contas de utilizador da consola
- Migre para a conta de serviço predefinida das máquinas virtuais
- Conta de serviço do projeto de destino
Além disso, a gestão de identidade e de acesso (IAM) do Google Cloud inclui duas funções predefinidas que pode usar para controlar o acesso dos utilizadores na sua organização.
Função | Título | Descrição |
---|---|---|
roles/vmmigration.admin | Administrador da VM Migration | Permite que os utilizadores criem novas origens do Migrate to Virtual Machines e realizem todas as outras operações de migração. |
roles/vmmigration.viewer | Visualizador da VM Migration | Permite que os utilizadores obtenham informações sobre o Migrate to Virtual Machines na Google Cloud consola. Destinada a utilizadores que monitorizam as migrações, mas não as realizam. |
Por exemplo, se quiser permitir que um utilizador na sua organização possa ver informações sobre uma migração, mas não possa realizar uma migração, atribua-lhe a função roles/vmmigration.viewer
.
Google Cloud Contas de utilizador da consola
Um projeto de destino do Migrate to Virtual Machines define o projeto de destino para uma instância do Compute Engine que executa a sua VM migrada. O projeto anfitrião do Migrate to Virtual Machines pode ser usado como projeto de destino. Se quiser migrar VMs para projetos adicionais, tem de adicioná-los como projetos de destino para a ferramenta Migrar para máquinas virtuais.
Para que um utilizador possa adicionar um projeto de destino e configurar os detalhes da instância do Compute Engine no projeto de destino, esse utilizador requer as funções e as autorizações necessárias do Identity and Access Management (IAM).
Uma vez que realiza estas ações na Google Cloud console, a conta de utilizador que requer estas autorizações é a conta que usa para iniciar sessão na consolaGoogle Cloud :
Para adicionar um projeto de destino à Migração para máquinas virtuais, a conta de utilizador que usa para iniciar sessão na Google Cloud consola requer as autorizações descritas em Autorizações para adicionar um projeto de destino.
Para configurar os detalhes do destino da instância do Compute Engine em execução no projeto de destino, a conta de utilizador que usa para iniciar sessão na consolaGoogle Cloud requer autorizações para aceder aos dados no projeto de destino, como redes, tipos de instâncias e muito mais. Consulte o artigo Autorizações para configurar uma instância de destino.
Consoante a forma como configura o IAM para o seu ambiente, pode configurar um único utilizador para realizar ambas as ações ou configurar dois utilizadores separados.
Autorizações para adicionar um projeto de destino
Para adicionar um projeto de destino, a conta de utilizador que usa para iniciar sessão na Google Cloud consola requer:
- A função
vmmigration.admin
no projeto anfitrião A função
resourcemanager.projectIamAdmin
no projeto de destino
Consulte o artigo Configurar autorizações na conta de serviço predefinida do projeto anfitrião para obter instruções sobre como definir estas autorizações.
Autorizações para configurar detalhes do destino para uma instância do Compute Engine
Para configurar os detalhes do destino da instância do Compute Engine no projeto de destino, a conta de utilizador que usa para iniciar sessão na consola do Google Cloud requer:
A função
roles/compute.viewer
no projeto de destino
Consulte o artigo Configurar autorizações na conta de serviço predefinida do projeto anfitrião para obter instruções sobre como definir estas autorizações.
Migre para a conta de serviço predefinida das máquinas virtuais
A migração para máquinas virtuais cria uma conta de serviço predefinida no projeto anfitrião quando ativa a API Migrate to Virtual Machines e atribui-lhe a função vmmigration.serviceAgent
. O Migrate to Virtual Machines usa esta conta de serviço para
criar a instância do Compute Engine no projeto de destino como parte do clone de teste
e da mudança.
Consoante o seu ambiente, pode ter de editar as autorizações na conta de serviço predefinida.
Autorizações quando usa uma VPC partilhada no projeto de destino
Para implementar uma instância do Compute Engine num projeto de destino que aceda a uma VPC partilhada, tem de adicionar a função compute.networkUser
à conta de serviço predefinida do Migrate to Virtual Machines para lhe permitir o acesso a sub-redes no projeto anfitrião da VPC partilhada.
Consulte o artigo Configurar autorizações para uma VPC partilhada para obter instruções sobre como definir estas autorizações.
Conta de serviço do projeto de destino
Por predefinição, quando implementa a VM migrada numa instância de destino do Compute Engine, não é atribuída nenhuma conta de serviço à instância.
Se a instância do Compute Engine precisar de acesso a Google Cloud serviços e APIs, crie uma conta de serviço no projeto de destino com as autorizações necessárias para aceder a esses serviços e APIs. Em seguida, anexe a conta de serviço à instância do Compute Engine como parte da configuração dos detalhes do destino.
No entanto, para anexar a conta de serviço de destino à instância do Compute Engine, a conta de serviço predefinida do Migrate to Virtual Machines requer as autorizações necessárias, conforme descrito no artigo Configurar autorizações na conta de serviço do projeto de destino.
Autorizações para configurar a AWS como uma origem
Esta secção detalha os campos do modelo JSON de autorizações. Para ver detalhes sobre como implementar autorizações de migração, reveja a secção Crie uma política de IAM do AWS.
{
"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"
}
}
}
]
}
Para mostrar o inventário das instâncias candidatas à migração, conceda permissões de migração para máquinas virtuais para ec2:DescribeInstances, ec2:DescribeVolumes e ec2:DescribeInstanceTypes.
A migração para máquinas virtuais requer as seguintes autorizações para migrar volumes do EC2 da AWS para o Google Cloud:
- Para criar um instantâneo dos volumes, conceda autorizações para ec2:DescribeSnapshots, ec2:CreateSnapshots e ec2:CreateTags.
- Para copiar os dados, Google Cloud conceda autorizações para ebs:ListSnapshotBlocks, ebs:ListChangedBlocks e ebs:GetSnapshotBlock.
- Para eliminar instantâneos antigos, conceda autorizações para ec2:DeleteSnapshot e ec2:DeleteTags.
Para fazer uma mudança radical, conceda autorizações de migração para máquinas virtuais para ec2:StopInstances.
Autorizações para configurar o Azure como uma origem
Esta secção descreve os campos do modelo JSON de autorizações. Para ver detalhes sobre como implementar autorizações de migração, reveja a secção Crie uma função personalizada.
São necessárias as seguintes autorizações para criar um grupo de recursos associado à origem, verificar se existe, listar os recursos que contém e eliminá-lo quando a origem é eliminada:
"Microsoft.Resources/subscriptions/resourceGroups/write",
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Resources/subscriptions/resourceGroups/delete"
É necessária a seguinte autorização para obter a lista de inventário e para obter os detalhes das VMs que estão a ser migradas:
"Microsoft.Compute/virtualMachines/read"
É necessária a seguinte autorização para anular a atribuição de uma VM quando está a ser transferida para uma VM do Google Cloud :
"Microsoft.Compute/virtualMachines/deallocate/action"
São necessárias as seguintes autorizações para criar, listar e eliminar instantâneos/pontos de restauro da VM que está a ser migrada:
"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"
São necessárias as seguintes autorizações para ler dados de instantâneos / pontos de restauro:
"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"
Conceda acesso à rede
Além de conceder autorizações, tem de verificar se o acesso aos seus discos não está bloqueado nem restrito a nenhuma rede específica. Os seus discos têm de ser acessíveis a redes públicas.
Para garantir que os seus discos estão acessíveis a redes públicas, siga os seguintes passos:
- Na sua conta do Azure, aceda às definições do disco.
- Em Definições, abra a página Rede.
- Selecione Ativar acesso público a partir de todas as redes.
- Clique em Guardar.
Para mais informações, consulte o artigo Gerir o acesso à rede para discos geridos.