探索 Azure 上的虛擬機器執行個體

本文說明如何使用 Migration Center 用戶資產評估器 CLI,在 Azure 帳戶上執行資產目錄探索作業。

您可以使用 mcdc CLI 收集 Azure 虛擬機器 (VM) 執行個體的相關資訊。mcdc CLI 接著會將這項資訊傳送至 Migration Center,您可以在該處繼續進行評估。

商品目錄探索期間收集的資料

mcdc CLI 會從 Azure VM 收集下列資訊:

  • 執行個體詳細資料 (ID、名稱、類型、狀態)
  • 執行個體類型詳細資料 (CPU、記憶體)
  • 作業系統詳細資料 (類型和版本)
  • 磁碟大小
  • 網路介面 (IP 和 MAC 位址)
  • 標記
  • 執行個體區域
  • 效能指標 (CPU 使用率、記憶體使用率、網路 I/O、磁碟 I/O)

事前準備

  1. 詳閱下載及執行 mcdc CLI 的需求條件。
  2. 完成下載 mcdc CLI 的步驟。 Migration Center 不支援 Azure PowerShell,請使用 Azure CLI 執行 mcdc CLI 指令。

向 Azure 進行驗證

如要允許 mcdc CLI 存取 Azure 環境,您需要使用下列其中一種方法設定存取權:

使用現有的 Azure 憑證

如要使用現有 Azure 憑證,請直接從 Azure Cloud Shell 執行 mcdc CLI 指令。如果您從 Azure Cloud Shell 執行 mcdc CLI,可以使用現有憑證,不必提供用戶端密碼。在這種情況下,mcdc CLI 可以存取您的 Azure 環境,並根據您授予的憑證探索 VM 執行個體。

為 mcdc CLI 建立用戶端密鑰

如要允許 mcdc CLI 存取 Azure 資源,請在 Azure 帳戶中將 mcdc CLI 註冊為應用程式,並建立用戶端密碼。

如要為 mcdc CLI 建立用戶端密鑰,請按照下列步驟操作:

  1. 在 Azure 入口網站中,前往「App Registration」頁面,然後按一下「New registration」。
  2. 如要新增用戶端憑證,請按一下「新增憑證或密鑰」。
  3. 如要新增用戶端密鑰,請按一下「+ New client secret」(+ 新增用戶端密鑰),然後輸入用戶端密鑰的說明和到期日。
  4. 按一下「新增」。

現在可以使用用戶端密鑰。複製用戶端密鑰值,因為稍後執行 mcdc CLI 指令時會用到。

建立自訂角色

如要確保 mcdc CLI 具備存取 Azure 資源的必要權限,請建立具備必要權限的自訂角色。

如要建立自訂角色,請按照下列步驟操作:

  1. 在 Azure 入口網站中,前往「Subscriptions」頁面,然後選取您的 Azure 訂閱項目。
  2. 按一下「訂閱 ID」即可複製。
  3. 儲存下列 JSON 範本,並將 SUBSCRIPTION_ID 替換為您在步驟 2 複製的訂閱 ID:

      {
      "properties": {
            "roleName": "Minimum permissions role",
            "description": "This role contains the bare minimum of Azure IAM permissions",
            "assignableScopes": [
                  "/subscriptions/SUBSCRIPTION_ID"
            ],
      "permissions": [
                  {
                  "actions": [
                    "Microsoft.Compute/virtualMachines/read",
                    "Microsoft.Compute/disks/read",
                    "Microsoft.Insights/MetricDefinitions/read",
                    "Microsoft.Insights/Metrics/Read",
                    "Microsoft.Network/networkInterfaces/read"
                  ],
                  "notActions": [],
                  "dataActions": [],
                  "notDataActions": []
                  }
            ]
      }
      }
      

    如要進一步瞭解權限詳細資料,請參閱權限詳細資料。

  4. 在 Azure 入口網站中,前往「存取控管 (IAM)」頁面。

  5. 如要新增自訂角色,請按一下「+ 新增」。

  6. 按一下「從 JSON 檔案開始」,然後按一下「選取檔案」,上傳您在步驟 3 建立的 JSON 檔案。

  7. 如要檢查輸入內容,請按一下「檢查 + 建立」,然後按一下「建立」,建立自訂角色。

