練習 - 使用 Azure CLI 命令準備虛擬網路以進行對等互連

已完成

假設您的公司現在已準備好實作虛擬網路對等互連。 您想要連線部署在不同虛擬網路中的系統。 若要對此計劃進行測試,首先要先建立虛擬網路,以支援公司已在 Azure 中執行的服務。 您需要三個虛擬網路:

  • Sales 虛擬網路部署在北歐。 Sales 系統使用此虛擬網路來處理與客戶互動後所新增的資料。 Sales 小組想要存取 Marketing 資料。
  • Marketing 虛擬網路部署在北歐。 Marketing 系統使用此虛擬網路。 Marketing 小組的成員會定期與 Sales 小組交談。 若要與 Sales 小組共用其資料,由於 Sales 與 Marketing 並未互相連線,因此他們必須下載資料。
  • Research 虛擬網路部署在西歐。 Research 系統使用此虛擬網路。 Research 小組的成員與 Marketing 有著合理的工作關係,但他們不希望 Sales 小組直接存取其資料。

A diagram of virtual networks you need to create.

您將建立下列資源:

虛擬網路 區域 虛擬網路位址空間 子網路 子網路位址空間
SalesVNet 北歐 10.1.0.0/16 應用程式 10.1.1.0/24
MarketingVNet 北歐 10.2.0.0/16 應用程式 10.2.1.0/24
ResearchVNet 西歐 10.3.0.0/16 資料 10.3.1.0/24

建立虛擬網路

  1. 在 Cloud Shell 中,執行下列命令為 Sales 系統建立虛擬網路和子網路:

    az network vnet create \
        --resource-group "<rgn>[sandbox resource group name]</rgn>" \
        --name SalesVNet \
        --address-prefixes 10.1.0.0/16 \
        --subnet-name Apps \
        --subnet-prefixes 10.1.1.0/24 \
        --location northeurope
    
  2. 執行下列命令為 Marketing 系統建立虛擬網路和子網路:

    az network vnet create \
        --resource-group "<rgn>[sandbox resource group name]</rgn>" \
        --name MarketingVNet \
        --address-prefixes 10.2.0.0/16 \
        --subnet-name Apps \
        --subnet-prefixes 10.2.1.0/24 \
        --location northeurope
    
  3. 執行下列命令為 Research 系統建立虛擬網路和子網路:

    az network vnet create \
        --resource-group "<rgn>[sandbox resource group name]</rgn>" \
        --name ResearchVNet \
        --address-prefixes 10.3.0.0/16 \
        --subnet-name Data \
        --subnet-prefixes 10.3.1.0/24 \
        --location westeurope
    

確認虛擬網路設定

讓我們快速瀏覽一下您所建立的內容。

  1. 在 Cloud Shell 中,執行下列命令以檢視虛擬網路:

    az network vnet list --query "[?contains(provisioningState, 'Succeeded')]" --output table
    
  2. 您應該會取得如下的輸出:

    Location     Name           EnableDdosProtection    ProvisioningState    ResourceGuid                          ResourceGroup
    -----------  -------------  ----------------------  -------------------  ------------------------------------  ------------------------------------------
    westeurope   ResearchVNet   False                   Succeeded            9fe09fe0-d6cd-4043-aba8-b5e850a91251  learn-cb081b92-bc67-49cf-a965-1aeb40a2e25c
    northeurope  SalesVNet      False                   Succeeded            8f030706-cce4-4a7b-8da2-a9f738887ffd  learn-cb081b92-bc67-49cf-a965-1aeb40a2e25c
    northeurope  MarketingVNet  False                   Succeeded            ffbf8430-b0eb-4c3d-aa94-3b3156b90bed  learn-cb081b92-bc67-49cf-a965-1aeb40a2e25c
    

在每個虛擬網路中建立虛擬機器

現在您將在每個虛擬網路中部署一些建立 Ubuntu 虛擬機器 (VM)。 這些 VM 會模擬每個虛擬網路中的服務。 在本課程模組的最後一個單元中,您將使用這些 VM 來測試虛擬網路之間的連線。

  1. 在 Cloud Shell 中,執行下列命令,將 取代 <password> 為符合 Linux VM 需求的密碼,以在 SalesVNetApps 子網路中建立 Ubuntu VM。 記下此密碼以供稍後使用。

    az vm create \
        --resource-group "<rgn>[sandbox resource group name]</rgn>" \
        --no-wait \
        --name SalesVM \
        --location northeurope \
        --vnet-name SalesVNet \
        --subnet Apps \
        --image Ubuntu2204 \
        --admin-username azureuser \
        --admin-password <password>
    

    注意

    此命令中的 --no-wait 參數可讓您在 VM 建置期間,繼續在 Cloud Shell 中工作。

  2. 執行下列命令,將 取代 <password> 為符合 Linux VM 需求的密碼,以在 MarketingVNetApps 子網路中建立另一個 Ubuntu VM。 記下此密碼以供稍後使用。 VM 可能需要一或兩分鐘的時間才能建立。

    az vm create \
        --resource-group "<rgn>[sandbox resource group name]</rgn>" \
        --no-wait \
        --name MarketingVM \
        --location northeurope \
        --vnet-name MarketingVNet \
        --subnet Apps \
        --image Ubuntu2204 \
        --admin-username azureuser \
        --admin-password <password>
    
  3. 執行下列命令,將 取代 <password> 為符合 Linux VM 需求的密碼,以在 ResearchVNet資料 子網路中建立 Ubuntu VM。 記下此密碼以供稍後使用。

    az vm create \
        --resource-group "<rgn>[sandbox resource group name]</rgn>" \
        --no-wait \
        --name ResearchVM \
        --location westeurope \
        --vnet-name ResearchVNet \
        --subnet Data \
        --image Ubuntu2204 \
        --admin-username azureuser \
        --admin-password <password>
    

    VM 可能需要幾分鐘的時間才會到達執行中狀態。

  4. 若要確認 VM 是否正在執行,請執行下列命令。 Linux watch 命令設定為每五秒重新整理一次。

    watch -d -n 5 "az vm list \
        --resource-group "<rgn>[sandbox resource group name]</rgn>" \
        --show-details \
        --query '[*].{Name:name, ProvisioningState:provisioningState, PowerState:powerState}' \
        --output table"
    

    ProvisioningState 為 [已成功]PowerState 為 [VM 執行中] 表示 VM 部署成功。

  5. 當您的 VM 正在執行時,您可以繼續。 按 Ctrl-c 停止命令,然後繼續進行練習。