Linux Virtual Machines 최대 절전 모드
이 문서의 내용
적용 대상: ✔️ Linux VM
최대 절전 모드를 사용하면 사용하지 않고 있는 VM을 일시 중지하고 컴퓨팅 비용을 절약할 수 있습니다. 다음과 같은 시나리오에 대한 효과적인 비용 관리 기능입니다.
가상 데스크톱, 개발/테스트 서버 및 VM을 연중무휴로 실행할 필요가 없는 기타 시나리오.
메모리 집약적 애플리케이션으로 인해 부팅 시간이 긴 시스템. 이러한 애플리케이션을 VM에서 초기화하고 최대 절전 모드로 전환할 수 있습니다. 그런 다음, 애플리케이션이 이미 실행되고 원하는 상태로 실행되어 필요할 때 이러한 “미리 준비된” VM을 빠르게 시작할 수 있습니다.
최대 절전 모드 작동 방식
최대 절전 모드 작동 방식을 알아보려면 최대 절전 모드 개요 를 확인합니다.
지원되는 구성
최대 절전 모드 지원은 특정 VM 크기와 OS 버전으로 제한됩니다. 최대 절전 모드를 사용하기 전에 지원되는 구성이 있는지 확인합니다.
최대 절전 모드 호환 VM 크기 목록은 최대 절전 모드 개요에서 지원되는 VM 크기 섹션 을 확인합니다.
지원되는 Linux 배포판
다음 Linux 운영 체제에서 최대 절전 모드를 지원합니다.
Ubuntu 22.04 LTS
Ubuntu 20.04 LTS
Ubuntu 18.04 LTS
Debian 11
Debian 10(백포트 커널 포함)
RHEL 9.0 이상(최소 커널 버전 5.14.0-70)
RHEL 8.3 이상(최소 커널 버전 4.18.0.240)
필수 구성 요소 및 구성 제한 사항
Linux VM용 신뢰할 수 있는 시작에서는 최대 절전 모드가 지원되지 않습니다.
일반적인 제한 사항, Azure 기능 제한 사항, 지원되는 VM 크기 및 기능 필수 조건은 최대 절전 모드 개요의 "지원 구성" 섹션 을 확인합니다.
최대 절전 모드가 사용하도록 설정된 Linux VM 만들기
VM을 최대 절전 모드로 전환하려면 먼저 VM에서 기능을 사용하도록 설정해야 합니다.
VM을 만드는 동안 최대 절전 모드를 사용하도록 설정하려면 Azure Portal, CLI, PowerShell, ARM 템플릿 및 API를 사용하면 됩니다.
Azure Portal에서 최대 절전 모드를 사용하도록 설정하려면 VM을 만드는 동안 '최대 절전 모드 사용' 상자를 선택합니다.
Azure CLI에서 최대 절전 모드를 사용하도록 설정하려면 --enable-hibernation
을 true
로 설정한 상태에서 다음 az vm create 명령을 실행하여 VM을 만듭니다.
az vm create --resource-group myRG \
--name myVM \
--image Ubuntu2204 \
--public-ip-sku Standard \
--size Standard_D2s_v5 \
--enable-hibernation true
PowerShell을 사용하여 VM을 만들 때 최대 절전 모드를 사용하도록 설정하려면 다음 명령을 실행합니다.
New-AzVm `
-ResourceGroupName 'myRG' `
-Name 'myVM' `
-Location 'East US' `
-VirtualNetworkName 'myVnet' `
-SubnetName 'mySubnet' `
-SecurityGroupName 'myNetworkSecurityGroup' `
-PublicIpAddressName 'myPublicIpAddress' `
-Size Standard_D2s_v5 `
-Image 'imageName' `
-HibernationEnabled `
-OpenPorts 80,3389
최대 절전 모드를 사용하는 VM을 만들려면 hibernationEnabled 를 true
로 설정합니다.
PUT https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/{vm-name}?api-version=2021-11-01
{
"location": "eastus",
"properties": {
"hardwareProfile": {
"vmSize": "Standard_D2s_v5"
},
"additionalCapabilities": {
"hibernationEnabled": true
}
}
}
REST에 대한 자세한 내용은 API 예제 를 확인하세요.
최대 절전 모드를 사용하도록 설정된 VM을 만든 후에는 VM이 성공적으로 최대 절전 모드로 전환되도록 게스트 OS를 구성해야 합니다.
기존 Linux VM에서 최대 절전 모드 사용
기존 VM에서 최대 절전 모드를 사용하도록 설정하려면 Azure CLI, PowerShell 또는 REST API를 사용할 수 있습니다. 계속하기 전에 게스트 OS 버전이 Azure에서 최대 절전 모드를 지원하는지 확인합니다. 자세한 내용은 지원되는 OS 버전 을 참조하세요.
Azure CLI를 사용하여 기존 VM에서 최대 절전 모드를 사용하도록 설정하려면 먼저 az vm deallocate 를 사용하여 VM 할당을 취소합니다. VM 할당이 취소되면 OS 디스크와 VM을 업데이트합니다.
OS 디스크를 업데이트하여 supportsHibernation 을 true
로 설정합니다. supportsHibernation 이 이미 true
로 설정된 경우 이 단계를 건너뛰고 다음 단계로 진행할 수 있습니다.
az disk update --resource-group myResourceGroup \
--name MyOSDisk \
--set supportsHibernation=true
최대 절전 모드를 사용하도록 VM을 업데이트합니다.
az vm update --resource-group myResourceGroup \
--name myVM \
--enable-hibernation true
VM을 시작한 다음 게스트 OS에서 최대 절전 모드 구성을 진행합니다.
az vm start --resource-group myResourceGroup \
--name myVM \
Azure PowerShell을 사용하여 기존 VM에서 최대 절전 모드를 사용하도록 설정하려면 먼저 Stop-Az vm deallocate 를 사용하여 VM을 중지합니다. VM 할당이 취소되면 OS 디스크와 VM을 업데이트합니다.
Stop-AzVM `
-ResourceGroupName 'myResourceGroup' `
-Name 'myVM'
VM이 중지되면 OS 디스크를 업데이트하여 SupportsHibernation 을 true
로 설정합니다. SupportsHibernation 이 이미 true
로 설정된 경우 이 단계를 건너뛰고 다음 단계로 진행할 수 있습니다.
$disk = Get-AzDisk `
-ResourceGroupName "myResourceGroup" `
-DiskName "myOSDisk"
$disk.SupportsHibernation = $True
Update-AzDisk `
-ResourceGroupName ‘myResourceGroup' `
-DiskName 'myOSDisk' `
-Disk $disk
VM에서 최대 절전 모드를 사용하도록 설정합니다.
$vm= Get-AzVM `
-ResourceGroupName "myResourceGroup" `
-Name "myVM"
Update-AzVM `
-ResourceGroupName "myResourceGroup" `
-VM $vm `
-HibernationEnabled
VM을 시작한 다음 게스트 OS에서 최대 절전 모드 구성을 진행합니다.
Start-AzVM `
-ResourceGroupName 'myResourceGroup' `
-Name 'myVM'
게스트 OS에서 최대 절전 모드 구성
VM 구성이 지원되는지 확인한 후 다음 두 옵션 중 하나를 사용하여 Linux VM에서 최대 절전 모드를 사용하도록 설정할 수 있습니다.
옵션 1 : LinuxHibernateExtension
옵션 2 : hibernation-setup-tool
LinuxHibernateExtension
참고 항목
hibernation-setup-tool을 이미 설치한 경우 LinuxHibernateExtension을 설치할 필요가 없습니다. 이는 Linux VM에서 최대 절전 모드를 사용하도록 설정하는 중복 방법입니다.
Azure Portal을 통해 최대 절전 모드 지원 VM을 만들면 LinuxHibernationExtension이 VM에 자동으로 설치됩니다.
확장이 누락된 경우 Linux VM에 수동으로 LinuxHibernateExtension을 설치 하여 최대 절전 모드용 게스트 OS를 구성할 수 있습니다.
참고 항목
RHEL LVM의 경우 루트 볼륨을 확장하고 스왑 파일을 만드는 데 사용할 수 있는 공간이 충분한지 확인해야 합니다. 볼륨을 확장하려면 디스크 확장 가이드를 확인합니다 .
Azure CLI를 사용하여 LinuxHibernateExtension 을 설치하려면 다음 명령을 실행합니다.
az vm extension set -n LinuxHibernateExtension --publisher Microsoft.CPlat.Core --version 1.0 \ --vm-name MyVm --resource-group MyResourceGroup --enable-auto-upgrade true
PowerShell을 사용하여 LinuxHibernateExtension을 설치하려면 다음 명령을 실행합니다.
Set-AzVMExtension -Publisher Microsoft.CPlat.Core -ExtensionType LinuxHibernateExtension -VMName <VMName> -ResourceGroupName <RGNAME> -Name "LinuxHibernateExtension" -Location <Location> -TypeHandlerVersion 1.0
참고 항목
LinuxHibernateExtension을 이미 설치한 경우 hibernation-setup-tool을 설치할 필요가 없습니다. 이는 Linux VM에서 최대 절전 모드를 사용하도록 설정하는 중복 방법입니다.
packages.microsoft.com 의 Microsoft Linux 소프트웨어 리포지토리에서 Linux VM에 hibernation-setup-tool 패키지를 설치할 수 있습니다.
Linux 소프트웨어 리포지토리를 사용하려면 Microsoft 소프트웨어용 Linux 패키지 리포지토리 의 지침을 따릅니다.
Debian 및 Ubuntu 버전에서 hibernation-setup-tool을 사용하려면 git bash를 열고 다음 명령을 실행합니다.
curl -sSL https://packages.microsoft.com/keys/microsoft.asc | sudo tee etc/apt/trusted.gpg.d/microsoft.asc
sudo apt-add-repository https://packages.microsoft.com/ubuntu/20.04/prod
sudo apt-get update
패키지를 설치하려면 git bash에서 다음 명령을 실행합니다.
sudo apt-get install hibernation-setup-tool
RHEL 버전에서 hibernation-setup-tool을 사용하려면 다음 명령을 실행합니다.
curl -sSL -O https://packages.microsoft.com/config/rhel/9/packages-microsoft-prod.rpm
sudo rpm -i packages-microsoft-prod.rpm
rm packages-microsoft-prod.rpm
sudo dnf update
sudo dnf install hibernation-setup-tool
참고 항목
RHEL LVM의 경우 루트 볼륨을 확장하고 스왑 파일을 만드는 데 사용할 수 있는 공간이 충분한지 확인해야 합니다. 볼륨을 확장하려면 디스크 확장 가이드를 확인합니다 .
패키지가 성공적으로 설치되면 Linux 게스트 OS가 최대 절전 모드로 구성됩니다. 이 VM에서 새 Azure Compute Gallery 이미지를 만들고 이미지를 사용하여 VM을 만들 수도 있습니다. 이 이미지로 만들어진 VM에는 최대 절전 모드 패키지가 사전 설치되어 있어 VM 만들기 환경이 간소화됩니다.
VM을 최대 절전 모드로 전환
최대 절전 모드를 사용하도록 설정된 VM이 생성되고 최대 절전 모드에 게스트 OS가 구성되면 Azure Portal, Azure CLI, PowerShell 또는 REST API를 통해 VM을 최대 절전 모드로 전환할 수 있습니다.
Azure Portal에서 VM을 최대 절전 모드로 전환하려면 VM 개요 페이지에서 '최대 절전 모드' 단추를 클릭합니다.
Azure CLI에서 VM을 최대 절전 모드로 전환하려면 다음 명령을 실행합니다.
az vm deallocate --resource-group TestRG --name TestVM --hibernate true
PowerShell에서 VM을 최대 절전 모드로 전환하려면 다음 명령을 실행합니다.
Stop-AzVM -ResourceGroupName "TestRG" -Name "TestVM" -Hibernate
위 명령을 실행한 후 'Y'를 입력하여 계속합니다.
Virtual machine stopping operation
This cmdlet will stop the specified virtual machine. Do you want to continue?
[Y] Yes [N] No [S] Suspend [?] Help (default is "Y"): Y
REST API를 사용하여 VM을 최대 절전 모드로 전환하려면 다음 명령을 실행합니다.
POST
https://management.azure.com/subscriptions/.../providers/Microsoft.Compute/virtualMachines/{vmName}/deallocate?hibernate=true&api-version=2021-03-01
최대 절전 모드로 전환된 VM 상태 보기
포털에서 VM 상태를 보려면 개요 페이지에서 '상태'를 선택합니다. "최대 절전 모드(할당 취소됨)"로 보고되어야 합니다.
PowerShell을 사용하여 VM 상태를 보려면 다음 명령을 실행합니다.
Get-AzVM -ResourceGroupName "testRG" -Name "testVM" -Status
출력은 다음과 같이 표시됩니다.
ResourceGroupName : testRG
Name : testVM
HyperVGeneration : V1
Disks[0] :
Name : testVM_OsDisk_1_d564d424ff9b40c987b5c6636d8ea655
Statuses[0] :
Code : ProvisioningState/succeeded
Level : Info
DisplayStatus : Provisioning succeeded
Time : 4/17/2022 2:39:51 AM
Statuses[0] :
Code : ProvisioningState/succeeded
Level : Info
DisplayStatus : Provisioning succeeded
Time : 4/17/2022 2:39:51 AM
Statuses[1] :
Code : PowerState/deallocated
Level : Info
DisplayStatus : VM deallocated
Statuses[2] :
Code : HibernationState/Hibernated
Level : Info
DisplayStatus : VM hibernated
Azure CLI를 사용하여 VM 상태를 보려면 다음 명령을 실행합니다.
az vm get-instance-view -g MyResourceGroup -n myVM
출력은 다음과 같이 표시됩니다.
{
"additionalCapabilities": {
"hibernationEnabled": true,
"ultraSsdEnabled": null
},
"hardwareProfile": {
"vmSize": "Standard_D2s_v5",
"vmSizeProperties": null
},
"instanceView": {
"assignedHost": null,
"bootDiagnostics": null,
"computerName": null,
"statuses": [
{
"code": "ProvisioningState/succeeded",
"displayStatus": "Provisioning succeeded",
"level": "Info",
"message": null,
"time": "2022-04-17T02:39:51.122866+00:00"
},
{
"code": "PowerState/deallocated",
"displayStatus": "VM deallocated",
"level": "Info",
"message": null,
"time": null
},
{
"code": "HibernationState/Hibernated",
"displayStatus": "VM hibernated",
"level": "Info",
"message": null,
"time": null
}
],
},
REST API를 사용하여 VM 상태를 보려면 다음 명령을 실행합니다.
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/instanceView?api-version=2020-12-01
출력은 다음과 같이 표시됩니다.
"statuses":
[
{
"code": "ProvisioningState/succeeded",
"level": "Info",
"displayStatus": "Provisioning succeeded",
"time": "2019-10-14T21:30:12.8051917+00:00"
},
{
"code": "PowerState/deallocated",
"level": "Info",
"displayStatus": "VM deallocated"
},
{
"code": "HibernationState/Hibernated",
"level": "Info",
"displayStatus": "VM hibernated"
}
]
최대 절전 모드로 전환된 VM 시작
중지된 VM을 시작하는 방법과 동일하게 최대 절전 모드로 전환된 VM을 시작할 수 있습니다. 이 작업은 Azure Portal, Azure CLI, PowerShell 또는 REST API를 통해 수행할 수 있습니다.
Azure Portal을 사용하여 최대 절전 모드로 전환된 VM을 시작하려면 VM 개요 페이지에서 '시작' 단추를 클릭합니다.
Azure CLI를 사용하여 최대 절전 모드로 전환된 VM을 시작하려면 다음 명령을 실행합니다.
az vm start -g MyResourceGroup -n MyVm
PowerShell을 사용하여 최대 절전 모드로 전환된 VM을 시작하려면 다음 명령을 실행합니다.
Start-AzVM -ResourceGroupName "ExampleRG" -Name "ExampleName"
REST API를 사용하여 최대 절전 모드로 전환된 VM을 시작하려면 다음 명령을 실행합니다.
POST https://management.azure.com/subscriptions/../providers/Microsoft.Compute/virtualMachines/{vmName}/start?api-version=2020-12-01
Azure Compute Gallery에서 최대 절전 모드를 사용하도록 설정된 VM 배포
Compute Gallery 이미지에서 만든 VM을 최대 절전 모드에 사용할 수도 있습니다. Gallery 이미지와 연결된 OS 버전이 Azure에서 최대 절전 모드를 지원하는지 확인합니다. 지원되는 OS 버전 목록을 참조하세요.
Gallery 이미지를 사용하여 최대 절전 모드를 사용하도록 설정된 VM을 만들려면 먼저 최대 절전 모드 속성을 사용하도록 설정된 새 이미지 정의를 만들어야 합니다. Gallery 이미지 정의에서 이 기능 속성을 사용하도록 설정하면 이미지 버전을 만들고 해당 이미지 버전을 사용하여 최대 절전 모드를 사용하도록 설정된 VM을 만들 수 있습니다.
참고 항목
특수 Windows 이미지의 경우 Azure에서 최대 절전 모드용 게스트 OS를 성공적으로 구성하려면 페이지 파일 위치를 C: 드라이브로 설정해야 합니다.
기존 VM에서 이미지 버전을 만드는 경우 먼저 페이지 파일을 OS 디스크로 이동한 다음, VM을 이미지 버전 원본으로 사용해야 합니다.
최대 절전 모드 속성을 사용하도록 설정된 이미지 정의를 만들려면 '최대 절전 모드 사용' 확인 표시를 선택합니다.
az sig image-definition create --resource-group MyResourceGroup \
--gallery-name MyGallery --gallery-image-definition MyImage \
--publisher GreatPublisher --offer GreatOffer --sku GreatSku \
--os-type linux --os-state Specialized \
--features IsHibernateSupported=true
$rgName = "myResourceGroup"
$galleryName = "myGallery"
$galleryImageDefinitionName = "myImage"
$location = "eastus"
$publisherName = "GreatPublisher"
$offerName = "GreatOffer"
$skuName = "GreatSku"
$description = "My gallery"
$IsHibernateSupported = @{Name='IsHibernateSupported';Value='True'}
$features = @($IsHibernateSupported)
New-AzGalleryImageDefinition -ResourceGroupName $rgName -GalleryName $galleryName -Name $galleryImageDefinitionName -Location $location -Publisher $publisherName -Offer $offerName -Sku $skuName -OsState "Generalized" -OsType "Windows" -Description $description -Feature $features
OS 디스크에서 최대 절전 모드를 사용하도록 설정된 VM 배포
OS 디스크에서 만든 VM을 최대 절전 모드에 사용할 수도 있습니다. OS 디스크와 연결된 OS 버전이 Azure에서 최대 절전 모드를 지원하는지 확인합니다. 지원되는 OS 버전 목록을 참조하세요.
OS 디스크를 사용하여 최대 절전 모드를 사용하도록 설정된 VM을 만들려면 OS 디스크에 최대 절전 모드 속성이 사용되도록 설정되어 있는지 확인합니다. OS 디스크에서 이 속성을 사용하도록 설정하려면 API 예제를 참조하세요. OS 디스크에서 최대 절전 모드 속성을 사용하도록 설정하면 해당 OS 디스크를 사용하여 최대 절전 모드를 사용하도록 설정된 VM을 만들 수 있습니다.
PATCH https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk?api-version=2021-12-01
{
"properties": {
"supportsHibernation": true
}
}
문제 해결
자세한 내용은 최대 절전 모드 문제 해결 가이드 및 Linux VM 최대 절전 모드 문제 해결 가이드 를 참조하세요.
FAQ
자세한 내용은 최대 절전 모드 FAQ 를 참조하세요.
다음 단계