Descobrir instâncias de máquina virtual no Azure

Este documento descreve as etapas para executar uma descoberta de inventário na sua conta do Azure usando a CLI do discovery client da Central de Migração.

Com a CLI mcdc, é possível coletar informações sobre as instâncias de máquina virtual (VM) do Azure. Em seguida, a CLI mcdc envia essas informações para a Central de migração, onde você pode continuar a avaliação.

Antes de começar

  1. Confira os requisitos para fazer o download e executar a CLI do mcdc.
  2. Conclua as etapas para fazer o download da CLI mcdc. A Central de migração não é compatível com o Azure PowerShell. Use a CLI do Azure para executar os comandos da CLI mcdc.

Autenticar no Azure

Para permitir que a CLI mcdc acesse seu ambiente do Azure, configure o acesso usando um dos seguintes métodos:

Usar suas credenciais do Azure

Para usar as credenciais do Azure, execute os comandos da CLI mcdc diretamente no Azure Cloud Shell. Se você executar a CLI mcdc no Azure Cloud Shell, poderá usar suas credenciais atuais sem uma chave secreta do cliente. Nesse caso, a CLI mcdc pode acessar seu ambiente do Azure para descobrir instâncias de VM, conforme concedido pelas suas credenciais.

Criar uma chave secreta do cliente para a CLI do mcdc

Para permitir que a CLI mcdc acesse recursos do Azure, registre a CLI mcdc como um aplicativo na sua conta do Azure e crie uma chave secreta do cliente.

Para criar uma chave secreta do cliente para a CLI do mcdc, siga estas etapas:

  1. No portal do Azure, acesse a página App Registration e clique em New registration.
  2. Para adicionar novas credenciais de cliente, clique em Add a certificate or secret.
  3. Para adicionar uma nova chave secreta do cliente, clique em + New client secret e insira uma descrição e uma data de validade.
  4. Clique em Adicionar.

A chave secreta do cliente está pronta para uso. Copie o valor da chave secreta do cliente porque você vai precisar dele mais tarde ao executar os comandos da CLI mcdc.

Criar um papel personalizado

Para garantir que a CLI mcdc tenha as permissões necessárias para acessar seus recursos do Azure, crie uma função personalizada com as permissões necessárias.

Para criar uma função personalizada, siga estas etapas:

  1. No portal do Azure, acesse a página Assinaturas e selecione uma delas.
  2. Clique no ID da assinatura para copiar.
  3. Salve o seguinte modelo JSON e substitua SUBSCRIPTION_ID pelo ID da assinatura copiado na etapa 2:

      {
      "properties": {
            "roleName": "Minimum permissions role",
            "description": "This role contains the bare minimum of Azure IAM permissions",
            "assignableScopes": [
                  "/subscriptions/SUBSCRIPTION_ID"
            ],
      "permissions": [
                  {
                  "actions": [
                    "Microsoft.Compute/virtualMachines/read",
                    "Microsoft.Compute/disks/read",
                    "Microsoft.Insights/MetricDefinitions/read",
                    "Microsoft.Insights/Metrics/Read",
                    "Microsoft.Network/networkInterfaces/read"
                  ],
                  "notActions": [],
                  "dataActions": [],
                  "notDataActions": []
                  }
            ]
      }
      }
      

    Para mais informações, consulte os detalhes da permissão.

  4. No portal do Azure, acesse a página Access control (IAM).

  5. Para incluir um papel personalizado, clique em + Add.

  6. Clique em Start from JSON e em Select file para fazer upload do arquivo JSON criado na etapa 3.

  7. Para conferir as informações, clique em Review + Create. Para criar o papel personalizado, clique em Create.

Atribuir a função personalizada à CLI mcdc

Depois de criar o papel personalizado, atribua-o ao aplicativo da CLI mcdc para conceder as permissões necessárias.

Para atribuir uma função personalizada à CLI do mcdc, siga estas etapas:

  1. No portal do Azure, acesse a página Access control (IAM).
  2. Clique em + Add e em Add role assignment.
  3. Na função personalizada que você criou (Criar uma função personalizada), digite m2vm e selecione a função.
  4. Clique em Próxima.
  5. Clique em + Selecionar membros, pesquise a CLI mcdc que você registrou em Registrar a CLI mcdc e clique em Selecionar.
  6. Para revisar e atribuir o papel personalizado ao aplicativo, clique em Review + Assign.

Descobrir instâncias de VM no Azure

Para coletar informações de inventário das suas instâncias de VM do Azure, siga estas etapas:

  1. No terminal de linha de comando, mude para o diretório em que você fez o download da CLI mcdc.

  2. Execute a descoberta:

    Cloud Shell do Azure

    Para descobrir instâncias de VM do Azure Cloud Shell usando suas credenciais do Azure, execute o seguinte comando:

    Linux

    ./mcdc discover azure --tenant TENANT_ID 
    --subscription SUBSCRIPTION_ID
    --host-credentials

    Windows

    mcdc.exe discover azure --tenant TENANT_ID 
    --subscription SUBSCRIPTION_ID
    --host-credentials

    Chave secreta do cliente

    Para descobrir instâncias de VM em qualquer computador com acesso à sua conta do Azure usando a chave secreta do cliente, execute o seguinte comando:

    Linux

    ./mcdc discover azure --tenant TENANT_ID 
    --subscription SUBSCRIPTION_ID
    --client CLIENT_ID
    --secret CLIENT_SECRET
    [--resource-group RESOURCE_GROUP]

    Windows

    mcdc.exe discover azure --tenant TENANT_ID 
    --subscription SUBSCRIPTION_ID
    --client CLIENT_ID
    --secret CLIENT_SECRET
    [--resource-group RESOURCE_GROUP]

    Substitua:

    • TENANT_ID: o identificador exclusivo do seu locatário do Azure Active Directory (AAD).
    • SUBSCRIPTION_ID: o ID da assinatura que você criou na seção Criar uma função personalizada.
    • CLIENT_ID: o ID do cliente criado na seção Registrar a CLI mcdc.
    • CLIENT_SECRET: a chave secreta do cliente criada na seção Registrar a CLI mcdc.
    • RESOURCE_GROUP: o grupo de recursos do Azure que contém as instâncias de VM que você quer descobrir. Essa sinalização é opcional.

A saída será parecida com esta:

  [+] Collecting Azure VM instances...
  Collecting region eu-west-1
  Collected 73 Azure VM instances
  [✓] Collection completed.

Depois que a descoberta for concluída, para analisar os dados coletados, execute o comando discover ls:

Linux

./mcdc discover ls

Windows

mcdc.exe discover ls

A saída será parecida com esta:

    VM Assets
    PLATFORM VM ID                        NAME              COLLECTED DATA   OS                          IP ADDRESSES
    4f7bd883-b9cd-42e8-a67d-af3ec82b7f29  abc-rhel9.0-arm   AZUREVM          Red Hat Enterprise Linux    192.0.2.1
    b5bcefcc-5565-4e45-a05a-fac055f73f14  def-rhel9.0-arm   AZUREVM          Red Hat Enterprise Linux    192.0.2.2
    sfbcesdc-8865-4e4t-a0sf-f8sfyjf75723  ghi-ol9.3         AZUREVM          Linux/UNIX                  192.0.2.3

A seguir