Skip to content

Commit e88fa2e

Browse files
committed
Additional changes.
1 parent 2be9064 commit e88fa2e

File tree

3 files changed

+31
-17
lines changed

3 files changed

+31
-17
lines changed

articles/storage/elastic-san/elastic-san-configure-service-endpoints.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,7 @@ All incoming requests for data over a service endpoint are blocked by default. O
218218
You can manage virtual network rules for volume groups through the Azure portal, PowerShell, or CLI.
219219
220220
> [!IMPORTANT]
221-
> If you want to enable access to your storage account from a virtual network/subnet in another Microsoft Entra tenant, you must use PowerShell or the Azure CLI. The Azure portal does not show subnets in other Microsoft Entra tenants.
221+
> To enable access to your storage account from a virtual network/subnet in another Microsoft Entra tenant, you must use PowerShell or the Azure CLI. The Azure portal doesn't show subnets in other Microsoft Entra tenants.
222222
>
223223
> If you delete a subnet that has been included in a network rule, it will be removed from the network rules for the volume group. If you create a new subnet with the same name, it won't have access to the volume group. To allow access, you must explicitly authorize the new subnet in the network rules for the volume group.
224224

articles/storage/elastic-san/elastic-san-create.md

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Learn how to deploy an Azure Elastic SAN with the Azure portal, Azu
44
author: roygara
55
ms.service: azure-elastic-san-storage
66
ms.topic: how-to
7-
ms.date: 10/24/2024
7+
ms.date: 06/10/2025
88
ms.author: rogarana
99
ms.custom: references_regions, devx-track-azurepowershell, devx-track-azurecli
1010
---
@@ -59,6 +59,7 @@ Use one of these sets of sample code to create an Elastic SAN that uses locally
5959
| `<UnusedSizeTiB>` | The capacity (in TiB) on your Elastic SAN that you want to keep free and unused. If you use more space than this amount, the scale-up operation is automatically triggered, increasing the size of your SAN. This parameter is optional but is required to enable autoscaling. |
6060
|`<IncreaseCapacityUnitByTiB>` | This parameter sets the TiB of additional capacity units that your SAN scales up by when autoscale gets triggered. This parameter is optional but is required to enable autoscaling. |
6161
|`<CapacityUnitScaleUpLimit>` | This parameter sets the maximum capacity (size) that your SAN can grow to using autoscaling. Your SAN won't automatically scale past this size. This parameter is optional but is required to enable autoscaling. |
62+
|`<-PublicNetworkAccess>` | This parameter allows or disallows public network access to ElasticSan. It's optional, but if passed in must be `Enabled` or `Disabled`. Enable if you're using service endpoints, disable if you're exclusively using private endpoints.|
6263

6364
The following command creates an Elastic SAN that uses locally redundant storage without autoscaling enabled.
6465

@@ -75,7 +76,7 @@ $Zone = <Zone>
7576
Connect-AzAccount
7677
7778
# Create the SAN.
78-
New-AzElasticSAN -ResourceGroupName $RgName -Name $EsanName -AvailabilityZone $Zone -Location $Location -BaseSizeTib 100 -ExtendedCapacitySizeTiB 20 -SkuName Premium_LRS
79+
New-AzElasticSAN -ResourceGroupName $RgName -Name $EsanName -AvailabilityZone $Zone -Location $Location -BaseSizeTib 100 -ExtendedCapacitySizeTiB 20 -SkuName Premium_LRS -PublicNetworkAccess Disabled
7980
```
8081

8182
The following command creates an Elastic SAN that uses locally redundant storage with autoscaling enabled.
@@ -97,7 +98,7 @@ $CapacityUnitScaleUpLimit = <CapacityUnitScaleUpLimit>
9798
Connect-AzAccount
9899
99100
# Create the SAN.
100-
New-AzElasticSAN -ResourceGroupName $RgName -Name $EsanName -AvailabilityZone $Zone -Location $Location -BaseSizeTib 100 -ExtendedCapacitySizeTiB 20 -SkuName Premium_LRS -AutoScalePolicyEnforcement $AutoScalePolicyEnforcement -UnusedSizeTiB $UnusedSizeTiB -IncreaseCapacityUnitByTiB $IncreaseCapacityUnitByTiB -CapacityUnitScaleUpLimit $CapacityUnitScaleUpLimit
101+
New-AzElasticSAN -ResourceGroupName $RgName -Name $EsanName -AvailabilityZone $Zone -Location $Location -BaseSizeTib 100 -ExtendedCapacitySizeTiB 20 -SkuName Premium_LRS -AutoScalePolicyEnforcement $AutoScalePolicyEnforcement -UnusedSizeTiB $UnusedSizeTiB -IncreaseCapacityUnitByTiB $IncreaseCapacityUnitByTiB -CapacityUnitScaleUpLimit $CapacityUnitScaleUpLimit -PublicNetworkAccess Disabled
101102
```
102103