將自訂角色指派給 mcdc CLI

建立自訂角色後,您必須將其指派給 mcdc CLI 應用程式,授予必要的權限。

如要將自訂角色指派給 mcdc CLI,請按照下列步驟操作:

  1. 在 Azure 入口網站中,前往「存取控管 (IAM)」頁面。
  2. 按一下「+ 新增」,然後按一下「新增角色指派」。
  3. 在您建立的自訂角色中 (請參閱「建立自訂角色」一節),輸入 m2vm 並選取該角色。
  4. 點選「下一步」。
  5. 按一下「+ Select members」(選取成員),搜尋您在「註冊 mcdc CLI」中註冊的 mcdc CLI,然後按一下「Select」(選取)。
  6. 如要查看及指派自訂角色給應用程式,請按一下「查看 + 指派」。

探索 Azure 上的 VM 執行個體

如要從 Azure VM 執行個體收集清查資訊,請按照下列步驟操作:

  1. 在指令列終端機中,切換至您下載 mcdc CLI 的目錄。

  2. 執行探索作業:

    Azure Cloud Shell

    如要使用現有的 Azure 憑證,從 Azure Cloud Shell 探索 VM 執行個體,請執行下列指令:

    Linux

    ./mcdc discover azure --tenant TENANT_ID 
    --host-credentials
    [--subscription SUBSCRIPTION_ID]
    [--resource-group RESOURCE_GROUP]

    Windows

    mcdc.exe discover azure --tenant TENANT_ID 
    --host-credentials
    [--subscription SUBSCRIPTION_ID]
    [--resource-group RESOURCE_GROUP]

    更改下列內容:

    • TENANT_ID:Azure Active Directory (AAD) 租戶的專屬 ID。
    • SUBSCRIPTION_ID:要探索的訂閱 ID。這個標記為選填,如果省略,系統會收集租戶中的所有訂閱項目。
    • RESOURCE_GROUP:包含您要探索的 VM 執行個體的 Azure 資源群組。這個旗標是選用的。

    用戶端密鑰

    如要從任何可存取 Azure 帳戶的電腦,使用用戶端密碼探索 VM 執行個體,請執行下列指令:

    Linux

    ./mcdc discover azure --tenant TENANT_ID 
    --client CLIENT_ID
    --secret CLIENT_SECRET
    [--subscription SUBSCRIPTION_ID]
    [--resource-group RESOURCE_GROUP]

    Windows

    mcdc.exe discover azure --tenant TENANT_ID 
    --client CLIENT_ID
    --secret CLIENT_SECRET
    [--subscription SUBSCRIPTION_ID]
    [--resource-group RESOURCE_GROUP]

    更改下列內容:

    • TENANT_ID:Azure Active Directory (AAD) 租戶的專屬 ID。
    • CLIENT_ID:您在「註冊 mcdc CLI」一節中建立的用戶端 ID。
    • :您在「註冊 mcdc CLI」一節中建立的用戶端密鑰。CLIENT_SECRET
    • SUBSCRIPTION_ID:要探索的訂閱 ID。這個標記為選填,如果省略,系統會收集租戶中的所有訂閱項目。
    • RESOURCE_GROUP:包含您要探索的 VM 執行個體的 Azure 資源群組。這個旗標是選用的。

輸出內容應如下所示:

  [+] Collecting Azure VM instances...
  Collecting region eu-west-1
  Collected 73 Azure VM instances
  [✓] Collection completed.

探索作業完成後,如要查看收集到的資料,請執行 discover ls 指令:

Linux

./mcdc discover ls

Windows

mcdc.exe discover ls

輸出內容應如下所示:

    VM Assets
    PLATFORM VM ID                        NAME              COLLECTED DATA   OS                          IP ADDRESSES
    4f7bd883-b9cd-42e8-a67d-af3ec82b7f29  abc-rhel9.0-arm   AZUREVM          Red Hat Enterprise Linux    192.0.2.1
    b5bcefcc-5565-4e45-a05a-fac055f73f14  def-rhel9.0-arm   AZUREVM          Red Hat Enterprise Linux    192.0.2.2
    sfbcesdc-8865-4e4t-a0sf-f8sfyjf75723  ghi-ol9.3         AZUREVM          Linux/UNIX                  192.0.2.3

後續步驟