本文件說明如何使用 Migration Center 用戶資產評估器 CLI 在 Amazon Web Services (AWS) 帳戶上執行資產探索作業。
mcdc
CLI 可讓您收集 AWS 上 Amazon Elastic Compute Cloud (EC2) 執行個體和 Amazon Relational Database Service (RDS) 資料庫的相關資訊。接著,mcdc
CLI 會將收集到的資訊傳送至 Migration Center 進行評估。
在廣告空間探索期間收集的資訊
mcdc
CLI 會從 EC2 執行個體收集下列資訊:
- 執行個體類型、ID、名稱和區域。
- 機器大小,包括 CPU、記憶體和儲存空間大小。
- 作業系統名稱、版本和架構。
- 電源狀態 (開啟或關閉)。
- 網路介面和相關 IP 和 MAC 位址。
- 磁碟資訊,包括介面類型、音量類型、標籤和大小。
- 支援超執行緒。
- 每個 EC2 執行個體的成效資料:
- 每秒輸入/輸出作業數 (IOPS)
- CPU 使用率
- 網路輸入和輸出
mcdc
CLI 會從 RDS 資料庫收集下列資訊:
- 平台
- 資料庫引擎
- 名稱
- 產生的 ID
- 版本
- 版本
- 磁碟已分配的位元組
- 實體核心數量
- 記憶體位元組
- 每個資料庫的成效資料:
- 記憶體用量
- 磁碟 IOPS
- 網路輸入和輸出
- CPU 使用率
mcdc
CLI 會收集過去 30 天的指標,但不包括資料庫記憶體用量。就資料庫記憶體用量而言,AWS 預設只會儲存最多 7 天的資料,因此 mcdc
CLI 只會收集最近 7 天的資料。
支援的資料庫
系統支援下列資料庫:
- Microsoft SQL Server
- MySQL
- PostgreSQL
限制
在 AWS 帳戶上執行商品目錄探索時,mcdc
CLI 有以下限制:
- 系統不會收集下列 EC2 執行個體的資訊:
- 記憶體用量。
- 可用磁碟空間。如要收集這項資訊,請執行訪客探索。
- 您無法在 Linux 電腦上執行
mcdc
CLI,從 AWS Windows EC2 執行個體收集資料。如要從 Windows EC2 執行個體收集資訊,請在 Windows 機器上執行mcdc
CLI。
事前準備
開始探索商品目錄前,請確認您已完成下列步驟:
- 詳閱下載及執行
mcdc
CLI 的需求條件。 - 選擇下載
mcdc
CLI 的位置,然後完成下載mcdc
CLI 的步驟。 - 請確認您具備 AWS 帳戶存取權。
選擇下載 mcdc
CLI 的位置
您可以將 mcdc
CLI 下載到 Linux 和 Windows 電腦。我們建議您使用 Windows EC2 執行個體下載及執行 mcdc
CLI,因為它支援所有可用的收集方法。
您可以將 mcdc
CLI 下載至可存取目標資產的位置,例如:
- AWS CloudShell
- Linux EC2 執行個體
- Windows EC2 執行個體
- 已安裝
mcdc
CLI 且可遠端存取 AWS 帳戶的任何電腦。
如需下載 mcdc
CLI 的指示,請參閱「下載 mcdc
CLI」。
建立 AWS 身分與存取權管理政策
如要讓 mcdc
CLI 讀取 EC2 和 RDS 的清單資料,請建立具有下列權限的 AWS IAM 政策:
{
"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": "*"
}
]
}
驗證 AWS
如要讓 mcdc
CLI 存取 AWS 環境,請使用下列其中一種方法驗證帳戶:
使用現有的 AWS 憑證
如要使用現有的 AWS 憑證,請直接從 AWS CloudShell 執行 mcdc
命令列指令。如果您透過 AWS Cloud Shell 執行 mcdc
CLI,可以使用現有的憑證,而不需要存取金鑰。在這種情況下,mcdc
CLI 可根據憑證授權存取 AWS 環境,以便探索 VM 執行個體。
為 mcdc
CLI 建立存取金鑰
如要為 mcdc
CLI 建立存取金鑰,請按照下列步驟操作:
- 建立專用的 IAM 使用者,用於與 AWS API 互動。
- 將先前建立的 IAM 政策附加至新使用者。
在 AWS 主控台中,前往先前步驟中建立的 IAM 使用者,然後依序按一下「使用者」>「安全性憑證」>「建立存取金鑰」>「其他」>「下一步」>「建立存取金鑰」。
詳情請參閱「建立存取金鑰」。
儲存存取金鑰 ID 和存取金鑰。您需要這些資訊才能掃描 AWS 廣告空間。
選用:設定存取權以便收集訪客作業系統資料
客體作業系統資料可豐富定價報表、授權報表和資產詳細資料匯出內容。這項資料也能協助您評估是否適合將容器化程序遷移至 Google Kubernetes Engine、GKE Autopilot 和 Cloud Run。如果您不想收集作業系統資料,可以略過本節。
如要收集訪客作業系統資料,執行 mcdc
CLI 的工作站必須連線至目標 EC2 執行個體。請確認目標 EC2 執行個體已開啟下列通訊埠:
- Linux 機器的 22 號通訊埠 (SSH)
- Windows 電腦的 135 連接埠 (WMI)
探索 EC2 執行個體和 RDS 資料庫
如要探索 EC2 執行個體和 RDS 資料庫,請按照下列步驟操作:
在指令列終端機中,變更為下載
mcdc
CLI 的目錄。執行探索:
AWS CloudShell
如要探索 AWS 帳戶中的 EC2 執行個體和 RDS 資料庫,請執行下列指令:
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]更改下列內容:
- AWS_SERVICE_NAME:AWS 服務名稱 (
rds
或ec2
)。此標記為選用。如果您未提供此標記,系統會同時偵測到 EC2 執行個體和 RDS 資料庫。 - AWS_REGION:EC2 執行個體和 RDS 資料庫所在的 AWS 區域。這個旗標是選用的。如果您未提供這個標記,系統會找出所有已啟用 AWS 區域的資產。
AWS 存取金鑰
如要使用 AWS 存取金鑰 ID 和存取金鑰來探索 EC2 執行個體和 RDS 資料庫,請執行下列指令:
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]更改下列內容:
- AWS_ACCESS_KEY_ID:您在「為
mcdc
CLI 建立存取金鑰」一節中建立的存取金鑰 ID。 - AWS_ACCESS_KEY:您在「為
mcdc
CLI 建立存取金鑰」一節中建立的存取金鑰。 - AWS_SERVICE_NAME:AWS 服務名稱 (
rds
或ec2
)。這個標記為選用。如果您未提供此標記,系統會同時偵測到 EC2 執行個體和 RDS 資料庫。 - AWS_REGION:EC2 執行個體和 RDS 資料庫所在的 AWS 區域。這個旗標是選用的。如果您未提供這個標記,系統會找出所有已啟用 AWS 區域的資產。
輸出內容應如下所示:
[+] 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.
- AWS_SERVICE_NAME:AWS 服務名稱 (
如要查看收集到的資料,請執行下列指令:
Linux
./mcdc discover ls
Windows
mcdc.exe discover ls
您可以選擇使用
--asset-types
參數,只顯示 VM 或資料庫。舉例來說,如要只顯示 VM 執行個體,請執行discover ls --asset-types=vm
;如要只顯示資料庫,請執行discover ls --asset-types=db
。輸出內容應如下所示:
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
後續步驟
- 瞭解如何執行訪客探索。
- 瞭解如何將收集到的資料匯出至 Migration Center。