En este documento, se describe cómo ejecutar un descubrimiento de inventario en tu cuenta de Amazon Web Services (AWS) con la CLI del cliente de descubrimiento de Migration Center.
Puedes usar la CLI de mcdc
para recopilar información sobre los siguientes recursos de tu cuenta de AWS:
- Amazon CloudFront (vista previa)
- Amazon Elastic Compute Cloud (EC2)
- Amazon Elastic Container Service (ECS) (versión preliminar)
- Amazon Elastic File System (EFS) (versión preliminar)
- Amazon Elastic Kubernetes Service (EKS) (versión preliminar)
- Amazon Redshift (vista previa)
- Amazon Relational Database Service (RDS)
- Microsoft SQL Server
- MySQL
- PostgreSQL
- Amazon Simple Storage Service (S3) (vista previa)
- Amazon Virtual Private Cloud (VPC) (versión preliminar)
- AWS Lambda (versión preliminar)
- Elastic Load Balancing (ELB) (versión preliminar)
Luego, la CLI de mcdc
envía la información recopilada a Migration Center, donde puedes completar la evaluación.
Limitaciones
Cuando ejecutas un descubrimiento de inventario en tu cuenta de AWS, la CLI de mcdc
tiene las siguientes limitaciones:
- En el informe de TCO, solo se incluyen los tipos de recursos de EC2 y RDS. Para exportar y analizar todos los tipos de recursos fuera de Migration Center, exporta tu inventario.
- No se recopila la siguiente información de las instancias de EC2:
- No se recopila el uso de memoria. Para recopilar esta información, asegúrate de que el agente de Amazon CloudWatch esté instalado y configurado en tus instancias de EC2.
- Espacio libre en el disco Para recopilar esta información, ejecuta un descubrimiento de invitado.
- No puedes ejecutar la CLI de
mcdc
en máquinas Linux para recopilar datos de instancias de EC2 de Windows de AWS. Para recopilar información de instancias de EC2 de Windows, ejecuta la CLI demcdc
en una máquina de Windows.
Datos recopilados durante el descubrimiento del inventario
La CLI de mcdc
recopila la siguiente información de los servicios de AWS compatibles:
Tipo de recurso | Datos recopilados |
---|---|
Amazon EC2 |
Haz clic para mostrar los datos recopilados.
|
Amazon RDS |
Haz clic para mostrar los datos recopilados.
|
Amazon S3 |
Haz clic para mostrar los datos recopilados.
|
Amazon EKS |
Haz clic para mostrar los datos recopilados.
|
Amazon ECS |
Haz clic para mostrar los datos recopilados.
|
ELB |
Haz clic para mostrar los datos recopilados.
|
AWS Lambda |
Haz clic para mostrar los datos recopilados.
|
Amazon CloudFront |
Haz clic para mostrar los datos recopilados.
|
Amazon EFS |
Haz clic para mostrar los datos recopilados.
|
Amazon Redshift |
Haz clic para mostrar los datos recopilados.
|
VPC de Amazon |
Haz clic para mostrar los datos recopilados.
|
La CLI de mcdc
recopila métricas de los últimos 30 días, excepto el uso de memoria de la base de datos. En el caso del uso de memoria de la base de datos, AWS solo guarda hasta 7 días de datos de forma predeterminada, por lo que la CLI de mcdc
recopila datos solo de los últimos 7 días.
Antes de comenzar
Antes de comenzar la detección de inventario, completa los siguientes pasos:
- Revisa los requisitos para descargar y ejecutar la CLI de
mcdc
. - Elige dónde descargar la CLI de
mcdc
y completa los pasos para descargar la CLI demcdc
. - Asegúrate de tener acceso a tu cuenta de AWS.
Elige dónde descargar la CLI de mcdc
Puedes descargar la CLI de mcdc
en máquinas Linux y Windows. Recomendamos usar una instancia de EC2 de Windows para descargar y ejecutar la CLI de mcdc
, ya que admite todos los métodos de recopilación disponibles.
Puedes descargar la CLI de mcdc
en una ubicación con acceso a tus recursos de destino, como las siguientes:
- AWS CloudShell
- Una instancia de EC2 de Linux
- Una instancia EC2 de Windows
- Cualquier computadora en la que hayas instalado la CLI de
mcdc
y tengas acceso remoto a tu cuenta de AWS
Para obtener instrucciones para descargar la CLI de mcdc
, consulta Descarga la CLI de mcdc
.
Crea una política de IAM de AWS
Para autorizar a la CLI de mcdc
a leer los datos del inventario de activos de AWS, crea una política de IAM de AWS con los siguientes permisos:
{
"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": "*"
}
]
}
Autenticación en AWS
Para autorizar a la CLI de mcdc
a acceder a tu entorno de AWS, autentica tu cuenta con uno de los siguientes métodos:
Usa tus credenciales de AWS existentes
Para usar tus credenciales existentes de AWS, ejecuta los comandos de la CLI de mcdc
directamente desde AWS Cloud Shell.
Si ejecutas la CLI de mcdc
desde AWS Cloud Shell, puedes usar tus credenciales existentes sin una clave de acceso. En este caso, la CLI de mcdc
puede acceder a tu entorno de AWS para descubrir activos de AWS, ya que tus credenciales otorgan el acceso.
Crea una clave de acceso para la CLI de mcdc
Para crear una clave de acceso para la CLI de mcdc
, sigue estos pasos:
- Crea un usuario de IAM dedicado para interactuar con la API de AWS.
- Adjunta la política de IAM que creaste en la sección anterior a tu usuario nuevo.
En la consola de AWS, navega hasta el usuario de IAM que creaste en el paso anterior y haz clic en Usuario > Credenciales de seguridad > Crear clave de acceso > Otro > Siguiente > Crear clave de acceso.
Para obtener más información, consulta Crea una clave de acceso.
Almacena el ID de clave de acceso y la clave de acceso. Necesitas esta información para analizar tu inventario de AWS.
Opcional: Configura el acceso para recopilar datos del sistema operativo invitado
Los datos del sistema operativo invitado enriquecen los informes de precios, los informes de licencias y las exportaciones de detalles de los recursos. Estos datos también ayudan a evaluar la idoneidad de las migraciones de creación de contenedores a Google Kubernetes Engine, GKE Autopilot y Cloud Run. Si no quieres recopilar datos del sistema operativo, puedes omitir esta sección.
Para recopilar datos del sistema operativo invitado, la estación de trabajo que ejecuta la CLI de mcdc
debe conectarse a las instancias de EC2 de destino. Asegúrate de que los siguientes puertos estén abiertos en las instancias de EC2 de destino:
- Puerto 22 (SSH) para máquinas Linux
- Puerto 135 (WMI) para máquinas Windows
Descubre recursos en tu cuenta de AWS
Para descubrir recursos en tu cuenta de AWS, sigue estos pasos:
En la terminal de la línea de comandos, cambia al directorio en el que descargaste la CLI de
mcdc
.Ejecuta el descubrimiento:
AWS CloudShell
Para descubrir activos en tu cuenta de AWS, ejecuta el siguiente 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]Reemplaza lo siguiente:
- AWS_SERVICE_NAMES: Son los tipos de recursos que se pueden descubrir.
Proporciona una lista separada por comas. Los valores admitidos son
cloudfront
,dynamodb
,ecs
,efs
,eks
,elb
,lambda
,db
(RDS),redshift
,route53
,s3
,vm
(EC2) yvpc
. Si no proporcionas esta marca, se detectarán todos los tipos de recursos admitidos. - AWS_REGION: Es la región de AWS en la que se encuentran tus instancias de EC2 y bases de datos de RDS. Esta marca es opcional. Si no proporcionas esta marca, se detectarán los recursos de todas las regiones de AWS habilitadas.
Clave de acceso de AWS
Para descubrir activos en tu cuenta de AWS con tu ID de clave de acceso y clave de acceso de AWS, ejecuta el siguiente 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]Reemplaza lo siguiente:
- AWS_ACCESS_KEY_ID: Es el ID de la clave de acceso que creaste en la sección Crea una clave de acceso para la CLI de
mcdc
. - AWS_ACCESS_KEY: Es la clave de acceso que creaste en la sección Crea una clave de acceso para la CLI de
mcdc
. - AWS_SERVICE_NAMES: Son los tipos de recursos que se pueden descubrir.
Proporciona una lista separada por comas. Los valores admitidos son
cloudfront
,dynamodb
,ecs
,efs
,eks
,elb
,lambda
,db
(RDS),redshift
,route53
,s3
,vm
(EC2) yvpc
. Si no proporcionas esta marca, se detectarán todos los tipos de recursos admitidos. - AWS_REGION: La región de AWS en la que se encuentran tus activos de AWS. Esta marca es opcional. Si no proporcionas esta marca, se detectarán los recursos de todas las regiones de AWS habilitadas.
El resultado debería ser similar al siguiente:
[+] 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: Son los tipos de recursos que se pueden descubrir.
Proporciona una lista separada por comas. Los valores admitidos son
Opcional: Para revisar los datos recopilados, ejecuta el siguiente comando:
Linux
./mcdc discover ls
Windows
mcdc.exe discover ls
El resultado debería ser similar al siguiente:
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.
De manera opcional, usa la marca
--asset-types
para mostrar activos de un tipo específico. Por ejemplo, para mostrar solo las instancias de EC2, ejecuta el siguiente comando:Linux
./mcdc discover ls --asset-types=vm
Windows
mcdc.exe discover ls --asset-types=vm
Cuando uses la marca
--asset-types
, solo se admitirán los siguientes tipos de recursos:db
: Relational Database Service (RDS)vm
: Elastic Compute Cloud (EC2)
Después de descubrir tus activos, para verlos, exporta los datos recopilados a Migration Center.
¿Qué sigue?
- Obtén información para exportar los datos recopilados a Migration Center.
- Obtén información para exportar datos de inventario y rendimiento.
- Obtén más información para generar informes de TCO.