다음을 통해 공유


균일한 오케스트레이션 모드의 가상 머신 확장 집합을 용량 예약 그룹에 연결

적용 대상: ✔️ 균일 확장 집합

Azure Virtual Machine Scale Sets에는 두 가지 모드가 있습니다.

  • 균일한 오케스트레이션: 이 모드에서 가상 머신 확장 집합은 VM(가상 머신) 프로필 또는 템플릿을 사용하여 원하는 용량으로 스케일 업합니다. 개별 VM 인스턴스를 관리하거나 사용자 지정하는 기능이 있지만 균일한 오케스트레이션은 동일한 VM 인스턴스를 사용합니다. 이러한 인스턴스는 가상 머신 확장 집합의 VM API를 통해 노출되며 Azure IaaS(서비스 제공 인프라) VM의 표준인 API 명령과 호환되지 않습니다. 확장 집합은 모든 실제 VM 작업을 수행하므로 예약은 가상 머신 확장 집합과 직접적으로 연결됩니다. 확장 집합이 예약과 연결되면 모든 후속 VM 할당이 예약에 대해 수행됩니다.
  • 유연한 오케스트레이션: 이 모드에서는 개별 가상 머신 확장 집합 VM 인스턴스를 보다 유연하게 관리할 수 있습니다. 확장 집합 인터페이스를 사용하는 대신 표준 Azure IaaS VM API를 사용할 수 있습니다. 유연한 오케스트레이션 모드에서 예약을 사용하려면 각 VM에서 가상 머신 확장 집합 속성과 용량 예약 속성을 모두 정의합니다.

이러한 모드에 대해 자세히 알아보려면 가상 머신 확장 집합 오케스트레이션 모드를 참조하세요.

이 콘텐츠는 균일한 오케스트레이션 모드에 적용됩니다. 유연한 오케스트레이션 모드의 경우 유연한 오케스트레이션 모드의 가상 머신 확장 집합을 용량 예약 그룹에 연결을 참조하세요.

균일한 오케스트레이션에서 확장 집합의 제한 사항

  • 균일한 오케스트레이션 모드의 가상 머신 확장 집합이 용량 예약과 호환되도록 하려면 singlePlacementGroup 속성을 False로 설정해야 합니다.
  • 다중 영역의 균일한 확장 집합에 대한 정적 고정 분산 가용성 옵션은 용량 예약에서 지원되지 않습니다. 이 옵션을 사용하려면 5개의 장애 도메인을 사용해야 합니다. 그러나 예약은 범용 크기에 대해 최대 3개의 장애 도메인만 지원합니다. 권장되는 방식은 각 영역 내에서 가능한 한 많은 장애 도메인에 VM을 분산시키는 최대 분산 옵션을 사용하는 것입니다. 필요한 경우 사용자 지정 장애 도메인 구성을 3개 이하로 구성합니다.

용량 예약을 사용할 때 몇 가지 다른 제한 사항이 있습니다. 전체 목록은 용량 예약 개요를 참조하세요.

새 가상 머신 확장 집합을 용량 예약 그룹에 연결

Important

2023년 11월부터 오케스트레이션 모드가 지정되지 않은 경우 PowerShell 및 Azure CLI를 사용하여 만들어진 가상 머신 확장 집합은 기본적으로 유연한 오케스트레이션 모드로 설정됩니다. 이 변경 사항과 취해야 할 조치에 대한 자세한 내용은 VMSS PowerShell/CLI 고객 대상 호환성이 손상되는 변경 - Microsoft 커뮤니티 허브를 참조하세요.

새 균일한 가상 머신 확장 집합을 용량 예약 그룹에 연결하려면 Microsoft.Compute 공급자에 대해 다음 PUT 요청을 만듭니다.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{VMScaleSetName}?api-version=2021-04-01

virtualMachineProfile 속성에 capacityReservationGroup 속성을 추가합니다.

