2017-11-30 18 views
1

현재 자동 확장 Azure VM을 실행하는 응용 프로그램이 있습니다. 따라서 애플리케이션의 현재 버전 (예 : 1.0)이 애플리케이션의 현재로드 당 4 개의 VM에 의해 제공되고 있다고 가정합니다. 패치 업데이트가 있고 새로운 버전의 응용 프로그램 (예 : 2.0)을 릴리스하면이 새 버전의 응용 프로그램이 현재 실행중인 VM으로 어떻게 업데이트됩니까? 부하가 증가하고 새 VM이 시작되면이 모든 응용 프로그램은이 새로운 버전의 응용 프로그램 2.0을 갖지만 이전에 실행 된 4 개의 VM은이 새 버전의 응용 프로그램을 갖게됩니까? 그리고 그렇다면, 어떻게?Azure 자동 축소 그룹의 VM에 대한 응용 프로그램 버전 관리

답변

0

마켓 플레이스의 이미지 대신 소스 이미지로 사용자 정의 이미지가있는 ARM 템플릿에서 Azure VMSS를 시작해야합니다. VM에서 응용 프로그램을 업데이트하려면 응용 프로그램이 업데이트 된 VM의 사용자 지정 이미지를 만든 다음이 새 VM을 VMSS에서 Powershell로 업데이트하십시오. Azure VMSS는 Scale Set의 모든 VM을 업데이트 된 이미지로 자동 업데이트합니다. 다음은 새로운 사용자 정의 이미지로 기존 VMSS를 업데이트하기위한 코드입니다.

$rgname = "myrg" 
    $vmssname = "myvmss" 
    # get the VMSS model 
    $vmss = Get-AzureRmVmss -ResourceGroupName $rgname -VMScaleSetName $vmssname 
    # set the new version in the model data 
    $vmss.virtualMachineProfile.storageProfile.imageReference.id = $newImageReference 
    # update the virtual machine scale set model 
    Update-AzureRmVmss -ResourceGroupName $rgname -Name $vmssname -VirtualMachineScaleSet $vmss 
    # now start updating instances 
    Update-AzureRmVmssInstance -ResourceGroupName $rgname -VMScaleSetName $vmssname -InstanceId $instanceId