Skip to content

Commit 4114595

Browse files
authored
Merge pull request #275330 from MicrosoftDocs/release-rolling-upgrades-on-flex
Standing PR for release of Rolling Upgrades on VMSS Flex
2 parents 131ad04 + de6d313 commit 4114595

7 files changed

+88
-63
lines changed

articles/virtual-machine-scale-sets/virtual-machine-scale-sets-change-upgrade-policy.md

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,30 @@
11
---
2-
title: Change the upgrade policy on Virtual Machine Scale Sets
2+
title: Change the upgrade policy on Virtual Machine Scale Sets (Preview)
33
description: Learn how to change the upgrade policy on Virtual Machine Scale Sets
44
author: mimckitt
55
ms.author: mimckitt
66
ms.topic: how-to
77
ms.service: virtual-machine-scale-sets
8-
ms.date: 06/14/2024
8+
ms.date: 6/6/2024
99
ms.reviewer: ju-shim
1010
ms.custom: upgradepolicy
1111
---
12-
# Change the upgrade policy on Virtual Machine Scale Sets
12+
# Change the upgrade policy on Virtual Machine Scale Sets (Preview)
1313

1414
> [!NOTE]
15-
> Automatic, manual and rolling upgrade policy is available for Virtual Machine Scale sets with Uniform Orchestration.
15+
> Upgrade policies for Virtual Machine Scale Sets with Uniform Orchestration are in general availability (GA) .
1616
>
17-
>**Only manual upgrade policy is available for Virtual Machine scale Sets with Flexible Orchestration. Manual upgrade policy for Virtual Machine Scale Sets with Flexible Orchestration is currently in preview.**. Previews are made available to you on the condition that you agree to the [supplemental terms of use](https://azure.microsoft.com/support/legal/preview-supplemental-terms/). Some aspects of these features may change prior to general availability (GA).
17+
>**Upgrade policies for Virtual Machine Scale Sets with Flexible Orchestration are currently in preview.** Previews are made available to you on the condition that you agree to the [supplemental terms of use](https://azure.microsoft.com/support/legal/preview-supplemental-terms/). Some aspects of these features may change prior to general availability (GA).
1818
1919
The upgrade policy for a Virtual Machine Scale Set can be changed at any point in time. Depending on your scenario, you may want to use a particular upgrade policy when setting up and developing your workload and once you're ready to move to production, change it to another upgrade policy mode.
2020

2121
### [Portal](#tab/portal)
2222

2323
Select the Virtual Machine Scale Set you want to change the upgrade policy for. In the menu under **Settings**, select **Upgrade Policy** and from the drop-down menu, select the upgrade policy you want to enable.
2424

25+
> [!NOTE]
26+
> Setting or changing the upgrade policy to automatic using the Azure Portal on Virtual Machine Scale Sets with Flexible Orchestration is not yet available. To change the upgrade policy to automatic, use CLI, PowerShell, ARM Template, or any other SDK.
27+
2528
If using a rolling upgrade policy, see [configure rolling upgrade policy](virtual-machine-scale-sets-configure-rolling-upgrades.md) for more configuration options and suggestions.
2629

2730
:::image type="content" source="../virtual-machine-scale-sets/media/upgrade-policy/change-upgrade-policy.png" alt-text="Screenshot showing changing the upgrade policy and enabling MaxSurge in the Azure portal.":::
@@ -35,7 +38,7 @@ If using a rolling upgrade policy, see [configure rolling upgrade policy](virtua
3538
az vmss update \
3639
--name myScaleSet \
3740
--resource-group myResourceGroup \
38-
--set upgradePolicy.mode=manual
41+
--set upgradePolicy.mode=Automatic
3942
```
4043

4144
### [PowerShell](#tab/powershell)
@@ -63,7 +66,7 @@ If using a rolling upgrade policy, see [configure rolling upgrade policy](virtua
6366
```ARM
6467
"properties": {
6568
"upgradePolicy": {
66-
"mode": "manual",
69+
"mode": "automatic",
6770
}
6871
}
6972
```

articles/virtual-machine-scale-sets/virtual-machine-scale-sets-configure-rolling-upgrades.md

Lines changed: 31 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,50 @@
11
---
2-
title: Configure rolling upgrades on Virtual Machine Scale Sets
2+
title: Configure rolling upgrades on Virtual Machine Scale Sets (Preview)
33
description: Learn about how to configure rolling upgrades on Virtual Machine Scale Sets.
44
author: mimckitt
55
ms.author: mimckitt
66
ms.topic: how-to
77
ms.service: virtual-machine-scale-sets
8-
ms.date: 06/14/2024
8+
ms.date: 6/14/2024
99
ms.reviewer: ju-shim
1010
ms.custom: upgradepolicy, devx-track-azurepowershell
1111
---
12-
# Configure rolling upgrades on Virtual Machine Scale Sets
12+
# Configure rolling upgrades on Virtual Machine Scale Sets (Preview)
1313

1414
> [!NOTE]
15-
> Rolling upgrade policy is only available for Virtual Machine Scale Sets with Uniform Orchestration.
15+
> Rolling upgrade policy for Virtual Machine Scale sets with Uniform Orchestration is in general availability (GA) .
16+
>
17+
> **Rolling upgrade policy for Virtual Machine scale Sets with Flexible Orchestration is currently in preview.**
18+
>
19+
> **MaxSurge for Virtual Machine Scale Sets with Flexible Orchestration and Uniform Orchestration is currently in preview.**
20+
>
21+
> Previews are made available to you on the condition that you agree to the [supplemental terms of use](https://azure.microsoft.com/support/legal/preview-supplemental-terms/). Some aspects of these features may change prior to general availability (GA).
1622
1723
Rolling upgrade policy is the safest way to apply updates to instances in a Virtual Machine Scale Set. Performing updates in batches ensures that your scale set maintains a set number of instances available to take traffic, meaning you don't need to take down your entire workload to make a change.
1824

1925
Rolling upgrade policy is best suited for production workloads.
2026

27+
## Prerequisites
28+
29+
Before configuring a rolling upgrade policy on a Virtual Machine Scale Set with Flexible Orchestration or enabling MaxSurge on either Flexible or Uniform Orchestration deployments, register the feature providers to your subscription.
30+
31+
## Feature Registration
32+
33+
```azurepowershell-interactive
34+
Register-AzProviderFeature -FeatureName VMSSFlexRollingUpgrade -ProviderNameSpace Microsoft.Compute
35+
36+
Register-AzProviderFeature -FeatureName MaxSurgeRollingUpgrade -ProviderNamespace Microsoft.Compute
37+
```
38+
2139

2240
## Requirements
2341

24-
- If using a rolling upgrade policy, the scale set must have a [health probe](../load-balancer/load-balancer-custom-probe-overview.md) or use the [Application Health Extension](virtual-machine-scale-sets-health-extension.md) to monitor application health.
42+
- When using a rolling upgrade policy on Virtual Machine Scale Sets with Flexible Orchestration, the scale set must also use the [Application Health Extension](virtual-machine-scale-sets-health-extension.md) to monitor application health.
2543

26-
- If using rolling upgrades with MaxSurge, new VMs are created using the latest scale set model to replace VMs using the old scale set model. These newly created VMs have new instance Ids and IP addresses. Ensure you have enough quota and address space in your subnet to accommodate these new VMs before enabling MaxSurge. For more information on quotas and limits, see [Azure subscription and service limits](../azure-resource-manager/management/azure-subscription-service-limits.md).
44+
- When using a rolling upgrade policy on Virtual Machine Scale Sets with Uniform Orchestration, the scale set must also have a [health probe](../load-balancer/load-balancer-custom-probe-overview.md) or use the [Application Health Extension](virtual-machine-scale-sets-health-extension.md) to monitor application health.
45+
46+
- When using rolling upgrades with MaxSurge, new VMs are created using the latest scale set model to replace VMs using the old scale set model. These newly created VMs have new instance Ids and IP addresses. Ensure you have enough quota and address space in your subnet to accommodate these new VMs before enabling MaxSurge. For more information on quotas and limits, see [Azure subscription and service limits](../azure-resource-manager/management/azure-subscription-service-limits.md).
2747

28-
>[!IMPORTANT]
29-
> MaxSurge is currently in preview for Virtual Machine Scale Sets. To use this preview feature, register the provider feature using Azure Cloud Shell.
30-
>
31-
> `Register-AzProviderFeature -FeatureName MaxSurgeRollingUpgrade -ProviderNamespace Microsoft.Compute`
32-
>
33-
>Previews are made available to you on the condition that you agree to the [supplemental terms of use](https://azure.microsoft.com/support/legal/preview-supplemental-terms/). Some aspects of these features may change prior to general availability (GA).
3448

3549
## Concepts
3650

@@ -43,12 +57,12 @@ Rolling upgrade policy is best suited for production workloads.
4357
| **Max unhealthy upgrade %**| Specifies the total number of instances allowed to be marked as unhealthy after being upgraded. <br><br>Example: A max unhealthy upgrade % of 20 means if you have a scale set of 10 instances and more than two instances in the entire scale set report back as unhealthy after being upgraded, the rolling upgrade is canceled. <br><br>Max unhealthy upgrade % is an important setting because it allows the scale set to catch unstable or poor updates before they roll out to the entire scale set. |
4458
|**Prioritize unhealthy instances** | Tells the scale set to upgrade instances marked as unhealthy before upgrading instances marked as healthy. <br><br>Example: If some instances in your scale set that show as failed or unhealthy when a rolling upgrade begins, the scale set updates those instances first. |
4559
| **Enable cross-zone upgrade** | Allows the scale set to ignore Availability Zone boundaries when determining batches. |
46-
| **MaxSurge** | MaxSurge is currently in preview for Virtual Machine Scale Sets Uniform Orchestration. To use this preview feature, register the provider feature using `Register-AzProviderFeature -FeatureName MaxSurgeRollingUpgrade -ProviderNamespace Microsoft.Compute`.<br><br> With MaxSurge enabled, new instances are created in batches using the latest scale model. Once the batch of new instances are successfully created and marked as healthy, they begin taking traffic. The scale set then deletes instances in batches matching the old scale set model. This continues until all instances are brought up-to-date. rolling upgrades with MaxSurge can help improve service uptime during upgrade events. <br><br>With MaxSurge disabled, the existing instances in a scale set are brought down in batches to be upgraded. Once the upgraded batch is complete, the instances begin taking traffic again, and the next batch begins. This continues until all instances brought up-to-date. |
60+
| **MaxSurge (Preview)** | With MaxSurge enabled, new instances are created in batches using the latest scale model. Once the batch of new instances are successfully created and marked as healthy, they begin taking traffic. The scale set then deletes instances in batches matching the old scale set model. This continues until all instances are brought up-to-date. rolling upgrades with MaxSurge can help improve service uptime during upgrade events. <br><br>With MaxSurge disabled, the existing instances in a scale set are brought down in batches to be upgraded. Once the upgraded batch is complete, the instances begin taking traffic again, and the next batch begins. This continues until all instances brought up-to-date. |
4761

4862

4963
## Setting or updating the rolling upgrade policy
5064

51-
Rolling upgrade policy can be configured during scale set creation. Because Rolling upgrade policy requires successfully monitoring application health and there are specific settings that determine how upgrades are completed, it's suggested to first create your scale set using manual upgrade policy. Once you have confirmed the application health is being successfully reported, update your upgrade policy from manual to Rolling.
65+
Rolling upgrade policy can be configured during scale set creation. Because rolling upgrade policy requires successfully monitoring application health and there are specific settings that determine how upgrades are completed, it's suggested to first create your scale set using manual upgrade policy. Once you have confirmed the application health is being successfully reported, update your upgrade policy from manual to rolling.
5266

5367
### [Portal](#tab/portal1)
5468

@@ -63,12 +77,14 @@ Update an existing Virtual Machine Scale Set using [az vmss update](/cli/azure/v
6377
az vmss update \
6478
--name myScaleSet \
6579
--resource-group myResourceGroup \
80+
--set upgradePolicy.mode=Rolling \
6681
--max-batch-instance-percent 10 \
6782
--max-unhealthy-instance-percent 20 \
6883
--max-unhealthy-upgraded-instance-percent 20 \
6984
--prioritize-unhealthy-instances true \
7085
--pause-time-between-batches PT2S \
7186
--max-surge true
87+
7288
```
7389

7490
### [PowerShell](#tab/powershell1)
@@ -95,7 +111,7 @@ Update-Azvmss -ResourceGroupName "myResourceGroup" `
95111

96112
### [ARM Template](#tab/template1)
97113

98-
Update the properties section of your ARM template and set the upgrade policy to Rolling and various rolling upgrade options.
114+
Update the properties section of your ARM template and set the upgrade policy to rolling and various rolling upgrade options.
99115

100116

101117
``` ARM Template

articles/virtual-machine-scale-sets/virtual-machine-scale-sets-perform-manual-upgrades.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
---
2-
title: Performing manual upgrades on Virtual Machine Scale Sets
2+
title: Performing manual upgrades on Virtual Machine Scale Sets (Preview)
33
description: Learn about how to perform a manual upgrade on Virtual Machine Scale Sets.
44
author: mimckitt
55
ms.author: mimckitt
66
ms.topic: how-to
77
ms.service: virtual-machine-scale-sets
8-
ms.date: 06/14/2024
8+
ms.date: 6/14/2024
99
ms.reviewer: ju-shim
1010
ms.custom: upgradepolicy
1111
---
12-
# Performing manual upgrades on Virtual Machine Scale Sets
12+
# Performing manual upgrades on Virtual Machine Scale Sets (Preview)
1313

1414
> [!NOTE]
15-
> Manual upgrade policy is available for both Virtual Machine Scale Sets with Uniform Orchestration and Virtual Machine Scale Sets with Flexible Orchestration.
15+
> Manual upgrade policy for Virtual Machine Scale Sets with Uniform Orchestration is in general availability (GA) .
1616
>
17-
>**Manual upgrade policy for Virtual Machine Scale Sets with Flexible Orchestration is currently in preview**. Previews are made available to you on the condition that you agree to the [supplemental terms of use](https://azure.microsoft.com/support/legal/preview-supplemental-terms/). Some aspects of these features may change prior to general availability (GA).
17+
>**Manual upgrade policy for Virtual Machine Scale Sets with Flexible Orchestration is currently in preview.** Previews are made available to you on the condition that you agree to the [supplemental terms of use](https://azure.microsoft.com/support/legal/preview-supplemental-terms/). Some aspects of these features may change prior to general availability (GA).
1818
1919
If you have the upgrade policy set to manual, any changes made to the scale set model won't be applied automatically. You need to manually trigger upgrades on each individual virtual machine. The manual upgrade functionality updates the selected instances according to the virtual machine configuration set in the scale set profile.
2020

articles/virtual-machine-scale-sets/virtual-machine-scale-sets-reimage-virtual-machine.md

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ author: mimckitt
55
ms.author: mimckitt
66
ms.topic: how-to
77
ms.service: virtual-machine-scale-sets
8-
ms.date: 06/14/2024
8+
ms.date: 02/06/2024
99
ms.reviewer: ju-shim
1010
ms.custom: upgradepolicy
1111

@@ -28,14 +28,14 @@ In the menu under **Settings**, navigate to **Instances** and select the instanc
2828

2929

3030
## [CLI](#tab/cli)
31-
To reimage a specific instance using Azure CLI, use the [az vmss reimage](/cli/azure/vmss#az-vmss-reimage) command. The `instance-id` parameter refers to the ID of the instance if using Uniform Orchestration mode and the Instance name if using Flexible Orchestration mode.
31+
To reimage a specific instance using Azure CLI, use the [az vmss reimage](/cli/azure/vmss#az-vmss-reimage) command. The `instance-id` parameter refers to the ID of the instance if using Uniform Orchestration and the instance name if using Flexible Orchestration.
3232

3333
```azurecli-interactive
3434
az vmss reimage --resource-group myResourceGroup --name myScaleSet --instance-id instanceId
3535
```
3636

3737
## [PowerShell](#tab/powershell)
38-
To reimage a specific instance using Azure PowerShell, use the [Set-AzVmssVM](/powershell/module/az.compute/set-azvmssvm) command. The `instanceid` parameter refers to the ID of the instance if using Uniform Orchestration mode and the Instance name if using Flexible Orchestration mode.
38+
To reimage a specific instance using Azure PowerShell, use the [Set-AzVmssVM](/powershell/module/az.compute/set-azvmssvm) command. The `instanceid` parameter refers to the ID of the instance if using Uniform Orchestration and the Instance name if using Flexible Orchestration.
3939

4040
```azurepowershell-interactive
4141
Set-AzVmssVM -ResourceGroupName "myResourceGroup" -VMScaleSetName "myScaleSet" -InstanceId instanceId -Reimage
@@ -56,9 +56,6 @@ POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/
5656
"myScaleSet2"
5757
]
5858
}
59-
60-
61-
6259
```
6360
---
6461

0 commit comments

Comments
 (0)