Skip to content

Commit 2cbe471

Browse files
authored
Merge pull request #247410 from msakande/managed-vnet-with-managed-online-endpoints
Managed vnet with managed online endpoints
2 parents a1d8671 + 91122b0 commit 2cbe471

15 files changed

+355
-312
lines changed

articles/machine-learning/concept-endpoints-online.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ ms.topic: conceptual
99
author: santiagxf
1010
ms.author: fasantia
1111
ms.reviewer: mopeakande
12-
ms.custom: devplatv2
12+
ms.custom: devplatv2, moe-wsvnet
1313
ms.date: 04/01/2023
1414
#Customer intent: As an MLOps administrator, I want to understand what a managed endpoint is and why I need it.
1515
---
@@ -88,9 +88,9 @@ Visual Studio Code enables you to interactively debug endpoints.
8888

8989
Optionally, you can secure communication with a managed online endpoint by using private endpoints.
9090

91-
You can configure security for inbound scoring requests and outbound communications with the workspace and other services separately. Inbound communications use the private endpoint of the Azure Machine Learning workspace. Outbound communications use private endpoints created per deployment.
91+
You can configure security for inbound scoring requests and outbound communications with the workspace and other services separately. Inbound communications use the private endpoint of the Azure Machine Learning workspace. Outbound communications use private endpoints created for the workspace's managed virtual network (preview).
9292

93-
For more information, see [Secure online endpoints](how-to-secure-online-endpoint.md).
93+
For more information, see [Network isolation with managed online endpoints](concept-secure-online-endpoint.md).
9494

9595
## Managed online endpoints vs Kubernetes online endpoints
9696

