Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
You must create a capacity pool before you can create volumes in Azure NetApp Files. Capacity pools determine quota and throughput for volumes.
Important
To create a capacity pool for the Flexible, Standard, Premium, or Ultra service level, see Set up a capacity pool.
Before you begin
- You must have a NetApp account designated for use with Elastic zone-redundant storage.
- If you're using Azure CLI, ensure that you're using the latest version.
- If you're using PowerShell, ensure that you're using the latest version of the Az.NetAppFiles module. To update to the latest version, use the
Update-Module Az.NetAppFilescommand. For more information, see Update-Module. - If you're using customer-managed keys, ensure you've configured encryption before creating the capacity pool. For more information, see Configure customer-managed keys for Elastic zone-redundant storage.
- If you're using the Azure REST API, ensure that you specify the latest version.
- Elastic capacity pools enable you to create a failover preference order of three availability zones. Some of the regions that support the Elastic service level only offer two availability zones. You should query the region for availability zone with the REST API before creating the capacity pool:
GET https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.NetApp/locations/{location}/elasticRegionInfo?api-version=2025-09-01-preview. The maximum performance achieved will depend on the dataset and workload characteristics such as read/write ratio, I/O size, and data compressibility
Important
If you're using availability zones with custom roles or the built-in Contributor role-based access control (RBAC) role, ensure you have the appropriate permissions set. Not having certain permissions can cause issues in the Azure portal. For configuration details, see Configure custom RBAC roles.
Considerations for Elastic service level capacity pools
- Creating and resizing a capacity pool can be a long-running operation. On average, creating a pool takes 5-7 minutes, but can take longer.
- Manually changing the zone of a capacity pool can be a long-running operation.
- When creating capacity pools, you must designate the failover order for three zones. The order can't be changed after creating the capacity pools.
- Capacity pools automatically fail over if a zonal outage occurs. You can also manually fail over.
- If a zonal outage occurs, capacity pools don't automatically fail back. You can manually perform a fail back. For more information, see Change the availability zone of an Elastic capacity pool.
- Volumes in zone-redundant storage capacity pools can't be moved out of the capacity pool they're created in.
- Review the maximum and minimum sizes for Elastic zone-redundant storage.
- When resizing capacity pools:
- If you've created a capacity pool smaller than 16 TiB, you can increase its size in 1-TiB increments up to 16 TiB.
- Any capacity pool created at a size less than 16 TiB can't be resized beyond 16 TiB. If you need a larger capacity pool, create a new one.
- If you create a capacity pool larger than 16 TiB, you can increase its size in 8-TiB increments up to the maximum size.
- You can't decrease the size of a capacity pool in Elastic zone-redundant storage.
- After creating a capacity pool, you can't reduce the quota of the capacity pool.
- Capacity pools in the Elastic zone-redundant service level provide throughput at 32 MiB per second per 1 TiB and 1 I/OPS per GiB. With the maximum capacity pool size of 128 TiB, throughput maxes out at 4,096 MiB per second and 131,072 I/OPS. The maximum performance achieved depends on the dataset and workload characteristics such as read/write ratio, I/O size, and data compressibility.
Create a capacity pool
From your Azure NetApp Files account, select Capacity pools.
Select + Add pool.
Provide the following information:
- Name: Consult the naming rules and restrictions for Azure resources for character limits and other naming conventions.
- Service level: Zone-redundant is automatically selected.
- Quota: Assign the quota value in TiB. See Resource limits for more information about maximums and minimums.
- Virtual network: Select an existing VNet.
- Delegated subnet: Select a delegated subnet.
- Encryption key source: If you've already configured a customer-managed key, you can select Customer Managed. For more information, see Configure customer-managed keys. Otherwise, select NetApp Managed.
- Key vault private endpoint: If you selected Customer Managed for the encryption key source, choose the Azure key vault you configured in your encryption settings.
- Active Directory configuration: If you've configured an Active Directory account on the NetApp Elastic account, select it from the dropdown menu. If you haven't configured one, select Create new then follow the instructions to configure the Active Directory account.
- Availability zone: Drag and drop the availability zones in the ranked order for failover.
Select Ok to create the capacity pool.
Modify a capacity pool
- In your NetApp account, select Capacity pools.
- Select the capacity pool you want to modify.
- Select Edit capacity pool.
- Increase the quota. Quotas can only be increased in to whole TiB values.
- Select Save.
Configure custom RBAC roles
If you're using a custom RBAC role or the built-in Contributor role and managing availability zones in the Azure portal, you might not be able to access network features and Availability Zone options in the Azure portal. To ensure you have the appropriate access, add the Microsoft.NetApp/locations/* permission. The wildcard encompasses the following permissions:
Microsoft.NetApp/locations/{location}/checkNameAvailabilityMicrosoft.NetApp/locations/{location}/checkFilePathAvailabilityMicrosoft.NetApp/locations/{location}/checkQuotaAvailabilityMicrosoft.NetApp/locations/{location}/quotaLimitsMicrosoft.NetApp/locations/{location}/quotaLimits/{quotaLimitName}Microsoft.NetApp/locations/{location}/regionInfoMicrosoft.NetApp/locations/{location}/elasticRegionInfoMicrosoft.NetApp/locations/{location}/queryNetworkSiblingSetMicrosoft.NetApp/locations/{location}/updateNetworkSiblingSet
Modify the RBAC role
In your Azure NetApp Files subscription, select Access control (IAM).
Select Roles then choose the custom role you want to modify. Select the three dots (
...) then Edit.To update the custom role, select JSON. Modify the JSON file to include the locations wild card permission (
Microsoft.NetApp/locations/*). For example:{ "properties": { "roleName": "", "description": "", "assignableScopes": ["/subscription/<subscriptionID>" ], "permissions": [ { "actions": [ "Microsoft.NetApp/locations/*", "Microsoft.NetApp/netAppAccounts/read", "Microsoft.NetApp/netAppAccounts/renewCredentials/action", "Microsoft.NetApp/netAppAccounts/capacityPools/read" ], "notActions": [], "dataActions": [], "notDataActions": [] }] } }Select Review + update.
Sign out of your Azure account, and then log back in to confirm that the permissions are in effect and the options are visible.