이 문서에서는 마이그레이션 센터 탐색 클라이언트 CLI를 사용하여 Amazon Web Services (AWS) 계정에서 인벤토리 검색을 실행하는 방법을 설명합니다.
mcdc
CLI를 사용하여 AWS 계정의 다음 애셋에 관한 정보를 수집할 수 있습니다.
- Amazon CloudFront (미리보기)
- Amazon Elastic Compute Cloud(EC2)
- Amazon Elastic Container Service (ECS) (미리보기)
- Amazon Elastic File System (EFS) (미리보기)
- Amazon Elastic Kubernetes Service (EKS) (미리보기)
- Amazon Redshift (미리보기)
- Amazon Relational Database Service (RDS)
- Microsoft SQL Server
- MySQL
- PostgreSQL
- Amazon Simple Storage Service (S3) (미리보기)
- Amazon Virtual Private Cloud (VPC) (미리보기)
- AWS Lambda (미리보기)
- Elastic Load Balancing (ELB) (미리보기)
그런 다음 mcdc
CLI는 수집된 정보를 평가를 완료할 수 있는 Migration Center로 전송합니다.
제한사항
AWS 계정에서 인벤토리 검색을 실행할 때 mcdc
CLI에는 다음과 같은 제한사항이 있습니다.
- EC2 및 RDS 애셋 유형만 TCO 보고서에 포함됩니다. Migration Center 외부에서 모든 애셋 유형을 내보내고 분석하려면 인벤토리를 내보내세요.
- EC2 인스턴스의 다음 정보는 수집되지 않습니다.
- 메모리 사용량이 수집되지 않습니다. 이 정보를 수집하려면 EC2 인스턴스에 Amazon CloudWatch 에이전트가 설치되고 구성되어 있어야 합니다.
- 여유 디스크 공간 이 정보를 수집하려면 게스트 검색을 실행하세요.
- Linux 머신에서
mcdc
CLI를 실행하여 AWS Windows EC2 인스턴스에서 데이터를 수집할 수는 없습니다. Windows EC2 인스턴스에서 정보를 수집하려면 Windows 머신에서mcdc
CLI를 실행하세요.
인벤토리 검색 중에 수집된 데이터
mcdc
CLI는 지원되는 AWS 서비스에서 다음 정보를 수집합니다.
애셋 유형 | 데이터 수집 완료 |
---|---|
Amazon EC2 |
클릭하여 수집된 데이터를 표시합니다.
|
Amazon RDS |
클릭하여 수집된 데이터를 표시합니다.
|
Amazon S3 |
클릭하여 수집된 데이터를 표시합니다.
|
Amazon EKS |
클릭하여 수집된 데이터를 표시합니다.
|
Amazon ECS |
클릭하여 수집된 데이터를 표시합니다.
|
ELB |
클릭하여 수집된 데이터를 표시합니다.
|
AWS Lambda |
클릭하여 수집된 데이터를 표시합니다.
|
Amazon CloudFront |
클릭하여 수집된 데이터를 표시합니다.
|
Amazon EFS |
클릭하여 수집된 데이터를 표시합니다.
|
Amazon Redshift |
클릭하여 수집된 데이터를 표시합니다.
|
Amazon VPC |
클릭하여 수집된 데이터를 표시합니다.
|
mcdc
CLI는 데이터베이스 메모리 사용량을 제외한 지난 30일 동안의 측정항목을 수집합니다. 데이터베이스 메모리 사용량의 경우 AWS는 기본적으로 최대 7일의 데이터만 저장하므로 mcdc
CLI는 지난 7일 동안의 데이터만 수집합니다.
시작하기 전에
인벤토리 검색을 시작하기 전에 다음 단계를 완료하세요.
mcdc
CLI 다운로드 및 실행 요구사항을 검토합니다.mcdc
CLI를 다운로드할 위치를 선택하고mcdc
CLI를 다운로드하는 단계를 완료합니다.- AWS 계정에 액세스할 수 있는지 확인합니다.
mcdc
CLI를 다운로드할 위치 선택
Linux 및 Windows 머신 모두에 mcdc
CLI를 다운로드할 수 있습니다. 사용 가능한 모든 수집 방법을 지원하므로 Windows EC2 인스턴스를 사용하여 mcdc
CLI를 다운로드하고 실행하는 것이 좋습니다.
다음과 같이 대상 애셋에 액세스할 수 있는 위치에 mcdc
CLI를 다운로드할 수 있습니다.
- AWS CloudShell
- Linux EC2 인스턴스
- Windows EC2 인스턴스
mcdc
CLI를 설치하고 AWS 계정에 원격으로 액세스할 수 있는 컴퓨터
mcdc
CLI 다운로드 안내는 mcdc
CLI 다운로드를 참고하세요.
AWS IAM 정책 만들기
mcdc
CLI가 AWS 애셋 인벤토리 데이터를 읽을 수 있도록 승인하려면 다음 권한으로 AWS IAM 정책을 만드세요.
{
"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": "*"
}
]
}
AWS에 인증
mcdc
CLI가 AWS 환경에 액세스하도록 승인하려면 다음 방법 중 하나를 사용하여 계정을 인증하세요.
기존 AWS 사용자 인증 정보 사용
기존 AWS 사용자 인증 정보를 사용하려면 AWS Cloud Shell에서 직접 mcdc
CLI 명령어를 실행하세요.
AWS Cloud Shell에서 mcdc
CLI를 실행하는 경우 액세스 키 없이 기존 사용자 인증 정보를 사용할 수 있습니다. 이 경우 mcdc
CLI는 사용자 인증 정보에 의해 액세스 권한이 부여되므로 AWS 환경에 액세스하여 AWS 애셋을 검색할 수 있습니다.
mcdc
CLI의 액세스 키 만들기
mcdc
CLI의 액세스 키를 만들려면 다음 단계를 따르세요.
- AWS API와 상호작용할 전용 IAM 사용자를 만듭니다.
- 이전 섹션에서 만든 IAM 정책을 새 사용자에게 연결합니다.
AWS 콘솔에서 이전 단계에서 만든 IAM 사용자로 이동하여 사용자 > 보안 사용자 인증 정보 > 액세스 키 만들기 > 기타 > 다음 > 액세스 키 만들기를 클릭합니다.
자세한 내용은 액세스 키 만들기를 참고하세요.
액세스 키 ID와 액세스 키를 저장합니다. AWS 인벤토리를 검사하려면 이 정보가 필요합니다.
선택사항: 게스트 운영체제 데이터를 수집할 액세스 권한 설정
게스트 운영체제 데이터는 가격 책정 보고서, 라이선스 보고서, 애셋 세부정보 내보내기를 보강합니다. 이 데이터는 Google Kubernetes Engine, GKE Autopilot, Cloud Run으로의 컨테이너화 마이그레이션의 적합성을 평가하는 데도 도움이 됩니다. 운영체제 데이터를 수집하지 않으려면 이 섹션을 건너뛰면 됩니다.
게스트 운영체제 데이터를 수집하려면 mcdc
CLI를 실행하는 워크스테이션이 타겟 EC2 인스턴스에 연결되어야 합니다. 대상 EC2 인스턴스에서 다음 포트가 열려 있는지 확인합니다.
- Linux 머신의 포트 22 (SSH)
- Windows 컴퓨터의 포트 135 (WMI)
AWS 계정의 애셋 검색
AWS 계정에서 애셋을 검색하려면 다음 단계를 따르세요.
명령줄 터미널에서
mcdc
CLI를 다운로드한 디렉터리로 변경합니다.검색 실행:
AWS CloudShell
AWS 계정에서 애셋을 검색하려면 다음 명령어를 실행합니다.
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]다음을 바꿉니다.
- AWS_SERVICE_NAMES: 검색할 애셋의 유형입니다.
쉼표로 구분된 목록을 제공하세요. 지원되는 값은
cloudfront
,dynamodb
,ecs
,efs
,eks
,elb
,lambda
,db
(RDS),redshift
,route53
,s3
,vm
(EC2),vpc
입니다. 이 플래그를 제공하지 않으면 지원되는 모든 애셋 유형이 검색됩니다. - AWS_REGION: EC2 인스턴스와 RDS 데이터베이스가 있는 AWS 리전입니다. 이 플래그는 선택사항입니다. 이 플래그를 제공하지 않으면 사용 설정된 모든 AWS 리전의 애셋이 검색됩니다.
AWS 액세스 키
AWS 액세스 키 ID와 액세스 키를 사용하여 AWS 계정의 애셋을 검색하려면 다음 명령어를 실행하세요.
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]다음을 바꿉니다.
- AWS_ACCESS_KEY_ID:
mcdc
CLI용 액세스 키 만들기 섹션에서 만든 액세스 키 ID입니다. - AWS_ACCESS_KEY:
mcdc
CLI용 액세스 키 만들기 섹션에서 만든 액세스 키 - AWS_SERVICE_NAMES: 검색할 애셋의 유형입니다.
쉼표로 구분된 목록을 제공하세요. 지원되는 값은
cloudfront
,dynamodb
,ecs
,efs
,eks
,elb
,lambda
,db
(RDS),redshift
,route53
,s3
,vm
(EC2),vpc
입니다. 이 플래그를 제공하지 않으면 지원되는 모든 애셋 유형이 검색됩니다. - AWS_REGION: AWS 애셋이 있는 AWS 리전입니다. 이 플래그는 선택사항입니다. 이 플래그를 제공하지 않으면 사용 설정된 모든 AWS 리전의 애셋이 검색됩니다.
출력은 다음과 비슷하게 표시됩니다.
[+] 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: 검색할 애셋의 유형입니다.
쉼표로 구분된 목록을 제공하세요. 지원되는 값은
(선택사항) 수집된 데이터를 검토하려면 다음 명령어를 실행합니다.
Linux
./mcdc discover ls
Windows
mcdc.exe discover ls
출력은 다음과 비슷하게 표시됩니다.
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.
원하는 경우
--asset-types
플래그를 사용하여 특정 유형의 애셋을 표시합니다. 예를 들어 EC2 인스턴스만 표시하려면 다음 명령어를 실행합니다.Linux
./mcdc discover ls --asset-types=vm
Windows
mcdc.exe discover ls --asset-types=vm
--asset-types
플래그를 사용하는 경우 다음 확장 소재 유형만 지원됩니다.db
: 관계형 데이터베이스 서비스 (RDS)vm
: Elastic Compute Cloud (EC2)
애셋을 탐색한 후 애셋을 보려면 수집된 데이터를 Migration Center로 내보내세요.
다음 단계
- 수집된 데이터를 Migration Center로 내보내는 방법 알아보기
- 인벤토리 및 실적 데이터를 내보내는 방법 알아보기
- TCO 보고서를 생성하는 방법을 알아봅니다.