Azure Virtual Machine에 대한 네트워크 처리량 최적화
Azure VM(Virtual Machine)에는 네트워크 처리량에 대해 추가로 최적화할 수 있는 기본 네트워크 설정이 있습니다. 이 문서에서는 Ubuntu, CentOS 및 Red Hat과 같은 주요 배포판을 비롯한 Microsoft Azure Windows 및 Linux VM에 대해 네트워크 처리량을 최적화하는 방법을 설명합니다.
Windows 가상 머신
Windows 가상 머신이 가속화된 네트워킹을 지원하는 경우 최적의 처리량을 위해 해당 기능을 사용하도록 설정합니다. 자세한 내용은 가속화된 네트워킹을 사용하여 Windows VM 만들기를 참조하세요.
다른 모든 Windows 가상 머신의 경우 RSS(수신측 배율)를 사용하면 RSS를 사용하지 않는 VM보다 더 높은 최대 처리량에 도달할 수 있습니다. RSS는 Windows VM에서 기본적으로 사용되지 않도록 설정되어 있을 수 있습니다. RSS를 사용할 수 있는지 확인하고, 현재 사용되지 않는 경우 사용하도록 설정하려면 다음 단계를 수행합니다.
Get-NetAdapterRss PowerShell 명령을 사용하여 네트워크 어댑터에 대해 RSS를 사용하도록 설정되어 있는지 확인합니다.
Get-NetAdapterRss
에서 반환된 다음 예시 출력에서 RSS는 사용되도록 설정되어 있지 않습니다.Name : Ethernet InterfaceDescription : Microsoft Hyper-V Network Adapter Enabled : False
RSS를 사용하도록 설정하려면 다음 명령을 입력합니다.
Get-NetAdapter | % {Enable-NetAdapterRss -Name $_.Name}
이 명령에는 출력이 없습니다. 이 명령은 NIC 설정을 변경합니다. 그로 인해 약 1분 동안 일시적으로 연결이 끊깁니다. 연결이 끊긴 동안 다시 연결 중 대화 상자가 나타납니다. 일반적으로 세 번째 시도 후 연결이 복원합니다.
Get-NetAdapterRss
명령을 다시 입력하여 VM에서 RSS가 사용되도록 설정되어 있는지 확인합니다. 성공하면 다음 예제 출력이 반환됩니다.Name : Ethernet InterfaceDescription : Microsoft Hyper-V Network Adapter Enabled : True
Linux 가상 머신
RSS는 Azure Linux VM에 기본적으로 항상 사용되도록 설정됩니다. 2017년 10월 이후에 출시된 Linux 커널에는 Linux VM이 더 높은 네트워크 처리량을 얻도록 하는 새로운 네트워크 최적화 옵션이 포함되어 있습니다.
새 배포에 대한 Ubuntu
Ubuntu Azure 커널은 Azure의 네트워크 성능에 가장 적합합니다. 최신 최적화 기능을 사용하려면 먼저 다음과 같이 지원되는 최신 버전의 18.04-LTS를 설치합니다.
"Publisher": "Canonical",
"Offer": "UbuntuServer",
"Sku": "18.04-LTS",
"Version": "latest"
생성이 완료되면 다음 명령을 입력하여 최신 업데이트를 받습니다. 이 단계는 현재 Ubuntu Azure 커널을 실행 중인 VM에도 유효합니다.
#run as root or preface with sudo
sudo apt-get -y update
sudo apt-get -y upgrade
sudo apt-get -y dist-upgrade
기존 Ubuntu 배포에 이미 Azure 커널이 있지만 오류로 인해 업데이트하지 못하는 경우 이 선택적 명령 집합이 유용할 수 있습니다.
#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
기존 VM에 대한 Ubuntu Azure 커널 업그레이드
Azure Linux 커널로 업그레이드하면 처리량 성능을 대폭 개선할 수 있습니다. 이 커널이 있는지 확인하려면 커널 버전을 확인합니다. 예제와 같거나 그 이후 버전이어야 합니다.
#Azure kernel name ends with "-azure"
uname -r
#sample output on Azure kernel:
#4.13.0-1007-azure
가상 머신에 Azure 커널이 없는 경우 버전 번호는 일반적으로 "4.4"로 시작됩니다. VM에 Azure 커널이 없는 경우 루트로 다음 명령을 실행합니다.
#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
CentOS
최신 최적화 기능을 사용하려면 다음 매개 변수를 지정하여 지원되는 최신 버전으로 가상 머신을 생성하는 것이 좋습니다.
"Publisher": "OpenLogic",
"Offer": "CentOS",
"Sku": "7.7",
"Version": "latest"
새 VM과 기존 VM 모두 최신 LIS(Linux Integration Services)를 설치하면 이점을 얻을 수 있습니다. 처리량 최적화 기능은 LIS 4.2.2-2부터 포함됩니다. 최신 버전에는 추가 개선 사항이 포함되어 있습니다. 다음 명령을 입력하여 최신 LIS를 설치합니다.
sudo yum update
sudo reboot
sudo yum install microsoft-hyper-v
Red Hat
최적화 기능을 사용하려면 다음 매개 변수를 지정하여 지원되는 최신 버전으로 가상 머신을 생성하는 것이 좋습니다.
"Publisher": "RedHat"
"Offer": "RHEL"
"Sku": "7-RAW"
"Version": "latest"
새 VM과 기존 VM 모두 최신 LIS를 설치하면 이점을 얻을 수 있습니다. 처리량 최적화 기능은 LIS 4.2부터 포함됩니다. 다음 명령을 입력하여 LIS를 다운로드한 후 설치합니다.
wget https://aka.ms/lis
tar xvf lis
cd LISISO
sudo ./install.sh #or upgrade.sh if prior LIS was previously installed
Hyper-V용 Linux Integration Services 버전 4.3에 대한 자세한 내용은 다운로드 페이지를 확인하세요.
다음 단계
- 짧은 대기 시간을 위해 근접 배치 그룹을 사용하여 VM을 서로 가깝게 배포합니다.
- 시나리오에 맞는 대역폭/처리량 테스트를 통해 최적화된 결과를 확인합니다.
- 가상 머신에 대역폭이 할당되는 방법에 대해 알아봅니다.
- Azure Virtual Network 질문과 대답에 대해 자세히 알아봅니다.