Descubra recursos na AWS

Este documento descreve como executar uma deteção de inventário na sua conta dos Amazon Web Services (AWS) através da CLI do cliente de deteção do Migration Center.

Pode usar a CLI mcdc para recolher informações sobre os seguintes recursos na sua conta da AWS:

Em seguida, a mcdc CLI envia as informações recolhidas para o Migration Center, onde pode concluir a avaliação.

Limitações

Quando executa uma deteção de inventário na sua conta da AWS, a CLI tem as seguintes limitações:mcdc

  • Apenas os tipos de recursos EC2 e RDS estão incluídos no relatório de CTP. Para exportar e analisar todos os tipos de recursos fora do Migration Center, exporte o seu inventário.
  • As seguintes informações para instâncias do EC2 não são recolhidas:
    • A utilização de memória não é recolhida. Para recolher estas informações, certifique-se de que o agente do Amazon CloudWatch está instalado e configurado nas suas instâncias do EC2.
    • Liberte espaço em disco. Para recolher estas informações, execute uma deteção de convidados.
  • Não pode executar a CLI mcdc em máquinas Linux para recolher dados de instâncias do AWS Windows EC2. Para recolher informações de instâncias do Windows EC2, execute a CLI mcdc numa máquina Windows.

Dados recolhidos durante a descoberta de inventário

A CLI mcdcrecolhe as seguintes informações dos serviços AWS suportados:

Tipo de recurso Dados recolhidos
Amazon EC2
Clique para mostrar os dados recolhidos.
  • Detalhes da instância (ID, tipo, estado)
  • ID do desconto do proprietário
  • Detalhes do tipo de instância (CPU, memória)
  • Etiquetas
  • Informações do sistema operativo (do SSM)
  • Bloqueie mapeamentos de dispositivos e detalhes de volume
  • Métricas de desempenho (utilização da CPU, I/O de rede, I/O de disco)
Amazon RDS
Clique para mostrar os dados recolhidos.
  • Detalhes da instância de base de dados (identificador, classe, estado)
  • Detalhes do motor e da versão do motor
  • Armazenamento atribuído
  • Etiquetas
  • Métricas de desempenho (utilização da CPU, débito da rede, IOPS, armazenamento livre)
  • Estatísticas de desempenho (memória livre)
Amazon S3
Clique para mostrar os dados recolhidos.
  • Detalhes do contentor (nome, ARN, região, data de criação)
  • Etiquetas
  • Estado do controlo de versões
  • Regras do ciclo de vida
  • Métricas de desempenho (tamanho do contentor por classe de armazenamento, número de objetos)
Amazon EKS
Clique para mostrar os dados recolhidos.
  • Por cluster:
    • Detalhes do cluster (nome, ARN, versão, estado, ponto final)
    • Etiquetas
    • ARN da função
    • Configuração da VPC
    • Configuração de registo
    • Tipos de lançamento (EC2 ou Fargate)
  • Por grupo de nós gerido:
    • Detalhes do grupo de nós (nome, ARN, tipo de AMI, tipos de instâncias, tamanho do disco)
    • Configuração do dimensionamento (mínimo, máximo, tamanho selecionado)
    • Grupos de escala automática associados
  • Por perfil do Fargate:
    • Detalhes do perfil (nome, ARN da função de execução do pod)
    • Sub-redes
    • Seletores (namespace, etiquetas)
Amazon ECS
Clique para mostrar os dados recolhidos.
  • Por cluster:
    • Detalhes do cluster (nome, ARN, estado)
    • Etiquetas
    • Número de serviços e tarefas
    • Instâncias de contentores registadas
  • Por serviço:
    • Detalhes do serviço (nome, ARN e tipo de lançamento)
    • Definição da tarefa
    • Estratégia de agendamento
    • Configuração de implementação
    • Informações do balanceador de carga
  • Por tarefa:
    • Detalhes da tarefa (ARN, último estado, estado selecionado)
    • CPU e memória
    • Informações do contentor
