Skip to content

Commit a5b7ec5

Browse files
Merge pull request #253312 from sdwheeler/sdw-i99502
Fixes #99502 - Clarify storage and IP address requirements
2 parents a1557a4 + cb488b9 commit a5b7ec5

File tree

3 files changed

+41
-48
lines changed

3 files changed

+41
-48
lines changed

articles/cloud-shell/persisting-shell-storage.md

Lines changed: 9 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
description: Walkthrough of how Azure Cloud Shell persists files.
33
ms.contributor: jahelmic
4-
ms.date: 04/25/2023
4+
ms.date: 09/29/2023
55
ms.topic: article
66
tags: azure-resource-manager
77
ms.custom: devx-track-linux
@@ -38,13 +38,10 @@ This fileshare is used for both Bash and PowerShell.
3838

3939
## Use existing resources
4040

41-
Using the advanced option, you can associate existing resources. When selecting a Cloud Shell region,
42-
you must select a backing storage account co-located in the same region. For example, if your
43-
assigned region is West US then you must associate a fileshare that resides within West US as well.
44-
45-
When the storage setup prompt appears, select **Show advanced settings** to view more options. The
46-
populated storage options filter for locally redundant storage (LRS), geo-redundant storage (GRS),
47-
and zone-redundant storage (ZRS) accounts.
41+
Using the advanced option, you can associate existing resources. When the storage setup prompt
42+
appears, select **Show advanced settings** to view more options. The populated storage options
43+
filter for locally redundant storage (LRS), geo-redundant storage (GRS), and zone-redundant storage
44+
(ZRS) accounts.
4845

4946
> [!NOTE]
5047
> Using GRS or ZRS storage accounts are recommended for additional resiliency for your backing file
@@ -82,9 +79,7 @@ Cloud Shell machines exist in the following regions:
8279
| Europe | North Europe, West Europe |
8380
| Asia Pacific | India Central, Southeast Asia |
8481

85-
Customers should choose a primary region, unless they have a requirement that their data at rest be
86-
stored in a particular region. If they have such a requirement, a secondary storage region should be
87-
used.
82+
You should choose a region that meets your requirements.
8883

8984
### Secondary storage regions
9085

@@ -102,10 +97,9 @@ of their fileshare.
10297

10398
## Restrict resource creation with an Azure resource policy
10499

105-
Storage accounts that you create in Cloud Shell are tagged with
106-
`ms-resource-usage:azure-cloud-shell`. If you want to disallow users from creating storage accounts
107-
in Cloud Shell, create an [Azure resource policy for tags][02] that is triggered by this specific
108-
tag.
100+
Storage accounts that created in Cloud Shell are tagged with `ms-resource-usage:azure-cloud-shell`.
101+
If you want to disallow users from creating storage accounts in Cloud Shell, create an
102+
[Azure resource policy for tags][02] that's triggered by this specific tag.
109103

110104
## How Cloud Shell storage works
111105

articles/cloud-shell/quickstart-deploy-vnet.md

Lines changed: 27 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,40 @@
11
---
22
description: This article provides step-by-step instructions to deploy Azure Cloud Shell in a private virtual network.
33
ms.contributor: jahelmic
4-
ms.date: 06/29/2023
4+
ms.date: 09/29/2023
55
ms.topic: article
66
ms.custom: devx-track-arm-template
7-
title: Deploy Azure Cloud Shell in a VNET with quickstart templates
7+
title: Deploy Azure Cloud Shell in a virtual network with quickstart templates
88
---
99

10-
# Deploy Azure Cloud Shell in a VNET with quickstart templates
10+
# Deploy Azure Cloud Shell in a virtual network with quickstart templates
1111

12-
Before you can deploy Azure Cloud Shell in a virtual network (VNET) configuration using the
12+
Before you can deploy Azure Cloud Shell in a virtual network (VNet) configuration using the
1313
quickstart templates, there are several prerequisites to complete before running the templates.
1414

1515
This document guides you through the process to complete the configuration.
1616

17-
## Steps to deploy Azure Cloud Shell in a VNET
17+
## Steps to deploy Azure Cloud Shell in a virtual network
1818

19-
This article walks you through the following steps to deploy Azure Cloud Shell in a VNET:
19+
This article walks you through the following steps to deploy Azure Cloud Shell in a virtual network:
2020

2121
1. Collect the required information
22-
1. Provision the virtual networks using the **Azure Cloud Shell - VNet** ARM template
23-
1. Provision the VNET storage account using the **Azure Cloud Shell - VNet storage** ARM template
24-
1. Configure and use Azure Cloud Shell in a VNET
22+
1. Create the virtual networks using the **Azure Cloud Shell - VNet** ARM template
23+
1. Create the virtual network storage account using the **Azure Cloud Shell - VNet storage** ARM template
24+
1. Configure and use Azure Cloud Shell in a virtual network
2525

