共用方式為


使用加速網路建立 Azure 虛擬機

本文說明如何使用 Azure CLI 命令列介面,建立已啟用加速網路 (AccelNet) 的 Linux 或 Windows 虛擬機器 (VM)。

必要條件

建立虛擬網路

建立虛擬網路和 Azure Bastion 主機

下列程序會建立具有資源子網路、Azure Bastion 子網路和 Bastion 主機的虛擬網路:

  1. 在入口網站中,搜尋並選取 [虛擬網路]

  2. 在 [虛擬網路] 頁面上,選取 [+ 建立]。

  3. 在 [建立虛擬網路] 的 [基本] 索引標籤上,輸入或選取下列資訊:

    設定
    專案詳細資料
    訂用帳戶 選取您的訂用帳戶。
    資源群組 選取 [新建]
    輸入 test-rg 作為名稱。
    選取 [確定]。
    [執行個體詳細資料]
    名稱 輸入 vnet-1
    區域 選取 [美國東部 2]

    顯示在 Azure 入口網站建立虛擬網路的 [基本] 索引標籤的螢幕擷取畫面。

  4. 選取 [下一步],繼續前往 [安全性] 索引標籤。

  5. 在 [Azure Bastion] 區段中,選取 [啟用 Azure Bastion]

    Bastion 會使用您的瀏覽器,透過安全殼層 (SSH) 或遠端桌面通訊協定 (RDP) 連線至虛擬網路中的 VM (使用其私人 IP 位址)。 VM 不需要公用 IP 位址、用戶端軟體或特殊設定。 如需詳細資訊,請參閱什麼是 Azure Bastion?

    注意

    無論輸出資料使用量為何,每小時價格都是從部署 Bastion 的那一刻開始計費。 如需詳細資訊,請參閱價格SKU。 如果您要在教學課程或測試期間部署 Bastion,建議您在使用完畢後刪除此資源。

  6. Azure Bastion 中,輸入或選取下列資訊:

    設定
    Azure Bastion 主機名稱 輸入 bastion
    Azure Bastion 公用 IP 位址 選取 [建立公用 IP 位址]
    在 [名稱] 中輸入 public-ip-bastion
    選取 [確定]。

    在 Azure 入口網站建立虛擬網路時,啟用 Azure Bastion 主機選項的螢幕擷取畫面。

  7. 選取 [下一步],繼續前往 [IP 位址] 索引標籤。

  8. 在 [子網路] 的 [位址空間] 方塊中,選取 [預設] 子網路。

  9. 在 [編輯子網路] 中,輸入或選取下列資訊:

    設定
    子網路用途 保留 Default 的預設值。
    名稱 輸入 subnet-1
    IPv4
    IPv4 位址範圍 保留 10.0.0.0/16 的預設值。
    起始位址 保留預設值 [10.0.0.0]
    大小 保留 /24 (256 個位址) 的預設值。

    顯示子網路設定詳細資料的螢幕擷取畫面。

  10. 選取 [儲存]。

  11. 選取視窗底部的 [檢閱 + 建立]。 通過驗證後,選取 [建立]

使用加速網路建立網路介面

在虛擬機建立期間,會在入口網站中啟用加速網路功能。 在下一節中建立虛擬機。

建立 VM 並連結 NIC

建立測試虛擬機器

下列程序會在虛擬網路中建立名為 vm-1 的測試虛擬機器 (VM)。

  1. 在入口網站中,搜尋並選取 [虛擬機器]

  2. 在 [虛擬機器] 中,選取 [+ 建立],然後選取 [Azure 虛擬機器]

  3. 在 [建立虛擬機器] 的 [基本] 索引標籤上,輸入或選取下列資訊:

    設定
    專案詳細資料
    訂用帳戶 選取您的訂用帳戶。
    資源群組 選取 [test-rg]
    [執行個體詳細資料]
    虛擬機器名稱 輸入 vm-1
    區域 選取 [美國東部 2]
    可用性選項 選取 [不需要基礎結構備援]
    安全性類型 保留預設值 [標準]
    映像 選取 [Ubuntu Server 22.04 LTS - x64 Gen2]
    VM 架構 保留預設值 [x64]
    大小 選取大小。
    系統管理員帳戶
    驗證類型 選取 [密碼]
    使用者名稱 輸入 azureuser
    密碼 輸入密碼。
    確認密碼 請重新輸入密碼。
    輸入連接埠規則
    公用輸入連接埠 選取 [無]。
  4. 選取頁面頂端的 [網路] 索引標籤。

  5. 在 [網路] 索引標籤中,輸入或選取以下資訊:

    設定
    網路介面
    虛擬網路 選取 [vnet-1]
    子網路 選取 [subnet-1 (10.0.0.0/24)]
    公用 IP 選取 [無]。
    NIC 網路安全性群組 選取進階
    設定網路安全性群組 選取 [新建]
    輸入 nsg-1 作為名稱。
    將其餘項目保留為預設值,然後選取 [確定]
  6. 將其餘設定保留為預設值,然後選取 [檢閱 + 建立]

  7. 檢閱設定並選取 [建立]

注意

虛擬網路中的虛擬機器 (具有 Bastion 主機) 不需要公用 IP 位址。 Bastion 會提供公用 IP,而 VM 會使用私人 IP 在網路內通訊。 您可以從裝載了 Bastion 的虛擬網路中,移除任何 VM 的公用 IP。 如需詳細資訊,請參閱中斷公用 IP 位址與 Azure VM 的關聯

