Optymalizowanie przepływności sieci dla maszyn wirtualnych platformy Azure
Maszyny wirtualne platformy Azure mają domyślne ustawienia sieciowe, które można dodatkowo zoptymalizować pod kątem przepływności sieci. W tym artykule opisano sposób optymalizacji przepływności sieci dla maszyn wirtualnych platformy Microsoft Azure z systemem Windows i Linux, w tym głównych dystrybucji, takich jak Ubuntu i Red Hat.
Maszyny wirtualne z systemem Windows
Jeśli maszyna wirtualna z systemem Windows obsługuje przyspieszoną sieć, włącz tę funkcję w celu uzyskania optymalnej przepływności. Aby uzyskać więcej informacji, zobacz Tworzenie maszyny wirtualnej z systemem Windows z przyspieszoną siecią.
W przypadku wszystkich innych maszyn wirtualnych z systemem Windows użycie skalowania po stronie odbierającej (RSS) może osiągnąć wyższą maksymalną przepływność niż maszyna wirtualna bez funkcji RSS. Funkcja RSS może być domyślnie wyłączona na maszynie wirtualnej z systemem Windows. Aby określić, czy funkcja RSS jest włączona, i włączyć ją, jeśli jest obecnie wyłączona, wykonaj następujące kroki:
Sprawdź, czy funkcja RSS jest włączona dla karty sieciowej za pomocą polecenia Get-NetAdapterRss programu PowerShell. W poniższych przykładowych danych wyjściowych zwróconych z
Get-NetAdapterRss
elementu funkcja RSS nie jest włączona.Name : Ethernet InterfaceDescription : Microsoft Hyper-V Network Adapter Enabled : False
Aby włączyć funkcję RSS, wprowadź następujące polecenie:
Get-NetAdapter | % {Enable-NetAdapterRss -Name $_.Name}
To polecenie nie ma danych wyjściowych. Polecenie zmienia ustawienia karty sieciowej. Powoduje to tymczasową utratę łączności przez około minutę. Podczas utraty łączności zostanie wyświetlone okno dialogowe Ponowne nawiązywanie połączenia. Łączność jest zwykle przywracana po trzeciej próbie.
Upewnij się, że funkcja RSS jest włączona na maszynie wirtualnej, wprowadzając
Get-NetAdapterRss
ponownie polecenie. W przypadku powodzenia zwracane są następujące przykładowe dane wyjściowe:Name : Ethernet InterfaceDescription : Microsoft Hyper-V Network Adapter Enabled : True
Maszyny wirtualne z systemem Linux
Funkcja RSS jest zawsze domyślnie włączona na maszynie wirtualnej z systemem Linux platformy Azure. Jądra systemu Linux wydane od października 2017 r. obejmują nowe opcje optymalizacji sieci, które umożliwiają maszynie wirtualnej z systemem Linux osiągnięcie wyższej przepływności sieci.
Ubuntu dla nowych wdrożeń
Jądro platformy Ubuntu Azure jest najbardziej zoptymalizowane pod kątem wydajności sieci na platformie Azure. Aby uzyskać najnowsze optymalizacje, najpierw zainstaluj najnowszą obsługiwaną wersję 18.04-LTS w następujący sposób:
"Publisher": "Canonical",
"Offer": "UbuntuServer",
"Sku": "18.04-LTS",
"Version": "latest"
Po zakończeniu tworzenia wprowadź następujące polecenia, aby pobrać najnowsze aktualizacje. Te kroki działają również w przypadku maszyn wirtualnych, na których obecnie działa jądro Ubuntu Azure.
#run as root or preface with sudo
sudo apt-get -y update
sudo apt-get -y upgrade
sudo apt-get -y dist-upgrade
Jeśli istniejące wdrożenie systemu Ubuntu ma już jądro platformy Azure, ale nie można zaktualizować z błędami, ten opcjonalny zestaw poleceń może być przydatny.
#optional steps might be helpful in existing deployments with the Azure kernel
#run as root or preface with sudo
sudo apt-get -f install
sudo apt-get --fix-missing install
sudo apt-get clean
sudo apt-get -y update
sudo apt-get -y upgrade
sudo apt-get -y dist-upgrade
Uaktualnienie jądra platformy Ubuntu Azure dla istniejących maszyn wirtualnych
Możesz uzyskać znaczną wydajność przepływności, uaktualniając jądro systemu Linux platformy Azure. Aby sprawdzić, czy masz to jądro, sprawdź wersję jądra. Powinna być taka sama lub nowsza niż w przykładzie.
#Azure kernel name ends with "-azure"
uname -r
#sample output on Azure kernel:
#4.13.0-1007-azure
Jeśli maszyna wirtualna nie ma jądra platformy Azure, numer wersji zwykle zaczyna się od "4.4". Jeśli maszyna wirtualna nie ma jądra platformy Azure, uruchom następujące polecenia jako katalog główny:
#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
Red Hat
Aby uzyskać optymalizacje, zalecamy utworzenie maszyny wirtualnej z najnowszą obsługiwaną wersją, określając następujące parametry:
"Publisher": "RedHat"
"Offer": "RHEL"
"Sku": "7-RAW"
"Version": "latest"
Zarówno nowe, jak i istniejące maszyny wirtualne mogą korzystać z instalowania najnowszych lisów. Optymalizacja przepływności jest w LIS, począwszy od wersji 4.2. Wprowadź następujące polecenia, aby pobrać i zainstalować lis:
wget https://aka.ms/lis
tar xvf lis
cd LISISO
sudo ./install.sh #or upgrade.sh if prior LIS was previously installed
Dowiedz się więcej o usługach Linux Integration Services w wersji 4.3 dla funkcji Hyper-V, wyświetlając stronę pobierania.
Następne kroki
- Wdróż maszyny wirtualne blisko siebie w celu uzyskania małych opóźnień z grupami umieszczania w pobliżu.
- Zobacz zoptymalizowany wynik z testowaniem przepustowości/przepływności dla danego scenariusza.
- Dowiedz się, jak przepustowość jest przydzielana do maszyn wirtualnych.
- Dowiedz się więcej na temat usługi Azure Virtual Network — często zadawane pytania.