2626
## 1. Collect the required information
2727

2828
There are several pieces of information that you need to collect before you can deploy Azure Cloud.
2929
You can use the default Azure Cloud Shell instance to gather the required information and create the
30-
necessary resources. You should create dedicated resources for the Azure Cloud Shell VNET
30+
necessary resources. You should create dedicated resources for the Azure Cloud Shell VNet
3131
deployment. All resources must be in the same Azure region and contained in the same resource group.
3232

3333
- **Subscription** - The name of your subscription containing the resource group used for the Azure
34-
Cloud Shell VNET deployment
35-
- **Resource Group** - The name of the resource group used for the Azure Cloud Shell VNET deployment
34+
Cloud Shell VNet deployment
35+
- **Resource Group** - The name of the resource group used for the Azure Cloud Shell VNet deployment
3636
- **Region** - The location of the resource group
37-
- **Virtual Network** - The name of the virtual network created for Azure Cloud Shell VNET
37+
- **Virtual Network** - The name of the virtual network created for Azure Cloud Shell VNet
3838
- **Azure Container Instance OID** - The ID of the Azure Container Instance for your resource group
3939
- **Azure Relay Namespace** - The name that you want to assign to the Relay resource created by the
4040
template
@@ -104,7 +104,7 @@ Register-AzResourceProvider -ProviderNamespace Microsoft.ContainerInstance
104104

105105
### Azure Container Instance ID
106106

107-
To configure the VNET for Cloud Shell using the quickstarts, retrieve the `Azure Container Instance`
107+
To configure the virtual network for Cloud Shell using the quickstarts, retrieve the `Azure Container Instance`
108108
ID for your organization.
109109