注意

無論是未獲指派公用 IP 位址的 VM,或位於內部基本 Azure 負載平衡器後端集區的 VM,Azure 都會為其提供預設輸出存取 IP。 預設輸出存取 IP 機制能提供無法自行設定的輸出 IP 位址。

發生下列其中一個事件時,會停用預設輸出存取 IP:

  • 公用 IP 位址會指派給 VM。
  • 無論有沒有輸出規則,都會將 VM 放在標準負載平衡器的後端集區中。
  • Azure NAT 閘道資源會指派給 VM 的子網路。

您在彈性協調流程模式中使用虛擬機器擴展集建立的 VM 沒有預設輸出存取。

如需 Azure 中輸出連線的詳細資訊,請參閱 Azure 中的預設對外存取針對輸出連線,使用來源網路位址轉譯 (SNAT)

確認加速網路已確實啟用

Linux

  1. Azure 入口網站中,搜尋並選取 [虛擬機器]

  2. 在 [虛擬機器] 頁面上選取您的新 VM。

  3. 在 VM 的 [概觀] 頁面上,選取 [連線],然後透過 Bastion 連線。

  4. 在 [Bastion 連線] 畫面中,將 [驗證類型] 變更[本機檔案] 中的 [SSH 私鑰]。

  5. 輸入您在建立虛擬機時所使用的用戶名稱。 在此範例中,使用者名為 azureuser,將 取代為您建立的用戶名稱。

  6. 在 [ 本機檔案] 中,選取資料夾圖示,然後流覽至建立 VM 時產生的私鑰檔案。 私密檔案通常名為 id_rsaid_rsa.pem

  7. 選取 Connect

  8. 新的瀏覽器視窗隨即開啟,其中包含 VM 的 Bastion 連線。

  9. 從遠端 VM 殼層中,輸入 uname -r,並確認核心版本是下列其中一個版本或更新版本:

    • Ubuntu 16.04:4.11.0-1013。
    • SLES SP3:4.4.92-6.18。
    • RHEL:3.10.0-693、2.6.32-573。 如果 Linux Integration Services 4.3+ 之前已安裝 Mellanox VF 4.5+ 版,則支援 RHEL 6.7-6.10。

    注意

    可能支援其他核心版本。 如需更新的清單,請參閱 Hyper-V 的支援 Linux 和 FreeBSD 虛擬機器上每個發行版本的相容性資料表,並確認是否支援 SR-IOV。 如需其他詳細資料,請參閱適用於 Hyper-V 和 Azure 的 Linux Integration Services 發行備註。 *

  10. 使用 lspci 命令來確認已向 VM 公開的 Mellanox VF 裝置。 傳回的輸出應該類似下列範例:

    0000:00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (AGP disabled) (rev 03)
    0000:00:07.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 01)
    0000:00:07.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
    0000:00:07.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 02)
    0000:00:08.0 VGA compatible controller: Microsoft Corporation Hyper-V virtual VGA
    0001:00:02.0 Ethernet controller: Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
    
  11. 使用 ethtool -S eth0 | grep vf_ 命令檢查虛擬函式 (VF) 上的活動。 如果加速網路已啟用且為作用中,您會收到類似下列範例的輸出:

    vf_rx_packets: 992956
    vf_rx_bytes: 2749784180
    vf_tx_packets: 2656684
    vf_tx_bytes: 1099443970
    vf_tx_dropped: 0
    
  12. 關閉與 VM 的 Bastion 連線。

Windows

一旦您在 Azure 中建立 VM,請與 VM 連線,然後確認乙太網路控制器已安裝在 Windows 中。

  1. Azure 入口網站中,搜尋並選取 [虛擬機器]

  2. 在 [虛擬機器] 頁面上選取您的新 VM。

  3. 在 VM 的 [概觀] 頁面上,選取 [連線],然後透過 Bastion 連線。

  4. 輸入您在建立 VM 時所使用的認證,然後選取 [ 連線]。

  5. 新的瀏覽器視窗隨即開啟,其中包含 VM 的 Bastion 連線。

  6. 在遠端 VM 上,以滑鼠右鍵按一下 [啟動],然後選取 [裝置管理員]

  7. 在 [裝置管理員] 視窗中,展開 [網路介面卡] 節點。

  8. 確認顯示 Mellanox ConnectX-4 Virtual Ethernet Adapter,如下圖所示︰

    Mellanox ConnectX-3 虛擬函式乙太網路卡、適用於加速網路的新網路適配器,裝置管理員

    顯示介面卡即確認已為您的 VM 啟用加速網路。

  9. 確認封包正從下列命令的輸出流經 VF 介面:

    PS C:\ > Get-NetAdapter | Where-Object InterfaceDescription –like "*Mellanox*Virtual*" | Get-NetAdapterStatistics
    
    Name                             ReceivedBytes ReceivedUnicastPackets       SentBytes SentUnicastPackets
    ----                             ------------- ----------------------       --------- ------------------
    Ethernet 2                           492447549                 347643         7468446              34991
    
    

    注意

    如果無法啟動 Mellanox 介面卡,請在遠端 VM 中開啟系統管理員命令提示,並輸入下列命令:

    netsh int tcp set global rss = enabled

  10. 關閉與 VM 的 Bastion 連線。

下一步