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:
- Amazon CloudFront (pré-visualização)
- Amazon Elastic Compute Cloud (EC2)
- Amazon Elastic Container Service (ECS) (pré-visualização)
- Amazon Elastic File System (EFS) (pré-visualização)
- Amazon Elastic Kubernetes Service (EKS) (pré-visualização)
- Amazon Redshift (pré-visualização)
- Amazon Relational Database Service (RDS)
- Microsoft SQL Server
- MySQL
- PostgreSQL
- Amazon Simple Storage Service (S3) (pré-visualização)
- Nuvem virtual privada (VPC) da Amazon (pré-visualização)
- AWS Lambda (pré-visualização)
- Elastic Load Balancing (ELB) (pré-visualização)
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 CLImcdc
numa máquina Windows.
Dados recolhidos durante a descoberta de inventário
A CLI mcdc
recolhe as seguintes informações dos
serviços AWS suportados:
Tipo de recurso | Dados recolhidos |
---|---|
Amazon EC2 |
Clique para mostrar os dados recolhidos.
|
Amazon RDS |
Clique para mostrar os dados recolhidos.
|
Amazon S3 |
Clique para mostrar os dados recolhidos.
|
Amazon EKS |
Clique para mostrar os dados recolhidos.
|
Amazon ECS |
Clique para mostrar os dados recolhidos.
|
ELB |
Clique para mostrar os dados recolhidos.
|
AWS Lambda |
Clique para mostrar os dados recolhidos.
|
Amazon CloudFront |
Clique para mostrar os dados recolhidos.
|
Amazon EFS |
Clique para mostrar os dados recolhidos.
|
Amazon Redshift |
Clique para mostrar os dados recolhidos.
|
Amazon VPC |
Clique para mostrar os dados recolhidos.
|
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:
- Reveja os requisitos para transferir e executar a CLI
mcdc
. - Escolha onde transferir a CLI
mcdc
e conclua os passos para transferir a CLImcdc
. - 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 mcdc
CLI 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
mcdc
CLI 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 mcdc
CLI
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:
- Crie um utilizador do IAM dedicado para interagir com a API AWS.
- Anexe a política de IAM que criou na secção anterior ao novo utilizador.
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 mcdc
tem 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:
No terminal de linhas de comando, mude para o diretório onde transferiu a CLI
mcdc
.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) evpc
. 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) evpc
. 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.
- AWS_SERVICE_NAMES: os tipos de recursos a descobrir.
Forneça uma lista separada por vírgulas. Os valores suportados são
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)
Depois de descobrir os seus recursos, para os ver, exporte os dados recolhidos para o Migration Center.
O que se segue?
- Saiba como exportar dados recolhidos para o Migration Center.
- Saiba como exportar dados de inventário e desempenho.
- Saiba como gerar relatórios de CTT.