Skip to content

Commit 9a52f93

Browse files
committed
Merge remote-tracking branch 'sid/sidkri-az-feedback' into az-thiago
2 parents 737ab24 + b33e464 commit 9a52f93

File tree

1 file changed

+9
-12
lines changed

1 file changed

+9
-12
lines changed

articles/reliability/reliability-functions.md

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ When you configure Flex Consumption plan apps as zone redundant, the platform au
4141
When zone redundancy is enabled in a Flex Consumption plan, instance spreading is determined inside the following rules:
4242

4343
- [Always-ready](../azure-functions/flex-consumption-plan.md#always-ready-instances) instances are distributed across zones in a round-robin fashion.
44-
- On-demand instances, which are created as a result of event source volumes as the app scales beyond always-ready, are distributed across availability zones on a _best effort_ basis. This means that for on-demand instances, faster scale-out is given preference over even distribution across availability zones. The platform attempts even-out distribution over time.
45-
- To ensure zone resiliency with availability zones, the platform automatically maintains at least two instances of each always-ready instance type for each [per-function scaling function or group](../azure-functions/flex-consumption-plan.md#per-function-scaling), regardless of the always-ready configuration for the app. Any instances created by the platform are platform-managed, billed as always-ready instances, and don't change the always-ready configuration settings.
44+
- On-demand instances, which are created as a result of event source volumes as the app scales beyond always-ready, are distributed across availability zones on a _best effort_ basis. This means that for on-demand instances, faster scale-out is given preference over even distribution across availability zones. The platform attempts to even-out distribution over time.
45+
- To ensure zone resiliency with availability zones, the platform automatically maintains at least two always-ready instances for each [per-function scaling function or group](../azure-functions/flex-consumption-plan.md#per-function-scaling), regardless of the always-ready configuration for the app. Any instances created by the platform are platform-managed, billed as always-ready instances, and don't change the always-ready configuration settings.
4646
::: zone-end
4747
::: zone pivot="premium-plan"
4848
When you configure Elastic Premium function app plans as zone redundant, the platform automatically spreads the function app instances across the zones in the selected region.
@@ -96,7 +96,7 @@ Zone-redundant Premium plans are available in these regions:
9696
::: zone pivot="flex-consumption-plan"
9797
Availability zone support is a property of the Flex Consumption plan. Here are current considerations for using availability zones:
9898
99-
- You can enable availability zones in the plan during app creation. You can also enable or disable this plan feature in an existing app.
99+
- You can enable availability zones in the plan during app creation. You can also enable or disable this plan feature in an existing app via Azure CLI.
100100
- You must use a [zone redundant storage account (ZRS)](../storage/common/storage-redundancy.md#zone-redundant-storage) for your function app's [default host storage account](../azure-functions/storage-considerations.md#storage-account-requirements). If you use a different type of storage account, your app might behave unexpectedly during a zonal outage.
101101
- Must be hosted on a [Flex Consumption](../azure-functions/flex-consumption-plan.md) plan.
102102
::: zone-end
@@ -114,7 +114,7 @@ Availability zone support is a property of the Premium plan. Here are current co
114114
::: zone pivot="flex-consumption-plan"
115115
There's no separate meter associated with enabling availability zones. Pricing for instances used for a zone-redundant Flex Consumption app is the same as a single zone Flex Consumption app. To learn more, see [Billing](../azure-functions/flex-consumption-plan.md#billing).
116116
117-
When you enable availability zones in an app with always-ready instance configuration of fewer than two instances for each [per-function scaling function or group](../azure-functions/flex-consumption-plan.md#per-function-scaling), the platform automatically creates two more instances of the [always-ready](../azure-functions/flex-consumption-plan.md#always-ready-instances) type for each per-function scaling function or group. These new instances are also billed as always-ready instances.
117+
When you enable availability zones in an app with always-ready instance configuration of fewer than two instances for each [per-function scaling function or group](../azure-functions/flex-consumption-plan.md#per-function-scaling), the platform automatically creates two instances of the [always-ready](../azure-functions/flex-consumption-plan.md#always-ready-instances) type for each per-function scaling function or group. These new instances are also billed as always-ready instances.
118118
::: zone-end
119119
::: zone pivot="premium-plan"
120120
There's no extra cost associated with enabling availability zones. Pricing for a zone-redundant Premium App Service plan is the same as a single zone Premium plan. For each App Service plan you use, you're charged based on the SKU you choose, the capacity you specify, and any instances you scale to based on your autoscale criteria. If you enable availability zones on a plan with fewer than three instances, the platform enforces a minimum instance count of three for that App Service plan, and you're charged for all three instances.
@@ -226,7 +226,7 @@ After the zone-redundant plan is created and deployed, the Flex Consumption func
226226

227227
Changing the zone redundancy of you app requires a restart, which causes downtime in your app.
228228

229-
Before updating your Flex Consumption plan to be zone-redundant, you should update the default host storage account to also be zone redundant. If you use a separate storage account for the app's deployment container, should update it to be zone redundant as well.
229+
Before updating your Flex Consumption plan to be zone-redundant, you should update the default host storage account to also be zone redundant. If you use a separate storage account for the app's deployment container, you should update it to be zone redundant as well.
230230

231231
Use these steps to prepare your storage accounts for the change:
232232

@@ -235,23 +235,20 @@ Use these steps to prepare your storage accounts for the change:
235235
1. Update the storage related application settings of the app, like `AzureWebJobsStorage`, to reference the zone redundant storage account. See [Work with application settings](../azure-functions/functions-how-to-use-azure-function-app-settings.md#use-application-settings).
236236
1. Update the deployment storage account for the app, which can be the same or different as the storage account associated with the app. See [Configure deployment settings](../azure-functions/flex-consumption-how-to.md#configure-deployment-settings).
237237

238-
After the storage accounts used by your app are updated, you can update the Flex Consumption plan to be zone-redundant using Bicep or ARM templates. The Azure portal and Azure CLI don't currently support making zone redundancy updates to the plan.
238+
After the storage accounts used by your app are updated, you can update the Flex Consumption plan to be zone-redundant using Bicep or ARM templates. The Azure portal currently does not support making zone redundancy updates to the plan.
239239

240240
#### [Azure portal](#tab/azure-portal)
241241
Not currently supported.
242242

243243
#### [Azure CLI](#tab/azure-cli)
244-
Not currently supported.
245-
246-
<!-- Uncomment after AZ support is fixed:
247244
1. Update the Flex Consumption app and set the `--zone-redundant true` parameter:
248245

249246
```azurecli
250247
PLAN_RESOURCE_ID=$(az functionapp show --resource-group <RESOURCE_GROUP> --name <APP_NAME> --query "properties.serverFarmId" -o tsv)
251248
252249
az functionapp plan update --ids $PLAN_RESOURCE_ID --set zoneRedundant=true
253250
```
254-
-->
251+
255252
#### [Bicep template](#tab/bicep)
256253
257254
You can use this Bicep file to add the `zoneRedundant` property to `true` in an existing plan definition:
@@ -448,14 +445,14 @@ You can't currently change the availability zone support of an Elastic Premium p
448445
::: zone-end
449446
### Zone down experience
450447
::: zone pivot="flex-consumption-plan"
451-
All available function app instances of zone-redundant Flex Consumption plan apps are enabled and processing events. Flex Consumption apps continue to run even when other zones in the same region suffer an outage. However, it's possible that non-runtime behaviors might be impacted as a result of an outage in other availability zones. Standard function app behaviors can impact availability include:
448+
All available function app instances of zone-redundant Flex Consumption plan apps are enabled and processing events. Flex Consumption apps continue to run even when other zones in the same region suffer an outage. However, it's possible that non-runtime behaviors might be impacted as a result of an outage in other availability zones. Standard function app behaviors that can impact availability include:
452449

453450
+ Scaling
454451
+ App creation
455452
+ Configuration changes
456453
+ Deployments
457454

458-
Zone redundancy for Flex Consumption plans only guarantees continued uptime for deployed applications.
455+
Zone redundancy for Flex Consumption plans only guarantees continued uptime for deployed applications that are running.
459456

460457
When a zone goes down, Functions detects lost instances and automatically attempts to locate or create replacement instances, as needed, in the available zones. During zonal outage, the platform tries to restore balance on the available zones remaining.
461458
::: zone-end

0 commit comments

Comments
 (0)