Configurar permissões para uma VPC compartilhada

A VPC compartilhada permite que uma organização conecte recursos de vários projetos a uma rede de nuvem particular virtual (VPC) comum para que eles possam se comunicar de maneira segura e eficiente usando IPs internos dessa rede.

Quando você usa a VPC compartilhada, é preciso designar um projeto como um projeto host da VPC compartilhada e anexar um ou mais projetos de serviço. As redes VPC no projeto host da VPC compartilhada são chamadas de redes VPC compartilhadas. Recursos qualificados de projetos de serviço podem usar sub-redes na rede VPC compartilhada.

Usar a VPC compartilhada com o Migrate to Virtual Machines

Quando o ambiente do Migrate to Virtual Machines usa uma VPC compartilhada, verifique se você configurou as permissões corretamente para implantar uma VM migrada no projeto de destino do Compute Engine.

Por exemplo, você tem o ambiente a seguir:

  • Projeto A: projeto host do Migrate to Virtual Machines
  • Projeto B: projeto de host da VPC compartilhada e definições de sub-rede
  • Projeto C: projeto de destino do Migrate to Virtual Machines e projeto de serviço de VPC compartilhada

Neste exemplo, você define uma VPC compartilhada no projeto B. O projeto B é chamado de projeto host da VPC compartilhada.

Em seguida, você migra uma VM para uma instância do Compute Engine no Projeto C, o projeto de destino do Migrate to Virtual Machines, em que o Projeto C acessa a VPC compartilhada. Neste exemplo, o projeto C é chamado de projeto de serviço da VPC compartilhada. Você precisa já ter configurado o projeto C para funcionar como um projeto de serviço do projeto B, conforme descrito em Como provisionar a VPC compartilhada, antes de implantar a instância do Compute Engine.

No entanto, antes de implantar a instância do Compute Engine, você também precisa garantir que a conta de serviço padrão do Migrate to Virtual Machines no projeto A tenha as permissões necessárias. Especificamente, o Migrate to Virtual Machines requer o papel compute.networkUser nas sub-redes no projeto host da VPC compartilhada.

Veja na seção a seguir como configurar a conta de serviço padrão do Migrate to Virtual Machines.

Configurar a conta de serviço padrão do Migrate to Virtual Machines

Uma conta de serviço padrão é criada no projeto host durante a criação da primeira migração, conforme descrito em Instalar o conector do Migrate.

Para implantar uma instância do Compute Engine em um projeto de destino que acessa uma VPC compartilhada, você precisa adicionar o papel compute.networkUser nas sub-redes do projeto host da VPC compartilhada à conta de serviço padrão do Migrate to Virtual Machines. Há duas opções para adicionar esse papel:

  • Atribua a conta de serviço padrão do Migrate to Virtual Machines para ser um administrador de projeto de serviço com acesso somente a algumas das sub-redes no projeto host da VPC compartilhada. Essa opção é um meio granular de definir os administradores de projeto de serviço, concedendo a eles o papel compute.networkUser para apenas algumas sub-redes no projeto host da VPC compartilhada.

    Consulte Administradores de projetos de serviço para algumas sub-redes, para conhecer as etapas deste procedimento.

  • Permita que a conta de serviço padrão do Migrate to Virtual Machines seja um Administrador do projeto de serviço com acesso a todas as sub-redes no projeto host da VPC compartilhada. Nesse caso, você concede o papel compute.networkUser para o projeto host da VPC compartilhada à conta de serviço padrão do Migrate to Virtual Machines. A conta de serviço padrão terá acesso a todas as sub-redes atuais e futuras no projeto host da VPC compartilhada.

Para configurar a conta de serviço padrão do Migrate to Virtual Machines para acessar todas as sub-redes no projeto host da VPC compartilhada:

  1. Abra a página "Migrate to Virtual Machines" no Console do Google Cloud:

    Acessar a página "Migrate to Virtual Machines"

  2. Selecione a guia Destinos.

    Na parte superior da página, há uma caixa de informações que mostra o endereço de e-mail da conta de serviço padrão do Migrate to Virtual Machines no formato:

    service-M4CE_HOST_PROJECT_NUMBER@gcp-sa-vmmigration.iam.gserviceaccount.com

  3. Copie o endereço de e-mail.

  4. Use esse endereço de e-mail para conceder o papel compute.networkUser no projeto host da VPC compartilhada à conta de serviço padrão do Migrate to Virtual Machines:

    gcloud projects add-iam-policy-binding VPC_HOST_PROJECT_ID \
       --member=serviceAccount:service-M4CE_HOST_PROJECT_NUMBER@gcp-sa-vmmigration.iam.gserviceaccount.com \
       --role=roles/compute.networkUser

Para saber mais sobre como atribuir papéis e permissões a uma conta de usuário, consulte Como conceder, alterar e revogar o acesso a recursos.