ELB
Clique para mostrar os dados recolhidos.
  • Por balanceador de carga (versões 1 e 2):
    • Detalhes (nome, ARN/ID, nome DNS, tipo, esquema)
    • Etiquetas
    • VPC e zonas de disponibilidade
    • Ouvintes e regras
    • Grupos-alvo e saúde-alvo
    • Estado de funcionamento da instância (para ELBs clássicos)
AWS Lambda
Clique para mostrar os dados recolhidos.
  • Por função:
    • Configuração (nome, ARN, tempo de execução, função, controlador, tempo limite)
    • Etiquetas
    • Tamanho da memória e armazenamento efémero
    • Tipo de pacote e tamanho do código
    • Arquiteturas
    • Camadas
    • Variáveis de ambiente
    • Configuração do rastreio
    • Mapeamentos de origens de eventos
    • Definições de simultaneidade
Amazon CloudFront
Clique para mostrar os dados recolhidos.
  • Por distribuição:
    • Detalhes (ID, ARN, nome do domínio, estado, ativado)
    • Etiquetas
    • Aliases (CNAMEs)
    • Origens e grupos de origens
    • Comportamentos da cache
    • Classe de preço, versão HTTP, IPv6 ativado
Amazon EFS
Clique para mostrar os dados recolhidos.
  • Por sistema de ficheiros:
    • Detalhes (ID, ARN, nome, hora de criação)
    • Etiquetas
    • Tamanho total (acesso padrão e pouco frequente)
    • Modo de desempenho e débito
    • Estado de encriptação
    • Políticas de ciclo de vida
    • Política de cópias de segurança
    • Configurações de replicação
    • Alvos de montagem e pontos de acesso
Amazon Redshift
Clique para mostrar os dados recolhidos.
  • Por cluster aprovisionado:
    • Detalhes do cluster (identificador, ARN, estado, versão)
    • Etiquetas
    • Tipo e número de nós
    • Nome da base de dados
    • VPC e funções de IAM
    • Estado de encriptação
    • Configuração de instantâneos e do Aqua
  • Por grupo de trabalho sem servidor:
    • Detalhes do grupo de trabalho (nome, ARN, estado, RPU base)
    • Etiquetas
    • Informações do espaço de nomes (nome da base de dados, funções da IAM, chave do KMS)
    • Ponto final da VPC
    • Configurações de cópia de instantâneos
Amazon VPC
Clique para mostrar os dados recolhidos.
  • Por VPC:
    • Detalhes da VPC (ID, ARN, estado, bloco CIDR, arrendamento)
    • Etiquetas
    • ID das opções de DHCP
    • Sub-redes associadas
    • LCAs de rede associadas

A CLI recolhe métricas dos últimos 30 dias, exceto a utilização de memória da base de dados.mcdc Para a utilização da memória da base de dados, a AWS guarda apenas até 7 dias de dados por predefinição, pelo que a CLI mcdc recolhe dados apenas dos últimos 7 dias.

Antes de começar

Antes de iniciar a deteção de inventário, conclua os seguintes passos:

  1. Reveja os requisitos para transferir e executar a CLI mcdc.
  2. Escolha onde transferir a CLI mcdc e conclua os passos para transferir a CLI mcdc.
  3. Certifique-se de que tem acesso à sua conta da AWS.

Escolha onde transferir a CLI mcdc

Pode transferir a CLI mcdc para computadores Linux e Windows. Recomendamos que use uma instância do EC2 do Windows para transferir e executar a CLI mcdc, porque suporta todos os métodos de recolha disponíveis.

Pode transferir a mcdcCLI para uma localização com acesso aos seus recursos de destino, como os seguintes:

  • AWS CloudShell
  • Uma instância do EC2 Linux
  • Uma instância do Windows EC2
  • Qualquer computador onde tenha instalado a mcdcCLI e tenha acesso remoto à sua conta da AWS.

Para ver instruções sobre como transferir a CLI mcdc, consulte o artigo Transferir a CLI mcdc.

Crie uma política de IAM do AWS

