最佳化 Azure 虛擬機器的網路輸送量
Azure 虛擬機 (VM) 具有可進一步優化網路輸送量的預設網路設定。 本文說明如何優化 Windows 和 Linux VM 的網路輸送量,包括 Ubuntu 和 Red Hat 等主要散發套件。
Windows 虛擬機器
如果您的 Windows VM 支援 加速網路功能,請啟用該功能以達到最佳輸送量。 如需詳細資訊,請參閱建立具有加速網路功能的 Windows VM。
對於所有其他 Windows VM,使用接收端調整 (RSS) 可以達到比沒有 RSS 的 VM 更高的最大輸送量。 根據預設,Windows VM 中可能會停用 RSS。 若要判斷 RSS 是否已啟用,並在目前停用時加以啟用,請遵循下列步驟:
使用 Get-NetAdapterRss PowerShell 命令來查看是否已針對網路介面卡啟用 RSS。 在下列範例中,不會啟用從 RSS 傳回的
Get-NetAdapterRss
輸出。Name : Ethernet InterfaceDescription : Microsoft Hyper-V Network Adapter Enabled : False
若要啟用 RSS,請輸入下列命令:
Get-NetAdapter | % {Enable-NetAdapterRss -Name $_.Name}
此命令沒有任何輸出。 命令會變更網路適配器 (NIC) 設定。 這會導致暫時性連線中斷約一分鐘。 連線中斷時隨即出現 [正在重新連線] 對話方塊。 第三次嘗試後,連線通常就會恢復。
再次輸入
Get-NetAdapterRss
命令以確認 VM 中已啟用 RSS。 如果成功,則會傳回下列範例輸出:Name : Ethernet InterfaceDescription : Microsoft Hyper-V Network Adapter Enabled : True
Linux 虛擬機器
根據預設,Azure Linux VM 中一律會啟用 RSS。 2017 年 10 月之後發行的 Linux 核心包含新的網路最佳化選項,它們可讓 Linux VM 達到更高的網路輸送量。
新部署的 Ubuntu
Azure 上的 Ubuntu 核心最適合 Azure 上的網路效能。 目前,Canonical 的所有 Ubuntu 映像預設都會安裝優化的 Azure 核心。
使用下列命令,確定您使用的是 Azure 核心,其會在版本結尾識別 -azure
。
uname -r
#sample output on Azure kernel:
6.8.0-1017-azure
現有 VM 的 Azure 核心升級 Ubuntu
藉由升級至 Azure Linux 核心,您可獲得顯著的輸送量效能。 若要確認您是否擁有此核心,請檢查您的核心版本。 版本應與範例相同或更新。
#Azure kernel name ends with "-azure"
uname -r
#sample output on Azure kernel:
#4.13.0-1007-azure
如果您的 VM 沒有 Azure 核心,版本號碼通常會以 4.4 開頭。 如果 VM 沒有 Azure 核心,請以 root 身分執行下列命令:
#run as root or preface with sudo
sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get dist-upgrade -y
sudo apt-get install "linux-azure"
sudo reboot
其他散發套件
大部分的新式散發套件應具有比 4.19+ 更新的核心有顯著的改善。 檢查目前的核心版本,以確定您正在執行較新的核心。
相關內容
- 使用鄰近放置群組部署彼此接近的 VM 以達到低延遲。
- 針對您的案例查看測試頻寬/輸送量,以取得最佳化的結果。
- 了解如何將頻寬配置給虛擬機器。
- 深入了解 Azure 虛擬網路常見問題集。