@@ -110,7 +110,7 @@ The following table highlights the key differences between managed online endpoi
110110
| **Cluster sizing (scaling)** | [Managed manual and autoscale](how-to-autoscale-endpoints.md), supporting additional nodes provisioning | [Manual and autoscale](how-to-kubernetes-inference-routing-azureml-fe.md#autoscaling), supporting scaling the number of replicas within fixed cluster boundaries |
111111
| **Compute type** | Managed by the service | Customer-managed Kubernetes cluster (Kubernetes) |
112112
| **Managed identity** | [Supported](how-to-access-resources-from-endpoints-managed-identities.md) | Supported |
113-
| **Virtual Network (VNET)** | [Supported via managed network isolation](how-to-secure-online-endpoint.md) | User responsibility |
113+
| **Virtual Network** | [Supported via managed network isolation](concept-secure-online-endpoint.md) | User responsibility |
114114
| **Out-of-box monitoring & logging** | [Azure Monitor and Log Analytics powered](how-to-monitor-online-endpoints.md) (includes key metrics and log tables for endpoints and deployments) | User responsibility |
115115
| **Logging with Application Insights (legacy)** | Supported | Supported |
116116
| **View costs** | [Detailed to endpoint / deployment level](how-to-view-online-endpoints-costs.md) | Cluster level |

articles/machine-learning/concept-endpoints.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -88,12 +88,10 @@ The following table shows a summary of the different features available to onlin
8888
| Swagger support | Yes | No |
8989
| Authentication | Key and token | Azure AD |
9090
| Private network support | Yes | Yes |
91-
| Managed network isolation<sup>1</sup> | Yes | No |
91+
| Managed network isolation | Yes | No |
9292
| Customer-managed keys | Yes | No |
9393
| Cost basis | None | None |
9494

95-
<sup>1</sup> [*Managed network isolation*](how-to-secure-online-endpoint.md) allows you to manage the networking configuration of the endpoint independently of the configuration of the Azure Machine Learning workspace.
96-
9795
#### Deployments
9896

9997
The following table shows a summary of the different features available to online and batch endpoints at the deployment level. These concepts apply to each deployment under the endpoint.

articles/machine-learning/concept-secure-network-traffic-flow.md

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ description: Learn how network traffic flows between components when your Azure
55
services: machine-learning
66
ms.service: machine-learning
77
ms.subservice: enterprise-readiness
8-
ms.custom: event-tier1-build-2022
8+
ms.custom: event-tier1-build-2022, moe-wsvnet
99
ms.topic: conceptual
1010
ms.author: jhirono
1111
author: jhirono
@@ -134,24 +134,23 @@ If you use Visual Studio Code on a compute instance, you must allow other outbou
134134
:::moniker range="azureml-api-2"
135135
## Scenario: Use online endpoints
136136

137-
__Inbound__ communication with the scoring URL of the online endpoint can be secured using the `public_network_access` flag on the endpoint. Setting the flag to `disabled` restricts the online endpoint to receiving traffic only from the virtual network. For secure inbound communications, the Azure Machine Learning workspace's private endpoint is used.
137+
Security for inbound and outbound communication are configured separately for managed online endpoints.
138138

139-
__Outbound__ communication from a deployment can be secured on a per-deployment basis by using the `egress_public_network_access` flag. Outbound communication in this case is from the deployment to Azure Container Registry, storage blob, and workspace. Setting the flag to `true` will restrict communication with these resources to the virtual network.
139+
#### Inbound communication
140140

141-
> [!NOTE]
142-
> For secure outbound communication, a private endpoint is created for each deployment where `egress_public_network_access` is set to `disabled`.
141+
__Inbound__ communication with the scoring URL of the online endpoint can be secured using the `public_network_access` flag on the endpoint. Setting the flag to `disabled` ensures that the online endpoint receives traffic only from a client's virtual network through the Azure Machine Learning workspace's private endpoint.
142+
143+
The `public_network_access` flag of the Azure Machine Learning workspace also governs the visibility of the online endpoint. If this flag is `disabled`, then the scoring endpoints can only be accessed from virtual networks that contain a private endpoint for the workspace. If it is `enabled`, then the scoring endpoint can be accessed from the virtual network and public networks.
143144

144-
Visibility of the endpoint is also governed by the `public_network_access` flag of the Azure Machine Learning workspace. If this flag is `disabled`, then the scoring endpoints can only be accessed from virtual networks that contain a private endpoint for the workspace. If it is `enabled`, then the scoring endpoint can be accessed from the virtual network and public networks.
145+
#### Outbound communication
145146

146-
### Supported configurations
147+
__Outbound__ communication from a deployment can be secured at the workspace level by enabling managed virtual network isolation for your Azure Machine Learning workspace (preview). Enabling this setting causes Azure Machine Learning to create a managed virtual network for the workspace. Any deployments in the workspace's managed virtual network can use the virtual network's private endpoints for outbound communication.
148+
[!INCLUDE [machine-learning-preview-generic-disclaimer](includes/machine-learning-preview-generic-disclaimer.md)]
149+
150+
The [legacy network isolation method for securing outbound communication](concept-secure-online-endpoint.md#secure-outbound-access-with-legacy-network-isolation-method) worked by disabling a deployment's `egress_public_network_access` flag. We strongly recommend that you secure outbound communication for deployments by using a [workspace managed virtual network](concept-secure-online-endpoint.md) instead. Unlike the legacy approach, the `egress_public_network_access` flag for the deployment no longer applies when you use a workspace managed virtual network with your deployment (preview). Instead, outbound communication will be controlled by the rules set for the workspace's managed virtual network.
147151

148-
| Configuration | Inbound </br> (Endpoint property) | Outbound </br> (Deployment property) | Supported? |
149-
| -------- | -------------------------------- | --------------------------------- | --------- |
150-
| secure inbound with secure outbound | `public_network_access` is disabled | `egress_public_network_access` is disabled | Yes |
151-
| secure inbound with public outbound | `public_network_access` is disabled | `egress_public_network_access` is enabled | Yes |
152-
| public inbound with secure outbound | `public_network_access` is enabled | `egress_public_network_access` is disabled | Yes |
153-
| public inbound with public outbound | `public_network_access` is enabled | `egress_public_network_access` is enabled | Yes |
154152
:::moniker-end
153+
155154
## Scenario: Use Azure Kubernetes Service
156155

157156
For information on the outbound configuration required for Azure Kubernetes Service, see the connectivity requirements section of [How to secure inference](how-to-secure-inferencing-vnet.md).

0 commit comments

Comments
 (0)