Skip to content

Commit 38fe962

Browse files
author
gitName
committed
Merge branch 'main' of https://github.com/MicrosoftDocs/azure-docs-pr into fixmet
2 parents fae9597 + e353999 commit 38fe962

File tree

73 files changed

+919
-772
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

73 files changed

+919
-772
lines changed

articles/azure-functions/durable/durable-functions-bindings.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,7 @@ Here are some notes about the orchestration trigger:
9595
> Orchestrator functions should never be declared `async`.
9696
::: zone-end
9797

98+
<a name="python-trigger-usage"></a>
9899
### Trigger usage
99100

100101
The orchestration trigger binding supports both inputs and outputs. Here are some things to know about input and output handling:

articles/azure-functions/durable/durable-functions-serialization-and-persistence.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ For full customization of the serialization/deserialization pipeline, consider h
155155

156156
It's recommended to use type annotations to ensure Durable Functions serializes and deserializes your data correctly. While many built-in types are handled automatically, some built-in data types require type annotations to preserve the type during deserialization.
157157

158-
For custom data types, you must define the JSON serialization and deserialization of a data type by exporting a static `to_json` and `from_json` method from your class.
158+
For custom data types, you make JSON serialization and deserialization possible by defining class methods `to_json` and `from_json` on your data type class. Note that these methods are not called on the return value from the orchestrator function, meaning the return value has to be natively JSON-serializable. For more information, see [Bindings](durable-functions-bindings.md#python-trigger-usage).
159159

160160
# [Java](#tab/java)
161161

articles/azure-netapp-files/TOC.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -485,6 +485,8 @@
485485
href: troubleshoot-snapshot-policies.md
486486
- name: Troubleshoot cross-region replication errors
487487
href: troubleshoot-cross-region-replication.md
488+
- name: Troubleshoot customer-managed keys
489+
href: troubleshoot-customer-managed-keys.md
488490
- name: Troubleshoot Resource Provider errors
489491
href: azure-netapp-files-troubleshoot-resource-provider-errors.md
490492
- name: Troubleshoot user access on LDAP volumes
@@ -552,7 +554,7 @@
552554
- name: Regional availability
553555
href: https://azure.microsoft.com/explore/global-infrastructure/products-by-region/?products=netapp&rar=true&regions=all
554556
- name: Feature availability
555-
href: https://aka.ms/anfmap
557+
href: https://azure.github.io/azure-netapp-files/map/
556558
- name: SLA
557559
href: https://azure.microsoft.com/support/legal/sla/netapp/
558560
- name: Videos

articles/azure-netapp-files/azure-netapp-files-metrics.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: Metrics for Azure NetApp Files | Microsoft Docs
3-
description: Azure NetApp Files provides metrics on allocated storage, actual storage usage, volume IOPS, and latency. Use these metrics to understand usage and performance.
3+
description: Azure NetApp Files provides metrics on allocated storage, actual storage usage, volume I/OPS, and latency. Use these metrics to understand usage and performance.
44
services: azure-netapp-files
55
author: b-hchen
66
ms.service: azure-netapp-files
@@ -130,7 +130,7 @@ Azure NetApp Files metrics are natively integrated into Azure monitor. From with
130130
- From the Azure NetApp Files capacity pool or volume, select **Metrics**. Then select **Metric** to view the available metrics:
131131

132132
:::image type="content" source="./media/azure-netapp-files-metrics/metrics-navigate-volume.png" alt-text="Snapshot that shows how to navigate to the Metric pull-down." lightbox="./media/azure-netapp-files-metrics/metrics-navigate-volume.png":::
133-
133+
134134
## <a name="capacity_pools"></a>Usage metrics for capacity pools
135135

136136
- *Pool Allocated Size*

articles/azure-netapp-files/configure-customer-managed-keys.md

Lines changed: 20 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ author: b-ahibbard
66
ms.service: azure-netapp-files
77
ms.topic: how-to
88
ms.custom: references_regions, devx-track-azurecli, devx-track-azurepowershell
9-
ms.date: 03/25/2025
9+
ms.date: 04/18/2025
1010
ms.author: anfdocs
1111
---
1212

@@ -23,16 +23,16 @@ The following diagram demonstrates how customer-managed keys work with Azure Net
2323
3. You use the managed identity to which the Azure Key Vault admin granted permissions in step 1 to authenticate access to Azure Key Vault via Microsoft Entra ID.
2424
4. Azure NetApp Files wraps the account encryption key with the customer-managed key in Azure Key Vault.
2525

26-
Customer-managed keys have no performance impact on Azure NetApp Files. Its only difference from platform-managed keys is how the key is managed.
26+
Customer-managed keys don't affect performance of Azure NetApp Files. Its only difference from platform-managed keys is how the key is managed.
2727
1. For read/write operations, Azure NetApp Files sends requests to Azure Key Vault to unwrap the account encryption key to perform encryption and decryption operations.
2828

2929
## Considerations
3030

3131
* To create a volume using customer-managed keys, you must select the *Standard* network features. You can't use customer-managed key volumes with volume configured using Basic network features. Follow instructions in to [Set the Network Features option](configure-network-features.md#set-the-network-features-option) in the volume creation page.
3232
* For increased security, you can select the **Disable public access** option within the network settings of your key vault. When selecting this option, you must also select **Allow trusted Microsoft services to bypass this firewall** to permit the Azure NetApp Files service to access your encryption key.
3333
* Customer-managed keys support automatic Managed System Identity (MSI) certificate renewal. If your certificate is valid, you don't need to manually update it.
34-
* If Azure NetApp Files fails to create a customer-managed key volume, error messages are displayed. For more information, see [Error messages and troubleshooting](#error-messages-and-troubleshooting).
35-
* Do not make any changes to the underlying Azure Key Vault or Azure Private Endpoint after creating a customer-managed keys volume. Making changes can make the volumes inaccessible.
34+
* If Azure NetApp Files fails to create a customer-managed key volume, error messages are displayed. For more information, see [Error messages and troubleshooting](troubleshoot-customer-managed-keys.md).
35+
* Do not make any changes to the underlying Azure Key Vault or Azure Private Endpoint after creating a customer-managed keys volume. Making changes can make the volumes inaccessible. If you must make changes, see [Update the private endpoint IP for customer-managed keys](#update-the-private-endpoint).
3636
* Azure NetApp Files supports the ability to [transition existing volumes from platform-managed keys (PMK) to customer-managed keys (CMK) without data migration](#transition-volumes). This provides flexibility with the encryption key lifecycle (renewals, rotations) and extra security for regulated industry requirements.
3737
* If Azure Key Vault becomes inaccessible, Azure NetApp Files loses its access to the encryption keys and the ability to read or write data to volumes enabled with customer-managed keys. In this situation, create a support ticket to have access manually restored for the affected volumes.
3838
* Azure NetApp Files supports customer-managed keys on source and data replication volumes with cross-region replication or cross-zone replication relationships.
@@ -96,7 +96,7 @@ Before creating your first customer-managed key volume, you must set up:
9696
* The key vault must have soft delete and purge protection enabled.
9797
* The key must be of type RSA.
9898
* The key vault must have an [Azure Private Endpoint](../private-link/private-endpoint-overview.md).
99-
* The private endpoint must reside in a different subnet than the one delegated to Azure NetApp Files. The subnet must be in the same VNet as the one delegated to Azure NetApp.
99+
* The private endpoint must reside in a different subnet than the one delegated to Azure NetApp Files. The subnet must be in the same virtual network as the one delegated to Azure NetApp.
100100

101101
For more information about Azure Key Vault and Azure Private Endpoint, see:
102102
* [Quickstart: Create a key vault ](/azure/key-vault/general/quick-create-portal)
@@ -138,9 +138,9 @@ For more information about Azure Key Vault and Azure Private Endpoint, see:
138138
* `Microsoft.KeyVault/vaults/keys/read`
139139
* `Microsoft.KeyVault/vaults/keys/encrypt/action`
140140
* `Microsoft.KeyVault/vaults/keys/decrypt/action`
141-
The user-assigned identity you select is added to your NetApp account. Due to the customizable nature of role-based access control (RBAC), the Azure portal doesn't configure access to the key vault. See [Provide access to Key Vault keys, certificates, and secrets with an Azure role-based access control](/azure/key-vault/general/rbac-guide) for details on configuring Azure Key Vault.
141+
The user-assigned identity you select is added to your NetApp account. Due to the customizable nature of role-based access control, the Azure portal doesn't configure access to the key vault. See [Provide access to Key Vault keys, certificates, and secrets with an Azure role-based access control](/azure/key-vault/general/rbac-guide) for details on configuring Azure Key Vault.
142142

143-
1. Select **Save** then observe the notification communicating the status of the operation. If the operation isn't successful, an error message displays. For assistance in resolving the error, see [error messages and troubleshooting](#error-messages-and-troubleshooting).
143+
1. Select **Save** then observe the notification communicating the status of the operation. If the operation isn't successful, an error message displays. For assistance in resolving the error, see [error messages and troubleshooting](troubleshoot-customer-managed-keys.md).
144144

145145
### [Azure CLI](#tab/azure-cli)
146146

@@ -338,7 +338,7 @@ You can use an Azure Key Vault that is configured to use Azure role-based access
338338
339339
1. Once the custom role is created and available to use with the key vault, you apply it to the user-assigned identity.
340340
341-
:::image type="content" source="./media/configure-customer-managed-keys/rbac-review-assign.png" alt-text="Screenshot of RBAC review and assign menu." lightbox="./media/configure-customer-managed-keys/rbac-review-assign.png":::
341+
:::image type="content" source="./media/configure-customer-managed-keys/rbac-review-assign.png" alt-text="Screenshot of role-based access control review and assign menu." lightbox="./media/configure-customer-managed-keys/rbac-review-assign.png":::
342342
343343
## Create an Azure NetApp Files volume using customer-managed keys
344344
@@ -352,7 +352,7 @@ You can use an Azure Key Vault that is configured to use Azure role-based access
352352
353353
When you create a volume using a customer-managed key, you must also select **Standard** for the **Network features** option. Basic network features are not supported.
354354
355-
You must select a key vault private endpoint as well. The dropdown menu displays private endpoints in the selected Virtual network. If there's no private endpoint for your key vault in the selected virtual network, then the dropdown is empty, and you won't be able to proceed. If so, see to [Azure Private Endpoint](../private-link/private-endpoint-overview.md).
355+
You must select a key vault private endpoint as well. The dropdown menu displays private endpoints in the selected virtual network. If there's no private endpoint for your key vault in the selected virtual network, then the dropdown is empty, and you won't be able to proceed. If you encounter this scenario, see [Azure Private Endpoint](../private-link/private-endpoint-overview.md).
356356
357357
:::image type="content" source="./media/configure-customer-managed-keys/keys-create-volume.png" alt-text="Screenshot of create volume menu." lightbox="./media/configure-customer-managed-keys/keys-create-volume.png":::
358358
@@ -381,7 +381,7 @@ Encryption key transition for Azure NetApp Files is currently in preview. Before
381381
Get-AzProviderFeature -ProviderNamespace Microsoft.NetApp -FeatureName ANFMigratePmkToCmk
382382
```
383383
> [!NOTE]
384-
> The **RegistrationState** may be in the `Registering` state for up to 60 minutes before changing to `Registered`. Wait until the status is **Registered** before continuing.
384+
> The **RegistrationState** can remain in the `Registering` state for up to 60 minutes before changing to `Registered`. Wait until the status is **Registered** before continuing.
385385
386386
You can also use [Azure CLI commands](/cli/azure/feature) `az feature register` and `az feature show` to register the feature and display the registration status.
387387
@@ -407,7 +407,7 @@ If you have already configured your NetApp account for customer-managed keys and
407407
1. In the **Rekey** menu, select one of the available keys from the dropdown menu. The chosen key must be different from the current key.
408408
:::image type="content" source="./media/configure-customer-managed-keys/encryption-rekey.png" alt-text="Screenshot of the rekey menu." lightbox="./media/configure-customer-managed-keys/encryption-rekey.png":::
409409
410-
1. Select **OK** to save. The rekey operation may take several minutes.
410+
1. Select **OK** to save. The rekey operation can take several minutes.
411411
412412
## Switch from system-assigned to user-assigned identity
413413
@@ -465,33 +465,19 @@ To switch from system-assigned to user-assigned identity, you must grant the tar
465465
},
466466
```
467467
468-
## Error messages and troubleshooting
468+
## Update the private endpoint
469469
470-
This section lists error messages and possible resolutions when Azure NetApp Files fails to configure customer-managed key encryption or create a volume using a customer-managed key.
470+
Making changes to the Azure Private Endpoint after creating a customer-managed key volume can make the volume inaccessible. If you need to make changes, you must create a new endpoint and update the volume to point to the new endpoint.
471471
472-
### Errors configuring customer-managed key encryption on a NetApp account
473-
474-
| Error Condition | Resolution |
475-
| ----------- | ----------- |
476-
| `The operation failed because the specified key vault key was not found` | When entering key URI manually, ensure that the URI is correct. |
477-
| `Azure Key Vault key is not a valid RSA key` | Ensure that the selected key is of type RSA. |
478-
| `Azure Key Vault key is not enabled` | Ensure that the selected key is enabled. |
479-
| `Azure Key Vault key is expired` | Ensure that the selected key is valid. |
480-
| `Azure Key Vault key has not been activated` | Ensure that the selected key is active. |
481-
| `Key Vault URI is invalid` | When entering key URI manually, ensure that the URI is correct. |
482-
| `Azure Key Vault is not recoverable. Make sure that Soft-delete and Purge protection are both enabled on the Azure Key Vault` | Update the key vault recovery level to: <br> `“Recoverable/Recoverable+ProtectedSubscription/CustomizedRecoverable/CustomizedRecoverable+ProtectedSubscription”` |
483-
| `Account must be in the same region as the Vault` | Ensure the key vault is in the same region as the NetApp account. |
484-
485-
### Errors creating a volume encrypted with customer-managed keys
486-
487-
| Error Condition | Resolution |
488-
| ----------- | ----------- |
489-
| `Volume cannot be encrypted with Microsoft.KeyVault, NetAppAccount has not been configured with KeyVault encryption` | Your NetApp account doesn't have customer-managed key encryption enabled. Configure the NetApp account to use customer-managed key. |
490-
| `EncryptionKeySource cannot be changed` | No resolution. The `EncryptionKeySource` property of a volume can't be changed. |
491-
| `Unable to use the configured encryption key, please check if key is active` | Check that: <br> -Are all access policies correct on the key vault: Get, Encrypt, Decrypt? <br> -Does a private endpoint for the key vault exist? <br> -Is there a Virtual Network NAT in the VNet, with the delegated Azure NetApp Files subnet enabled? |
492-
| `Could not connect to the KeyVault` | Ensure that the private endpoint is set up correctly and the firewalls aren't blocking the connection from your Virtual Network to your KeyVault. |
472+
1. [Create a new endpoint between the virtual network and Azure Key Vault.](../private-link/create-private-endpoint-cli.md)
473+
1. Update all volumes using the old endpoint to use the new endpoint.
474+
```azurecli
475+
az netappfiles volume update --g $resource-group-name --account-name $netapp-account-name --pool-name $pool-name --name $volume-name --key-vault-private-endpoint-resource-id $newendpoint
476+
```
477+
1. [Delete the old private endpoint](/cli/azure/network/private-endpoint#az-network-private-endpoint-delete).
493478
494479
## Next steps
495480
481+
* [Troubleshoot customer-managed keys](troubleshoot-customer-managed-keys.md)
496482
* [Azure NetApp Files API](https://github.com/Azure/azure-rest-api-specs/tree/master/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01)
497483
* [Configure customer-managed keys with managed Hardware Security Module](configure-customer-managed-keys-hardware.md)

0 commit comments

Comments
 (0)