Descobrir instâncias e bancos de dados do EC2 na AWS

Este documento descreve como executar uma descoberta de inventário na sua conta da Amazon Web Services (AWS) usando a CLI do discovery client da Migration Center.

A CLI mcdc permite coletar informações sobre suas instâncias do Amazon Elastic Compute Cloud (EC2) e os bancos de dados do Amazon Relational Database Service (RDS) na AWS. A CLI mcdc envia as informações coletadas para a Central de migração para avaliação.

Informações coletadas durante a descoberta de inventário

A CLI mcdc coleta as seguintes informações das suas instâncias EC2:

  • Tipo, ID, nome e região da instância.
  • Tamanho da máquina, incluindo CPU, memória e tamanho do armazenamento.
  • Nome, versão e arquitetura do sistema operacional.
  • Estado de energia (ligado ou desligado).
  • Interfaces de rede e endereços IP e MAC associados.
  • Informações do disco, incluindo tipo de interface, tipo de volume, rótulo e tamanho.
  • Suporte a hyperthreading.
  • Dados de performance de cada instância do EC2:
    • Operações de entrada e saída por segundo (IOPS)
    • Uso da CPU
    • Entrada e saída de rede

A CLI mcdc coleta as seguintes informações dos seus bancos de dados do RDS:

  • Plataforma
  • Mecanismo do banco de dados
  • Nome
  • ID gerado
  • Versão
  • Edição
  • Bytes alocados no disco
  • Contagem de núcleos físicos
  • Bytes de memória
  • Dados de performance de cada banco de dados:
    • Uso da memória
    • IOPS do disco
    • Entrada e saída de rede
    • Uso da CPU

A CLI mcdc coleta métricas dos últimos 30 dias, exceto o uso da memória do banco de dados. Para o uso da memória do banco de dados, a AWS salva apenas até sete dias de dados por padrão. Portanto, a CLI mcdc coleta dados apenas dos últimos sete dias.

Bancos de dados compatíveis

Os seguintes bancos de dados são compatíveis:

  • Microsoft SQL Server
  • MySQL
  • PostgreSQL

Limitações

Ao executar uma descoberta de inventário na sua conta da AWS, a CLI mcdc tem as seguintes limitações:

  • As seguintes informações das instâncias do EC2 não são coletadas:
  • Não é possível executar a CLI mcdc em máquinas Linux para coletar dados de instâncias do AWS Windows EC2. Para coletar informações de instâncias do EC2 do Windows, execute a CLI mcdc em uma máquina Windows.

Antes de começar

Antes de iniciar a descoberta de inventário, confira se você concluiu as seguintes etapas:

  1. Confira os requisitos para fazer o download e executar a CLI do mcdc.
  2. Escolha onde fazer o download da CLI mcdc e siga as etapas para fazer o download da CLI mcdc.
  3. Verifique se você tem acesso à sua conta da AWS.

Escolha onde fazer o download da CLI mcdc

É possível fazer o download da CLI mcdc para máquinas Linux e Windows. Recomendamos o uso de uma instância do Windows EC2 para fazer o download e executar a CLI mcdc, porque ela oferece suporte a todos os métodos de coleta disponíveis.

É possível fazer o download da CLI mcdc para um local com acesso aos seus recursos de destino, como estes:

  • AWS CloudShell
  • Uma instância do EC2 do Linux
  • Uma instância do EC2 do Windows
  • Qualquer computador em que você instalou a CLI mcdc e tenha acesso remoto à sua conta da AWS.

Para instruções sobre como fazer o download da CLI mcdc, consulte Fazer o download da CLI mcdc.

Crie uma política do IAM para a AWS.

Para permitir que a CLI mcdc leia os dados de inventário do EC2 e do RDS, crie uma política do IAM da AWS com as seguintes permissões:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "ec2:DescribeRegions",
        "ec2:DescribeInstances",
        "ec2:DescribeVolumes",
        "ec2:DescribeInstanceTypes",
        "rds:DescribeDBInstances",
        "rds:DescribeDBEngineVersions",
        "ssm:DescribeInstanceInformation",
        "cloudwatch:GetMetricData"
      ],
      "Resource": "*"
    }
  ]
}

Autenticar na AWS

Para permitir que a CLI mcdc acesse seu ambiente da AWS, autentique sua conta usando um destes métodos:

Usar suas credenciais da AWS

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

Criar uma chave de acesso para a CLI mcdc

Para criar uma chave de acesso para a CLI mcdc, siga estas etapas:

  1. Crie um usuário do IAM dedicado para interagir com a API da AWS.
  2. Anexe a política criada na seção anterior ao novo usuário.
  3. No console da AWS, navegue até o usuário do IAM que você criou na etapa anterior e clique em Usuário  > Credenciais de segurança  > Criar chave de acesso  > Outros  > Próxima  > Criar chave de acesso.

    Para mais informações, consulte Criar uma chave de acesso.