Para autorizar a CLI mcdc a ler os dados do inventário de recursos da AWS, crie uma política de IAM da AWS com as seguintes autorizações:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "cloudfront:ListDistributions",
        "cloudfront:ListTagsForResource",
        "cloudwatch:DescribeAlarms",
        "cloudwatch:ListTagsForResource",
        "cloudwatch:GetMetricData",
        "ec2:DescribeRegions",
        "ec2:DescribeInstances",
        "ec2:DescribeInstanceTypes",
        "ec2:DescribeVolumes",
        "ec2:DescribeVpcs",
        "ec2:DescribeSubnets",
        "ec2:DescribeNetworkAcls",
        "ecs:ListClusters",
        "ecs:DescribeClusters",
        "ecs:ListServices",
        "ecs:DescribeServices",
        "ecs:ListTasks",
        "ecs:DescribeTasks",
        "ecs:ListContainerInstances",
        "ecs:DescribeContainerInstances",
        "efs:DescribeFileSystems",
        "efs:ListTagsForResource",
        "efs:DescribeLifecycleConfiguration",
        "efs:DescribeBackupPolicy",
        "efs:DescribeReplicationConfigurations",
        "efs:DescribeMountTargets",
        "efs:DescribeAccessPoints",
        "eks:ListClusters",
        "eks:DescribeCluster",
        "eks:ListNodegroups",
        "eks:DescribeNodegroup",
        "eks:ListFargateProfiles",
        "eks:DescribeFargateProfile",
        "autoscaling:DescribeAutoScalingGroups",
        "elasticloadbalancing:DescribeLoadBalancers",
        "elasticloadbalancing:DescribeTags",
        "elasticloadbalancing:DescribeListeners",
        "elasticloadbalancing:DescribeRules",
        "elasticloadbalancing:DescribeTargetGroups",
        "elasticloadbalancing:DescribeTargetHealth",
        "elasticloadbalancing:DescribeInstanceHealth",
        "lambda:ListFunctions",
        "lambda:ListTags",
        "lambda:ListEventSourceMappings",
        "lambda:GetFunctionConcurrency",
        "rds:DescribeDBInstances",
        "rds:DescribeDBEngineVersions",
        "pi:GetResourceMetrics",
        "redshift:DescribeClusters",
        "redshift-serverless:ListWorkgroups",
        "redshift-serverless:GetNamespace",
        "redshift-serverless:ListSnapshotCopyConfigurations",
        "redshift-serverless:ListTagsForResource",
        "s3:ListAllMyBuckets",
        "s3:GetBucketLocation",
        "s3:GetBucketTagging",
        "s3:GetBucketVersioning",
        "s3:GetLifecycleConfiguration",
        "ssm:DescribeInstanceInformation"
      ],
      "Resource": "*"
    }
  ]
}

Autentique-se no AWS

Para autorizar a CLI mcdc a aceder ao seu ambiente da AWS, autentique a sua conta através de um dos seguintes métodos:

Use as suas credenciais da AWS existentes

Para usar as suas credenciais da AWS existentes, execute os comandos da mcdcCLI diretamente a partir do AWS Cloud Shell. Se executar a CLI mcdc a partir do AWS Cloud Shell, pode usar as suas credenciais existentes sem uma chave de acesso. Neste caso, a CLI pode aceder ao seu ambiente da AWS para descobrir recursos da AWS, uma vez que o acesso é concedido pelas suas credenciais.mcdc

Crie uma chave de acesso para a CLI mcdc

Para criar uma chave de acesso para a CLI mcdc, siga estes passos:

  1. Crie um utilizador do IAM dedicado para interagir com a API AWS.
  2. Anexe a política de IAM que criou na secção anterior ao novo utilizador.
  3. Na consola do AWS, navegue para o utilizador do IAM que criou no passo anterior e clique em Utilizador  > Credenciais de segurança  > Criar chave de acesso  > Outro  > Seguinte  > Criar chave de acesso.

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

Armazene o ID da chave de acesso e a chave de acesso. Precisa destas informações para analisar o seu inventário da AWS.

Opcional: configure o acesso para recolher dados do sistema operativo convidado

Os dados do sistema operativo convidado enriquecem os relatórios de preços, os relatórios de licenças e as exportações de detalhes dos recursos. Estes dados também ajudam a avaliar a adequação das migrações de contentorização para o Google Kubernetes Engine, o GKE Autopilot e o Cloud Run. Se não quiser recolher dados do sistema operativo, pode ignorar esta secção.

