Skip to content

Commit e7e6369

Browse files
Merge pull request #218638 from msakande/MOE-network-isolation
Adding "studio" tab for network isolation
2 parents 76ee341 + 61181bd commit e7e6369

File tree

3 files changed

+36
-17
lines changed

3 files changed

+36
-17
lines changed

articles/machine-learning/how-to-secure-online-endpoint.md

Lines changed: 36 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ ms.service: machine-learning
77
ms.subservice: enterprise-readiness
88
ms.topic: how-to
99
ms.reviewer: mopeakande
10-
author: jhirono
11-
ms.author: jhirono
10+
author: dem108
11+
ms.author: sehan
1212
ms.date: 10/04/2022
1313
ms.custom: event-tier1-build-2022
1414
---
@@ -31,16 +31,16 @@ The following diagram shows how communications flow through private endpoints to
3131

3232
* To use Azure machine learning, you must have an Azure subscription. If you don't have an Azure subscription, create a free account before you begin. Try the [free or paid version of Azure Machine Learning](https://azure.microsoft.com/free/) today.
3333

34-
* You must install and configure the Azure CLI and ML extension or the AzureML Python SDK v2. For more information, see the following articles:
34+
* You must install and configure the Azure CLI and `ml` extension or the AzureML Python SDK v2. For more information, see the following articles:
3535

36-
* [Install, set up, and use the CLI (v2)](how-to-configure-cli.md).
36+
* [Install, set up, and use the CLI (v2)](how-to-configure-cli.md).
3737
* [Install the Python SDK v2](https://aka.ms/sdk-v2-install).
3838

39-
* You must have an Azure Resource Group, in which you (or the service principal you use) need to have `Contributor` access. You'll have such a resource group if you configured your ML extension per the above article.
39+
* You must have an Azure Resource Group, in which you (or the service principal you use) need to have `Contributor` access. You'll have such a resource group if you configured your `ml` extension per the above article.
4040

4141
* You must have an Azure Machine Learning workspace, and the workspace must use a private endpoint. If you don't have one, the steps in this article create an example workspace, VNet, and VM. For more information, see [Configure a private endpoint for Azure Machine Learning workspace](./how-to-configure-private-link.md).
4242

43-
The workspace can be configured to allow or disallow public network access. If you plan on using managed online endpoint deployments that use __public outbound__, then you must also [configure the workspace to allow public access](how-to-configure-private-link.md#enable-public-access).
43+
The workspace configuration can either allow or disallow public network access. If you plan on using managed online endpoint deployments that use __public outbound__, then you must also [configure the workspace to allow public access](how-to-configure-private-link.md#enable-public-access).
4444

4545
Outbound communication from managed online endpoint deployment is to the _workspace API_. When the endpoint is configured to use __public outbound__, then the workspace must be able to accept that public communication (allow public access).
4646

@@ -83,7 +83,7 @@ To secure scoring requests to the online endpoint to your virtual network, set t
8383
az ml online-endpoint create -f endpoint.yml --set public_network_access=disabled
8484
```
8585
86-
# [Python SDK](#tab/python)
86+
# [Python](#tab/python)
8787

8888
```python
8989
from azure.ai.ml.entities import ManagedOnlineEndpoint
@@ -97,28 +97,32 @@ endpoint = ManagedOnlineEndpoint(name='my-online-endpoint',
9797
)
9898
```
9999

100-
---
101-
When `public_network_access` is `Disabled`, inbound scoring requests are received using the [private endpoint of the Azure Machine Learning workspace](./how-to-configure-private-link.md) and the endpoint can't be reached from public networks.
100+
# [Studio](#tab/azure-studio)
102101

103-
## Outbound (resource access)
102+
1. Go to the [Azure Machine Learning studio](https://ml.azure.com).
103+
1. Select the **Workspaces** page from the left navigation bar.
104+
1. Enter a workspace by clicking its name.
105+
1. Select the **Endpoints** page from the left navigation bar.
106+
1. Select **+ Create** to open the **Create deployment** setup wizard.
107+
1. Disable the **Public network access** flag at the **Create endpoint** step.
108+
109+
:::image type="content" source="media/how-to-secure-online-endpoint/endpoint-disable-public-network-access.png" alt-text="A screenshot of how to disable public network access for an endpoint." lightbox="media/how-to-secure-online-endpoint/endpoint-disable-public-network-access.png":::
104110

105-
To restrict communication between a deployment and the Azure resources used to by the deployment, set the `egress_public_network_access` flag to `disabled`. Use this flag to ensure that the download of the model, code, and images needed by your deployment are secured with a private endpoint.
111+
---
106112

107-
The following are the resources that the deployment communicates with over the private endpoint:
113+
When `public_network_access` is `Disabled`, inbound scoring requests are received using the [private endpoint of the Azure Machine Learning workspace](./how-to-configure-private-link.md), and the endpoint can't be reached from public networks.
108114

109-
* The Azure Machine Learning workspace.
110-
* The Azure Storage blob that is the default storage for the workspace.
111-
* The Azure Container Registry for the workspace.
115+
## Outbound (resource access)
112116

113-
When you configure the `egress_public_network_access` to `disabled`, a new private endpoint is created per deployment, per service. For example, if you set the flag to `disabled` for three deployments to an online endpoint, nine private endpoints are created. Each deployment would have three private endpoints that are used to communicate with the workspace, blob, and container registry.
117+
To restrict communication between a deployment and the Azure resources it uses, set the `egress_public_network_access` flag to `disabled`. Use this flag to ensure that the download of the model, code, and images needed by your deployment are secured with a private endpoint.
114118

115119
# [Azure CLI](#tab/cli)
116120

117121
```azurecli
118122
az ml online-deployment create -f deployment.yml --set egress_public_network_access=disabled
119123
```
120124

121-
# [Python SDK](#tab/python)
125+
# [Python](#tab/python)
122126

123127
```python
124128
blue_deployment = ManagedOnlineDeployment(name='blue',
@@ -136,8 +140,23 @@ blue_deployment = ManagedOnlineDeployment(name='blue',
136140
ml_client.begin_create_or_update(blue_deployment)
137141
```
138142

143+
# [Studio](#tab/azure-studio)
144+
145+
1. Follow the steps in the **Create deployment** setup wizard to the **Deployment** step.
146+
1. Disable the **Egress public network access** flag.
147+
148+
:::image type="content" source="media/how-to-secure-online-endpoint/deployment-disable-egress-public-network-access.png" alt-text="A screenshot of how to disable the egress public network access for a deployment." lightbox="media/how-to-secure-online-endpoint/deployment-disable-egress-public-network-access.png":::
149+
139150
---
140151

152+
The deployment communicates with these resources over the private endpoint:
153+
154+
* The Azure Machine Learning workspace
155+
* The Azure Storage blob that is the default storage for the workspace
156+
* The Azure Container Registry for the workspace
157+
158+
When you configure the `egress_public_network_access` to `disabled`, a new private endpoint is created per deployment, per service. For example, if you set the flag to `disabled` for three deployments to an online endpoint, nine private endpoints are created. Each deployment would have three private endpoints to communicate with the workspace, blob, and container registry.
159+
141160
## Scenarios
142161

143162
The following table lists the supported configurations when configuring inbound and outbound communications for an online endpoint:
95.6 KB
Loading
111 KB
Loading

0 commit comments

Comments
 (0)