110110
```powershell
@@ -120,12 +120,14 @@ Azure Container Instance Service 8fe7fd25-33fe-4f89-ade3-0e705fcf4370 34fbe509-d
120120
Take note of the **Id** value for the `Azure Container Instance` service principal. It's needed for
121121
the **Azure Cloud Shell - VNet storage** template.
122122

123-
## 2. Provision the virtual network using the ARM template
123+
## 2. Create the virtual network using the ARM template
124124

125125
Use the [Azure Cloud Shell - VNet][08] template to create Cloud Shell resources in a virtual
126126
network. The template creates three subnets under the virtual network created earlier. You may
127127
choose to change the supplied names of the subnets or use the defaults. The virtual network, along
128-
with the subnets, require valid IP address assignments.
128+
with the subnets, require valid IP address assignments. You need at least one IP address for the
129+
Relay subnet and enough IP addresses in the container subnet to support the number of concurrent
130+
sessions you expect to use.
129131

130132
The ARM template requires specific information about the resources you created earlier, along with
131133
naming information for new resources. This information is filled out along with the prefilled
@@ -134,10 +136,10 @@ information in the form.
134136
Information needed for the template:
135137

136138
- **Subscription** - The name of your subscription containing the resource group for Azure Cloud
137-
Shell VNET
139+
Shell VNet
138140
- **Resource Group** - The resource group name of either an existing or newly created resource group
139141
- **Region** - Location of the resource group
140-
- **Virtual Network** - The name of the virtual network created for Azure Cloud Shell VNET
142+
- **Virtual Network** - The name of the virtual network created for Azure Cloud Shell virtual network
141143
- **Azure Container Instance OID** - The ID of the Azure Container Instance for your resource group
142144

143145
Fill out the form with the following information:
@@ -150,7 +152,7 @@ Fill out the form with the following information:
150152
| Instance details | Value |
151153
| ------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
152154
| Region | Prefilled with your default region.<br>For this example, we're using `East US`. |
153-
| Existing VNET Name | Fill in the value from the prerequisite information you gathered.<br>For this example, we're using `vnet-cloudshell-eastus`. |
155+
| Existing virtual network Name | Fill in the value from the prerequisite information you gathered.<br>For this example, we're using `vnet-cloudshell-eastus`. |
154156
| Relay Namespace Name | Create a name that you want to assign to the Relay resource created by the template.<br>For this example, we're using `arn-cloudshell-eastus`. |
155157
| Azure Container Instance OID | Fill in the value from the prerequisite information you gathered.<br>For this example, we're using `8fe7fd25-33fe-4f89-ade3-0e705fcf4370`. |
156158
| Container Subnet Name | Defaults to `cloudshellsubnet`. Enter the name of the subnet for your container. |
@@ -166,21 +168,21 @@ Fill out the form with the following information:
166168
Once the form is complete, select **Review + Create** and deploy the network ARM template to your
167169
subscription.
168170

169-
## 3. Provision the VNET storage using the ARM template
171+
## 3. Create the virtual network storage using the ARM template
170172

171173
Use the [Azure Cloud Shell - VNet storage][09] template to create Cloud Shell resources in a virtual
172-
network. The template creates the storage account and assigns it to the private VNET.
174+
network. The template creates the storage account and assigns it to the private virtual network.
173175

174176
The ARM template requires specific information about the resources you created earlier, along
175177
with naming information for new resources.
176178

177179
Information needed for the template:
178180

179181
- **Subscription** - The name of the subscription containing the resource group for Azure Cloud
180-
Shell VNET.
182+
Shell virtual network.
181183
- **Resource Group** - The resource group name of either an existing or newly created resource group
182184
- **Region** - Location of the resource group
183-
- **Existing VNET name** - The name of the virtual network created earlier
185+
- **Existing virtual network name** - The name of the virtual network created earlier
184186
- **Existing Storage Subnet Name** - The name of the storage subnet created with the Network
185187
quickstart template
186188
- **Existing Container Subnet Name** - The name of the container subnet created with the Network
@@ -196,7 +198,7 @@ Fill out the form with the following information:
196198
| Instance details | Value |
197199
| ------------------------------ | ------------------------------------------------------------------------------------------------ |
198200
| Region | Prefilled with your default region.<br>For this example, we're using `East US`. |
199-
| Existing VNET Name | For this example, we're using `vnet-cloudshell-eastus`. |
201+
| Existing virtual network Name | For this example, we're using `vnet-cloudshell-eastus`. |
200202
| Existing Storage Subnet Name | Fill in the name of the resource created by the network template. |
201203
| Existing Container Subnet Name | Fill in the name of the resource created by the network template. |
202204
| Storage Account Name | Create a name for the new storage account.<br>For this example, we're using `myvnetstorage1138`. |
@@ -209,7 +211,7 @@ subscription.
209211

210212
## 4. Configuring Cloud Shell to use a virtual network
211213

212-
After deploying your private Cloud Shell instance, each Cloud Shell user must change their
214+
After you have deployed your private Cloud Shell instance, each Cloud Shell user must change their
213215
configuration to use the new private instance.
214216

215217
If you have used the default Cloud Shell before deploying the private instance, you must reset your

articles/cloud-shell/troubleshooting.md

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
description: This article covers troubleshooting Cloud Shell common scenarios.
33
ms.contributor: jahelmic
4-
ms.date: 05/03/2023
4+
ms.date: 09/29/2023
55
ms.topic: article
66
tags: azure-resource-manager
77
ms.custom: has-azure-ad-ps-ref
@@ -123,10 +123,10 @@ Azure Cloud Shell has the following known limitations:
123123

124124
### Quota limitations
125125

126-
Azure Cloud Shell has a limit of 20 concurrent users per tenant per region. Opening more than 20
127-
simultaneous sessions produces a "Tenant User Over Quota" error. If you have a legitimate need to
128-
have more than 20 sessions open, such as for training sessions, contact Support to request a quota
129-
increase before your anticipated usage.
126+
Azure Cloud Shell has a limit of 20 concurrent users per tenant. Opening more than 20 simultaneous
127+
sessions produces a "Tenant User Over Quota" error. If you have a legitimate need to have more than
128+
20 sessions open, such as for training sessions, contact Support to request a quota increase before
129+
your anticipated usage.
130130

131131
Cloud Shell is provided as a free service for managing your Azure environment. It's not as a general
132132
purpose computing platform. Excessive automated usage may be considered in breach to the Azure Terms
@@ -141,8 +141,6 @@ considerations include:
141141

142142
- With mounted storage, only modifications within the `clouddrive` directory are persisted. In Bash,
143143
your `$HOME` directory is also persisted.
144-
- Azure fileshares can be mounted only from within your [assigned region][05].
145-
- In Bash, run `env` to find your region set as `ACC_LOCATION`.
146144
- Azure Files supports only locally redundant storage and geo-redundant storage accounts.
147145

148146
### Browser support
@@ -290,5 +288,4 @@ Azure Cloud Shell in Azure Government is only accessible through the Azure porta
290288
291289
<!-- link references -->
292290
[04]: https://docs.docker.com/desktop/
293-
[05]: persisting-shell-storage.md#mount-a-new-clouddrive
294291
[06]: /powershell/microsoftgraph/migration-steps

0 commit comments

Comments
 (0)