{ 
    "name": "<VMScaleSetName>", 
    "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{VMScaleSetName}", 
    "type": "Microsoft.Compute/virtualMachineScaleSets", 
    "location": "eastus", 
    "sku": { 
        "name": "Standard_D2s_v3", 
        "tier": "Standard", 
        "capacity": 3 
}, 
"properties": { 
    "virtualMachineProfile": { 
        "capacityReservation": { 
            "capacityReservationGroup":{ 
                "id":"subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/CapacityReservationGroup/{CapacityReservationGroupName}" 
            } 
         }, 
        "osProfile": { 
            … 
        }, 
        "storageProfile": { 
            … 
        }, 
        "networkProfile": { 
            …,
            "extensionProfile": { 
                … 
            } 
        } 
    } 

기존 가상 머신 확장 집합을 용량 예약 그룹에 연결

기존 균일 확장 집합에 기존 용량 예약 그룹을 추가하려면 다음을 수행합니다.

  • 확장 집합을 중지하여 VM 인스턴스를 할당 취소합니다.
  • 일치하는 용량 예약 그룹을 사용하도록 확장 집합을 업데이트합니다.
  • 확장 집합을 시작합니다.

이 프로세스는 해당 지역의 용량 예약 및 확장 집합 배치가 호환되도록 합니다.

업그레이드 정책에 대한 중요 참고 사항

  • 자동 업그레이드: 이 모드에서 확장 집합 VM 인스턴스는 사용자가 추가 작업을 수행하지 않아도 용량 예약 그룹에 자동으로 연결됩니다. 확장 집합 VM이 다시 할당되면 예약된 용량을 사용하기 시작합니다.
  • 롤링 업그레이드: 이 모드에서 확장 집합 VM 인스턴스는 사용자가 추가 작업을 수행하지 않아도 용량 예약 그룹에 연결됩니다. 그러나 일괄 처리 사이에 선택적 일시 중지 시간을 두어 일괄적으로 업데이트됩니다. 확장 집합 VM이 다시 할당되면 예약된 용량을 사용하기 시작합니다.
  • 수동 업그레이드: 이 모드에서는 가상 머신 확장 집합이 용량 예약 그룹에 연결될 때 확장 집합 VM 인스턴스에 아무 일도 일어나지 않습니다. 최신 확장 집합 모델로 업그레이드하여 각 확장 집합 VM에 대해 업데이트를 수행해야 합니다.
  1. 가상 머신 확장 집합의 할당을 취소합니다.

    POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourcegroupname}/providers/Microsoft.Compute/virtualMachineScaleSets/{VMScaleSetName}/deallocate?api-version=2021-04-01
    
  2. 확장 집합 모델에 capacityReservationGroup 속성을 추가합니다. Microsoft.Compute 공급자에 대해 다음 PUT 요청을 생성합니다.

    PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourcegroupname}/providers/Microsoft.Compute/virtualMachineScaleSets/{VMScaleSetName}?api-version=2021-04-01
    

    요청 본문에 capacityReservationGroup 속성을 포함합니다.

    "location": "eastus",
    "properties": {
        "virtualMachineProfile": {
             "capacityReservation": {
                      "capacityReservationGroup": {
                            "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}"
                      }
                }
        }
    }
    

인스턴스 보기를 통해 가상 머신 확장 집합 연결 보기

균일 가상 머신 확장 집합이 용량 예약 그룹에 연결되면 모든 후속 VM 할당이 용량 예약에 대해 발생합니다. Azure는 그룹에서 일치하는 용량 예약을 자동으로 찾고 예약된 슬롯을 사용합니다.

용량 예약 그룹 인스턴스 보기는 virtualMachinesAssociatedvirtualMachinesAllocated 속성 아래의 새 확장 집합 VM을 반영합니다.

GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/CapacityReservationGroups/{CapacityReservationGroupName}?$expand=instanceview&api-version=2021-04-01 
{ 
    "name": "<CapacityReservationGroupName>", 
    "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{CapacityReservationGroupName}", 
    "type": "Microsoft.Compute/capacityReservationGroups", 
    "location": "eastus" 
}, 
    "properties": { 
        "capacityReservations": [ 
            { 
                "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{CapacityReservationGroupName}/capacityReservations/{CapacityReservationName}" 
            } 
        ], 
        "virtualMachinesAssociated": [ 
            { 
                "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{VMScaleSetName}/virtualMachines/{VirtualMachineId}" 
            } 
        ], 
        "instanceView": { 
            "capacityReservations": [ 
                { 
                    "name": "<CapacityReservationName>", 
                    "utilizationInfo": { 
                        "virtualMachinesAllocated": [ 
                            { 
                                "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{VMScaleSetName}/virtualMachines/{VirtualMachineId}" 
                            } 
                        ] 
                    },
                    "statuses": [ 
                        { 
                            "code": "ProvisioningState/succeeded", 
                            "level": "Info", 
                            "displayStatus": "Provisioning succeeded", 
                            "time": "2021-05-25T15:12:10.4165243+00:00" 
                        } 
                    ] 
                } 
            ] 
        } 
    } 
} 

지역 및 가용성 영역 고려 사항

지역 또는 하나 이상의 가용성 영역에서 가상 머신 확장 집합을 만들어 데이터 센터 수준 오류로부터 보호할 수 있습니다. 다중 영역 가상 머신 확장 집합에 대한 자세한 내용은 가용성 영역을 사용하는 가상 머신 확장 집합을 참조하세요.

Important

연결이 성공하려면 가상 머신 확장 집합의 위치(지역 및 가용성 영역)와 용량 예약 그룹이 일치해야 합니다. 지역 확장 집합의 경우 지역은 확장 집합과 용량 예약 그룹 간에 일치해야 합니다. 영역 확장 집합의 경우 지역과 영역 모두 확장 집합과 용량 예약 그룹 간에 일치해야 합니다.

확장 집합이 여러 영역에 분산되어 있으면 항상 포함된 가용성 영역에 균등하게 배포하려고 시도합니다. 이렇게 균등한 배포로 인해 용량 예약 그룹은 각 영역에서 항상 동일한 수량의 예약된 VM을 보유하게 됩니다. 이 균등한 배포가 중요한 이유를 설명하는 다음 예를 참조하세요.

이 예에서 각 영역에는 예약된 다른 수량이 있습니다. 가상 머신 확장 집합이 75개의 인스턴스로 스케일 아웃한다고 가정해 보겠습니다. 확장 집합은 항상 영역 간에 균등하게 배포하려고 시도하므로 VM 배포는 다음 예와 같아야 합니다.

예약 수량 각 영역의 확장 집합 VM 수 사용되지 않는 예약 수량 초과 할당
1 40 25 15 0
2 20 25 0 5
3 15 25 0 10

이 경우 확장 집합은 영역 1에서 15개의 사용되지 않는 인스턴스에 대해 추가 비용을 발생시킵니다. 또한 스케일 아웃은 용량 예약으로 보호되지 않는 영역 2의 VM 5개와 영역 3의 VM 10개를 사용합니다. 각 영역에 25개의 용량 인스턴스가 예약되어 있는 경우 75개의 VM 모두 용량 예약으로 보호되며 배포 시 사용되지 않은 인스턴스에 대한 추가 비용이 발생하지 않습니다.

예약이 초과 할당될 수 있으므로 확장 집합은 예약 한도를 초과하여 정상적으로 계속 확장할 수 있습니다. 유일한 차이점은 예약된 수량을 초과하여 할당된 VM에는 용량 예약 서비스 수준 약정이 적용되지 않는다는 점입니다. 자세한 내용은 용량 예약 초과 할당을 참조하세요.

다음 단계