103104
The following command creates an Elastic SAN that uses zone-redundant storage, without enabling autoscale.
@@ -111,7 +112,7 @@ $VolumeName = "<VolumeName>"
111112
$Location = "<Location>"
112113
113114
# Create the SAN
114-
New-AzElasticSAN -ResourceGroupName $RgName -Name $EsanName -Location $Location -SkuName Premium_ZRS
115+
New-AzElasticSAN -ResourceGroupName $RgName -Name $EsanName -Location $Location -SkuName Premium_ZRS -PublicNetworkAccess Disabled
115116
```
116117

117118
# [Azure CLI](#tab/azure-cli)
@@ -133,7 +134,7 @@ Use one of these sets of sample code to create an Elastic SAN that uses locally
133134
|`<IncreaseCapacityUnitByTiB>` | This parameter sets the TiB of additional capacity units that your SAN scales up by when autoscale gets triggered. This parameter is optional but is required to enable autoscaling. |
134135
|`<CapacityUnitScaleUpLimit>` | This parameter sets the maximum capacity (size) that your SAN can grow to using autoscaling. Your SAN won't automatically scale past this size. This parameter is optional but is required to enable autoscaling. |
135136
|`<CapacityUnitScaleUpLimit>` | This parameter sets the maximum capacity (size) that your SAN can grow to using autoscaling. Your SAN won't automatically scale past this size. This parameter is optional but is required to enable autoscaling. |
136-
|`<public-network-access>` | This parameter allows or disallows public network access to ElasticSan. Optional, but if passed in must be `Enabled` or `Disabled`. Enable if you're using service endpoints, disable if you're only using private endpoints.|
137+
|`<public-network-access>` | This parameter allows or disallows public network access to ElasticSan. It's optional, but if passed in must be `Enabled` or `Disabled`. Enable if you're using service endpoints, disable if you're exclusively using private endpoints.|
137138

138139
The following command creates an Elastic SAN that uses locally redundant storage without autoscaling enabled.
139140

@@ -198,24 +199,40 @@ Now that you've configured the basic settings and provisioned your storage, you
198199

199200
1. Select **+ Create volume group** and name your volume group.
200201
- The name must be between 3 and 63 characters long. The name can only contain lowercase letters, numbers and hyphens, and must begin and end with a letter or a number. Each hyphen must be preceded and followed by an alphanumeric character. The volume group name can't be changed once created.
202+
1. Generally, you should enable **CRC Protection**, unless you're going to connect this volume group to Azure VMware Solution or are connecting to the volume group with clients using Fedora or its downstream Linux distributions such as RHEL, CentOS, etc.
203+
204+
> [!NOTE]
205+
> CRC protection isn't currently available in North Europe and South Central US.
201206
202207
1. Select **Next : Volumes**
203208

209+
:::image type="content" source="media/elastic-san-networking/elastic-san-crc-protection-create-volume-group.png" alt-text="Screenshot of CRC protection enablement on new volume group." lightbox="media/elastic-san-networking/elastic-san-crc-protection-create-volume-group.png":::
210+
204211
# [PowerShell](#tab/azure-powershell)
205212

206213
The following sample command creates an Elastic SAN volume group in the Elastic SAN you created previously. Use the same variables and values you defined when you [created the Elastic SAN](#create-the-san).
207214

215+
> [!IMPORTANT]
216+
> `-EnforceDataIntegrityCheckForIscsi` determines whether CRC protection is enabled or not. Generally, you should enable it, unless you're going to connect this volume group to Azure VMware Solution, or are connecting to the volume group with clients using Fedora or its downstream Linux distributions such as RHEL, CentOS, etc. The script has it disabled, set it to `$true` if you want to enable it.
217+
>
218+
> CRC protection isn't currently available in North Europe and South Central US.
219+
208220
```azurepowershell
209221
# Create the volume group, this script only creates one.
210-
New-AzElasticSanVolumeGroup -ResourceGroupName $RgName -ElasticSANName $EsanName -Name $EsanVgName
222+
New-AzElasticSanVolumeGroup -ResourceGroupName $RgName -ElasticSANName $EsanName -Name $EsanVgName -EnforceDataIntegrityCheckForIscsi $false
211223
```
212224

213225
# [Azure CLI](#tab/azure-cli)
214226

215227
The following sample command creates an Elastic SAN volume group in the Elastic SAN you created previously. Use the same variables and values you defined when you [created the Elastic SAN](#create-the-san).
216228

229+
> [!IMPORTANT]
230+
> `--data-integrity-check` determines whether CRC protection is enabled or not. Generally, you should enable it, unless you're going to connect this volume group to Azure VMware Solution, or are connecting to the volume group with clients using Fedora or its downstream Linux distributions such as RHEL, CentOS, etc. The script has it disabled, set it to `true` if you want to enable it.
231+
>
232+
> CRC protection isn't currently available in North Europe and South Central US.
233+
217234
```azurecli
218-
az elastic-san volume-group create --elastic-san-name $EsanName -g $RgName -n $EsanVgName
235+
az elastic-san volume-group create --elastic-san-name $EsanName -g $RgName -n $EsanVgName --data-integrity-check false
219236
```
220237

221238
---

articles/storage/elastic-san/elastic-san-networking-concepts.md

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Learn about available Azure Elastic SAN networking options, includi
44
author: roygara
55
ms.service: azure-elastic-san-storage
66
ms.topic: concept-article
7-
ms.date: 01/28/2025
7+
ms.date: 06/10/2025
88
ms.author: rogarana
99
---
1010

@@ -21,15 +21,15 @@ There are two types of virtual network endpoints you can configure to allow acce
2121
- [Storage service endpoints](#storage-service-endpoints)
2222
- [Private endpoints](#private-endpoints)
2323

24-
Generally, you should use private endpoints instead of service endpoints since they offer better capabilities. For more information, see [Azure Private Link](../../private-link/private-endpoint-overview.md). For more details on the differences between the two, see [Compare Private Endpoints and Service Endpoints](../../virtual-network/vnet-integration-for-azure-services.md#compare-private-endpoints-and-service-endpoints).
24+
Generally, you should use private endpoints instead of service endpoints since they offer better capabilities. For more information, see [Azure Private Link](../../private-link/private-endpoint-overview.md). For more details on the differences between the two, see [Compare private endpoints and service endpoints](../../virtual-network/vnet-integration-for-azure-services.md#compare-private-endpoints-and-service-endpoints).
2525

2626
After configuring endpoints, you can configure network rules to further control access to your Elastic SAN volume group. Once the endpoints and network rules have been configured, clients can connect to volumes in the group to process their workloads.
2727

2828
## Private endpoints
2929

3030
Azure [Private Link](../../private-link/private-link-overview.md) lets you access an Elastic SAN volume group securely over a [private endpoint](../../private-link/private-endpoint-overview.md) from a virtual network subnet. Traffic between your virtual network and the service traverses the Microsoft backbone network, eliminating the risk of exposing your service to the public internet. An Elastic SAN private endpoint uses a set of IP addresses from the subnet address space for each volume group. The maximum number used per endpoint is 20.
3131

32-
Private endpoints have several advantages over service endpoints. For a complete comparison of private endpoints to service endpoints, see [Compare Private Endpoints and Service Endpoints](../../virtual-network/vnet-integration-for-azure-services.md#compare-private-endpoints-and-service-endpoints).
32+
Private endpoints have several advantages over service endpoints. For a complete comparison of private endpoints to service endpoints, see [Compare private endpoints and service endpoints](../../virtual-network/vnet-integration-for-azure-services.md#compare-private-endpoints-and-service-endpoints).
3333

3434
### How it works
3535

@@ -56,12 +56,9 @@ When you create a SAN, you can enable or disable public internet access to your
5656

5757
To further secure access to your Elastic SAN volumes, you can create virtual network rules for volume groups configured with service endpoints to allow access from specific subnets. You don't need network rules to allow traffic from a private endpoint since the storage firewall only controls access through public endpoints.
5858

59-
Each volume group supports up to 200 virtual network rules. If you delete a subnet that has been included in a network rule, it's removed from the network rules for the volume group. If you create a new subnet with the same name, it won't have access to the volume group. To allow access, you must explicitly authorize the new subnet in the network rules for the volume group.
60-
61-
Clients granted access via these network rules must also be granted the appropriate permissions to the Elastic SAN to volume group.
62-
63-
To learn how to define network rules, see [Managing virtual network rules](elastic-san-networking.md#configure-virtual-network-rules).
59+
Each volume group supports up to 200 virtual network rules. If you delete a subnet that has been included in a network rule, it's removed from the network rules for the volume group. If you create a new subnet with the same name, it won't have access to the volume group. To allow access, you must explicitly authorize the new subnet in the network rules for the volume group. Clients granted access via these network rules must also be granted the appropriate permissions to the Elastic SAN to volume group. To learn how to define network rules, see [Managing virtual network rules](elastic-san-networking.md#configure-virtual-network-rules).
6460

61+
Network rules only apply to the public endpoints of a volume group, not private endpoints. Approving the creation of a private endpoint grants implicit access to traffic from the subnet that hosts the private endpoint. To refine access rules and control traffic over private endpoints, use [Network Policies](../../private-link/disable-private-endpoint-network-policy.md).
6562

6663
## Data Integrity
6764

@@ -79,7 +76,7 @@ After you have enabled the desired endpoints and granted access in your network
7976
iSCSI sessions can periodically disconnect and reconnect over the course of the day. These disconnects and reconnects are part of regular maintenance or the result of network fluctuations. You shouldn't experience any performance degradation as a result of these disconnects and reconnects, and the connections should re-establish by themselves. If a connection doesn't re-establish itself, or you're experiencing performance degradation, raise a support ticket.
8077

8178
> [!NOTE]
82-
> If a connection between a virtual machine (VM) and an Elastic SAN volume is lost, the connection will retry for 90 seconds until terminating. Losing a connection to an Elastic SAN volume won't cause the VM to restart.
79+
> If a connection between a virtual machine (VM) and an Elastic SAN volume is lost, the connection retries for 90 seconds until terminating. Losing a connection to an Elastic SAN volume won't cause the VM to restart.
8380
8481
## Next steps
8582

0 commit comments

Comments
 (0)