Para recolher dados do sistema operativo convidado, a estação de trabalho que executa a CLI mcdctem de se ligar às instâncias do EC2 de destino. Certifique-se de que as seguintes portas estão abertas nas instâncias EC2 de destino:

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

Descubra recursos na sua conta da AWS

Para descobrir recursos na sua conta da AWS, siga estes passos:

  1. No terminal de linhas de comando, mude para o diretório onde transferiu a CLI mcdc.

  2. Execute a descoberta:

    AWS CloudShell

    Para descobrir recursos na sua conta da AWS, execute o seguinte comando:

    Linux

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

    Windows

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

    Substitua o seguinte:

    • AWS_SERVICE_NAMES: os tipos de recursos a descobrir. Forneça uma lista separada por vírgulas. Os valores suportados são cloudfront, dynamodb, ecs, efs, eks, elb, lambda, db (RDS), redshift, route53, s3, vm (EC2) e vpc. Se não fornecer esta flag, são descobertos todos os tipos de recursos suportados.
    • AWS_REGION: a região da AWS onde se encontram as suas instâncias do EC2 e bases de dados RDS. Esta flag é opcional. Se não fornecer esta flag, são descobertos recursos de todas as regiões da AWS ativadas.

    Chave de acesso do AWS

    Para descobrir recursos na sua conta da AWS através do ID da chave de acesso e da 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_NAMES] \
    [--region AWS_REGION]

    Windows

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

    Substitua o seguinte:

    • AWS_ACCESS_KEY_ID: o ID da chave de acesso que criou na secção Crie uma chave de acesso para a CLI.mcdc
    • AWS_ACCESS_KEY: a chave de acesso que criou na secção Crie uma chave de acesso para a CLI mcdc.
    • AWS_SERVICE_NAMES: os tipos de recursos a descobrir. Forneça uma lista separada por vírgulas. Os valores suportados são cloudfront, dynamodb, ecs, efs, eks, elb, lambda, db (RDS), redshift, route53, s3, vm (EC2) e vpc. Se não fornecer esta flag, são descobertos todos os tipos de recursos suportados.
    • AWS_REGION: a região da AWS onde se encontram os seus recursos da AWS. Esta flag é opcional. Se não fornecer esta flag, são descobertos recursos de todas as regiões da AWS ativadas.

    O resultado deve ser semelhante ao seguinte:

    [+] Collecting for AWS Account: 123456789012
    [+] Collecting RDS in region eu-north-1
    [✓] Collected 0 DB instances
    [!] No DB instances found
    [+] Collecting ECS in region eu-north-1
    [+] Successfully collected data for 2 ECS clusters in region eu-north-1
    [+] Collecting S3...
    [+] Successfully collected data for 74 S3 buckets
    [✓] Collection completed.
    
  3. Opcional: para rever os dados recolhidos, execute o seguinte comando:

    Linux

    ./mcdc discover ls

    Windows

    mcdc.exe discover ls

    O resultado deve ser semelhante ao seguinte:

    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
    
    AWS CloudFront Distribution: 2 assets were collected.
    AWS ECS Cluster: 3 assets were collected.
    AWS EFS: 5 assets were collected.
    AWS Elastic Load Balancer: 7 assets were collected.
    AWS Lambda: 9 assets were collected.
    AWS Redshift: 2 assets were collected.
    AWS S3 Bucket: 77 assets were collected.
    AWS VPC: 84 assets were collected.
    

    Opcionalmente, use a flag --asset-types para apresentar recursos de um tipo específico. Por exemplo, para apresentar apenas instâncias do EC2, execute o seguinte comando:

    Linux

    ./mcdc discover ls --asset-types=vm

    Windows

    mcdc.exe discover ls --asset-types=vm

    Quando usa a flag --asset-types, apenas são suportados os seguintes tipos de recursos:

    • db: Serviço de base de dados relacional (RDS)
    • vm: Elastic Compute Cloud (EC2)

  4. Depois de descobrir os seus recursos, para os ver, exporte os dados recolhidos para o Migration Center.

O que se segue?