Armazene o ID e a chave de acesso. Você precisa dessas informações para verificar seu inventário da AWS.

Opcional: configurar o acesso para coletar dados do sistema operacional convidado

Os dados do sistema operacional do visitante enriquecem os relatórios de preços, os relatórios de licenças e as exportações de detalhes de recursos. Esses dados também ajudam a avaliar a adequação para jornadas de conteinerização para o Google Kubernetes Engine, o Autopilot do GKE e o Cloud Run. Se você não quiser coletar dados do sistema operacional, pule esta seção.

Para coletar dados do sistema operacional do convidado, a estação de trabalho que executa a CLI mcdc precisa se conectar às instâncias do EC2 de destino. Verifique se as seguintes portas estão abertas nas instâncias do EC2 de destino:

  • Porta 22 (SSH) para máquinas Linux
  • Porta 135 (WMI) para máquinas Windows

Descobrir instâncias do EC2 e bancos de dados do RDS

Para descobrir instâncias do EC2 e bancos de dados do RDS, siga estas etapas:

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

  2. Execute a descoberta:

    AWS CloudShell

    Para descobrir instâncias do EC2 e bancos de dados RDS na sua conta da AWS, execute o seguinte comando:

    Linux

    ./mcdc discover aws --host-config 
    [--services AWS_SERVICE_NAME]
    [--region AWS_REGION]

    Windows

    mcdc.exe discover aws --host-config 
    [--services AWS_SERVICE_NAME]
    [--region AWS_REGION]

    Substitua:

    • AWS_SERVICE_NAME: o nome do serviço da AWS (rds ou ec2). Essa flag é opcional. Se você não fornecer essa flag, as instâncias do EC2 e os bancos de dados do RDS serão descobertos.
    • AWS_REGION: a região da AWS em que as instâncias do EC2 e os bancos de dados RDS estão localizados. Essa sinalização é opcional. Se você não fornecer essa flag, os recursos de todas as regiões da AWS ativadas serão descobertos.

    Chave de acesso da AWS

    Para descobrir instâncias do EC2 e bancos de dados do RDS usando o ID e a chave de acesso da AWS, execute o seguinte comando:

    Linux

    ./mcdc discover aws --access-key-id AWS_ACCESS_KEY_ID 
    --secret-access-key AWS_ACCESS_KEY
    [--services AWS_SERVICE_NAME]
    [--region AWS_REGION]

    Windows

    mcdc.exe discover aws --access-key-id AWS_ACCESS_KEY_ID 
    --secret-access-key AWS_ACCESS_KEY
    [--services AWS_SERVICE_NAME]
    [--region AWS_REGION]

    Substitua:

    • AWS_ACCESS_KEY_ID: o ID da chave de acesso que você criou na seção Criar uma chave de acesso para a CLI mcdc.
    • AWS_ACCESS_KEY: a chave de acesso que você criou na seção Criar uma chave de acesso para a CLI mcdc.
    • AWS_SERVICE_NAME: o nome do serviço da AWS (rds ou ec2). Essa flag é opcional. Se você não fornecer essa flag, as instâncias do EC2 e os bancos de dados do RDS serão descobertos.
    • AWS_REGION: a região da AWS em que as instâncias do EC2 e os bancos de dados RDS estão localizados. Essa sinalização é opcional. Se você não fornecer essa flag, os recursos de todas as regiões da AWS ativadas serão descobertos.

    A saída será parecida com esta:

      [+] Collecting EC2...
      Collecting region eu-west-1
      Collected 73 EC2 instances
      [+] Collecting RDS...
      [+] Collecting region eu-west-1
      [✓] Collected 1 DB instances
      [✓] Collected total of 1 DB instances
      [✓] Collection completed.
    
  3. Para analisar os dados coletados, execute o seguinte comando:

    Linux

    ./mcdc discover ls

    Windows

    mcdc.exe discover ls

    Se quiser, use o parâmetro --asset-types para mostrar apenas VMs ou bancos de dados. Por exemplo, para mostrar apenas instâncias de VM, execute discover ls --asset-types=vm. Para mostrar apenas bancos de dados, execute discover ls --asset-types=db.

    A saída será parecida com esta:

        VM Assets
        PLATFORM VM ID       NAME              COLLECTED DATA   OS                          IP ADDRESSES
        i-011d6234b5769fe2a  abc-rhel9.0-arm   AWSVM            Red Hat Enterprise Linux    192.0.2.1
        i-08f7e5e469508460f  def-rhel9.0-arm   AWSVM            Red Hat Enterprise Linux    192.0.2.2
        i-09e28bb6eggg94db8  ghi-ol9.3         AWSVM            Linux/UNIX                  192.0.2.3
    
        Database Assets
        GENERATED ID                                         PROVIDER        ENGINE
        arn:aws:rds:eu-west-1:12345678912:db:abc-sqlserver   RDS             SQL Server
    

A seguir