工作區受控虛擬網路隔離
適用於:Azure CLI ml 延伸模組 v2 (目前)Python SDK azure-ai-ml v2 (目前)
Azure Machine Learning 為受控虛擬網路 (受控 VNet) 隔離提供支援。 使用內建的工作區層級 Azure Machine Learning 受控 VNet,受控 VNet 隔離可簡化並自動化您的網路隔離設定。 受控 VNet 可保護您的受控 Azure Machine Learning 資源,例如計算實例、計算叢集、無伺服器計算及受控線上端點。
使用受控網路保護工作區,可提供從工作區和受控計算進行輸出存取的網路隔離。 您建立和管理 的 Azure 虛擬網路可用來提供對工作區進行輸入存取的網路隔離。 例如,工作區的私人端點會在您的 Azure 虛擬網路中建立。 任何連線到虛擬網路的用戶端都可以透過私人端點存取工作區。 在受控計算上執行作業時,受控網路會限制計算可存取的內容。
受控虛擬網路結構
啟用受控虛擬網路隔離時,會為工作區建立受控 VNet。 您為工作區建立的受控計算資源會自動使用此受控 VNet。 受控 VNet 可以針對工作區所使用的 Azure 資源使用私人端點,例如 Azure 儲存體、Azure Key Vault 和 Azure Container Registry。
來自受控 VNet 的輸出流量有兩種不同的設定模式:
提示
不論您使用的輸出模式為何,對 Azure 資源的流量都可以設定為使用私人端點。 例如,您可以允許對網際網路的所有輸出流量,但藉由新增資源的輸出規則來限制與 Azure 資源的通訊。
輸出模式 | 描述 | 案例 |
---|---|---|
允許網際網路輸出 | 允許來自受控 VNet 的所有網際網路輸出流量。 | 您想要不受限制地存取網際網路上的機器學習資源,例如 Python 套件或預先定型的模型。1 |
僅允許核准的輸出 | 透過指定服務標籤來允許輸出流量。 | * 您想要將資料外洩的風險降到最低,但必須在私人環境中準備所有必要的機器學習成品。 * 您要設定已核准的服務、服務標籤或 FQDN 清單的輸出存取。 |
停用 | 輸入和輸出流量不受限制,或您使用自己的 Azure 虛擬網路來保護資源。 | 您想要來自工作區的輸入和輸出公開,或是使用自己的 Azure VNet 處理網路隔離。 |
1:您可以使用輸出規則搭配 [僅允許核准的輸出] 模式,以達到與使用允許網際網路輸出相同的結果。 差異包括:
- 您必須為需要允許的每個輸出連線新增規則。
- 新增 FQDN 輸出規則會增加您的成本,因為此規則類型會使用 Azure 防火牆。 如需詳細資訊,請參閱價格
- [僅允許核准的輸出] 的預設規則是設計來將資料外洩的風險降到最低。 您新增的任何輸出規則都可能會增加風險。
受控 VNet 已預先設定必要的預設規則。 它也已針對私人端點連線至您的工作區、工作區的預設儲存體、容器登錄和金鑰保存庫設定,如果是設定為私人;否則工作區隔離模式會設定為 [僅允許核准的輸出]。 選擇隔離模式之後,您只需要考慮可能需要新增的其他輸出需求。
下圖顯示設定為 [允許網際網路輸出] 的受控 VNet:
下圖顯示設定為 [僅允許核准的輸出] 的受控 VNet:
注意
在此設定中,工作區所使用的儲存體、金鑰保存庫和容器登錄會標幟為私人。 由於它們標幟為私人,因此會使用私人端點與其通訊。
注意
一旦受控 VNet 工作區設定為 [允許網際網路輸出],就無法將工作區重新設定為 [已停用]。 同樣地,一旦受控 VNet 工作區設定為 [僅允許核准的輸出],就無法重新設定工作區為 [允許網際網路輸出]。 在工作區中選取受控 VNet 的隔離模式時,請記住這一點。
Azure Machine Learning Studio
如果您想要使用整合式筆記本,或從工作室在預設儲存體帳戶中建立資料集,您的用戶端需要存取預設儲存體帳戶。 在用戶端使用的 Azure 虛擬網路中,為預設儲存體帳戶建立私人端點或服務端點。
Azure Machine Learning 工作室的一部分會在用戶端的網頁瀏覽器中本機執行,並與工作區的預設儲存體直接通訊。 在用戶端的虛擬網路中建立私人端點或服務端點 (針對預設儲存體帳戶),可確保用戶端可以與儲存體帳戶通訊。
如需建立私人端點或服務端點的詳細資訊,請參閱私下連線至儲存體帳戶和服務端點文章。
受保護的相關聯資源
如果您使用服務端點或私人端點將下列服務新增至虛擬網路(停用公用存取),請允許受信任的 Microsoft 服務 存取這些服務:
服務 | 端點資訊 | 允許信任的資訊 |
---|---|---|
Azure Key Vault | 服務端點 私人端點 |
允許信任的 Microsoft 服務略過此防火牆 |
Azure 儲存體帳戶 | 服務和私人端點 私人端點 |
從 Azure 資源執行個體授與存取權 或 將存取權授與信任的 Azure 服務 |
Azure Container Registry | 私人端點 | 允許信任的服務 |
必要條件
遵循本文中的步驟之前,請確定您已滿足下列必要條件:
Azure 訂用帳戶。 如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶。 試用免費或付費版本的 Azure Machine Learning。
您必須為 Azure 訂用帳戶註冊 Microsoft.Network 資源提供者。 建立受控虛擬網路的私人端點時,工作區會使用此資源提供者。
如需有關註冊資源提供者的詳細資訊,請參閱解決資源提供者註冊的錯誤。
部署受控網路時所使用的 Azure 身分識別需要下列 Azure 角色型存取控制 (Azure RBAC) 動作來建立私人端點:
Microsoft.MachineLearningServices/workspaces/privateEndpointConnections/read
Microsoft.MachineLearningServices/workspaces/privateEndpointConnections/write
Azure CLI 和 Azure CLI 的
ml
擴充功能。 如需詳細資訊,請參閱安裝、設定和使用 CLI (v2)。提示
Azure Machine Learning 受控 VNet 於 2023 年 5 月 23 日推出。 如果您有舊版的 ml 延伸模組,您可能需要更新它,本文中的範例才能運作。 若要更新延伸模組,請使用下列 Azure CLI 命令:
az extension update -n ml
本文中的 CLI 範例假設您使用 Bash (或相容的) 殼層。 例如,從 Linux 系統或 Windows 子系統 Linux 版。
本文中的 Azure CLI 範例會使用
ws
來表示工作區的名稱,以及rg
來表示資源群組的名稱。 使用命令搭配您的 Azure 訂用帳戶時,請視需要變更這些值。
注意
如果您使用 UAI 工作區,請務必將 [Azure AI 企業網路連接核准者] 角色新增至您的身分識別。 如需詳細資訊,請參閱 Azure 使用者指派的受控識別。
設定受控虛擬網路以允許網際網路輸出
提示
建立受控 VNet 會延後,直到建立計算資源或手動啟動佈建為止。 當允許自動建立時,建立第一個計算資源大約需要 30 分鐘的時間,因為它也會佈建網路。 如需詳細資訊,請參閱手動佈建網路。
重要
如果您計劃提交無伺服器 Spark 作業,則必須手動開始佈建。 如需詳細資訊,請參閱設定無伺服器 Spark 作業一節。
若要設定允許網際網路輸出通訊的受控 VNet,您可以使用 --managed-network allow_internet_outbound
參數或包含下列項目的 YAML 設定檔:
managed_network:
isolation_mode: allow_internet_outbound
您也可以定義工作區所依賴的其他 Azure 服務的輸出規則。 這些規則會定義私人端點,讓 Azure 資源安全地與受控 VNet 通訊。 下列規則示範如何將私人端點新增至 Azure Blob 資源。
managed_network:
isolation_mode: allow_internet_outbound
outbound_rules:
- name: added-perule
destination:
service_resource_id: /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE_ACCOUNT_NAME>
spark_enabled: true
subresource_target: blob
type: private_endpoint
您可以使用 az ml workspace create
或 az ml workspace update
命令來設定受控 VNet:
建立新的工作區:
下列範例會建立新的工作區。
--managed-network allow_internet_outbound
參數會為工作區設定受控 VNet:az ml workspace create --name ws --resource-group rg --managed-network allow_internet_outbound
若要改用 YAML 檔案建立工作區,請使用
--file
參數並指定包含組態設定的 YAML 檔案:az ml workspace create --file workspace.yaml --resource-group rg --name ws
下列 YAML 範例會定義具有受控 VNet 的工作區:
name: myworkspace location: EastUS managed_network: isolation_mode: allow_internet_outbound
更新現有的工作區:
警告
更新現有的工作區以使用受控虛擬網路之前,您必須刪除工作區的所有計算資源。 這包括計算執行個體、計算叢集和受控線上端點。
下列範例會更新現有的工作區。
--managed-network allow_internet_outbound
參數會為工作區設定受控 VNet:az ml workspace update --name ws --resource-group rg --managed-network allow_internet_outbound
若要使用 YAML 檔案更新現有的工作區,請使用
--file
參數並指定包含組態設定的 YAML 檔案:az ml workspace update --file workspace.yaml --name ws --resource-group MyGroup
下列 YAML 範例會定義工作區的受控 VNet。 它也會示範如何將私人端點連線新增至工作區所使用的資源;在此範例中為用於 Blob 存放區的私人端點:
name: myworkspace managed_network: isolation_mode: allow_internet_outbound outbound_rules: - name: added-perule destination: service_resource_id: /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE_ACCOUNT_NAME> spark_enabled: true subresource_target: blob type: private_endpoint
將受控虛擬網路設定為僅允許核准的輸出
提示
當您建立計算資源時,會自動佈建受控 VNet。 允許自動建立時,建立第一個計算資源大約需要 30 分鐘的時間,因為還要佈建網路。 如果您已設定 FQDN 輸出規則,則第一個 FQDN 規則會對佈建時間增加約 10 分鐘。 如需詳細資訊,請參閱手動佈建網路。
重要
如果您計劃提交無伺服器 Spark 作業,則必須手動開始佈建。 如需詳細資訊,請參閱設定無伺服器 Spark 作業一節。
若要設定僅允許核准的輸出通訊的受控 VNet,您可以使用 --managed-network allow_only_approved_outbound
參數或包含下列項目的 YAML 設定檔:
managed_network:
isolation_mode: allow_only_approved_outbound
您也可以定義輸出規則,以定義核准的輸出通訊。 您可以針對 service_tag
、fqdn
和 private_endpoint
類型建立輸出規則。 下列規則示範如何將私人端點新增至 Azure Blob 資源、將服務標籤新增至 Azure Data Factory,以及將 FQDN 新增至 pypi.org
:
重要
- 只有在受控 VNet 設定為
allow_only_approved_outbound
時,對服務標籤或 FQDN 新增輸出才會有效。 - 如果您新增輸出規則,Microsoft 無法對資料外流進行保證。
警告
FQDN 輸出規則是使用 Azure 防火牆來實作。 如果您使用輸出 FQDN 規則,Azure 防火牆的費用會增加至您的帳單中。 如需詳細資訊,請參閱定價。
managed_network:
isolation_mode: allow_only_approved_outbound
outbound_rules:
- name: added-servicetagrule
destination:
port_ranges: 80, 8080
protocol: TCP
service_tag: DataFactory
type: service_tag
- name: add-fqdnrule
destination: 'pypi.org'
type: fqdn
- name: added-perule
destination:
service_resource_id: /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE_ACCOUNT_NAME>
spark_enabled: true
subresource_target: blob
type: private_endpoint
您可以使用 az ml workspace create
或 az ml workspace update
命令來設定受控 VNet:
建立新的工作區:
下列範例會使用
--managed-network allow_only_approved_outbound
參數來設定受控 VNet:az ml workspace create --name ws --resource-group rg --managed-network allow_only_approved_outbound
下列 YAML 檔案會定義具有受控 VNet 的工作區:
name: myworkspace location: EastUS managed_network: isolation_mode: allow_only_approved_outbound
若要使用 YAML 檔案建立工作區,請使用
--file
參數:az ml workspace create --file workspace.yaml --resource-group rg --name ws
更新現有的工作區
警告
更新現有的工作區以使用受控虛擬網路之前,您必須刪除工作區的所有計算資源。 這包括計算執行個體、計算叢集和受控線上端點。
下列範例會使用
--managed-network allow_only_approved_outbound
參數來設定現有工作區的受控 VNet:az ml workspace update --name ws --resource-group rg --managed-network allow_only_approved_outbound
下列 YAML 檔案會定義工作區的受控 VNet。 它也會示範如何將核准的輸出新增至受控 VNet。 在此範例中,會為兩個服務標籤新增輸出規則:
警告
FQDN 輸出規則是使用 Azure 防火牆來實作。 如果您使用輸出 FQDN 規則,Azure 防火牆的費用會增加至您的帳單中。如需詳細資訊,請參閱價格。
name: myworkspace_dep managed_network: isolation_mode: allow_only_approved_outbound outbound_rules: - name: added-servicetagrule destination: port_ranges: 80, 8080 protocol: TCP service_tag: DataFactory type: service_tag - name: add-fqdnrule destination: 'pypi.org' type: fqdn - name: added-perule destination: service_resource_id: /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE_ACCOUNT_NAME> spark_enabled: true subresource_target: blob type: private_endpoint
設定無伺服器 Spark 作業
提示
只有在您計劃提交無伺服器 Spark 作業時,才需要本節中的步驟。 如果您未計劃提交無伺服器 Spark 作業,則可以略過本節。
若要啟用受控 VNet 的無伺服器 Spark 作業,您必須執行下列動作:
- 設定工作區的受控 VNet,並為 Azure 儲存體帳戶新增輸出私人端點。
- 設定受控 VNet 之後,請佈建它,並標幟它以允許 Spark 作業。
設定輸出私人端點。
使用 YAML 檔案來定義受控 VNet 設定,並新增 Azure 儲存體帳戶的私人端點。 此外,請設定
spark_enabled: true
:提示
此範例用於設定為使用
isolation_mode: allow_internet_outbound
以允許網際網路流量的受控 VNet。 如果您要僅允許核准的輸出流量,請使用isolation_mode: allow_only_approved_outbound
。name: myworkspace managed_network: isolation_mode: allow_internet_outbound outbound_rules: - name: added-perule destination: service_resource_id: /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE_ACCOUNT_NAME> spark_enabled: true subresource_target: blob type: private_endpoint
您可以使用 YAML 設定檔搭配
az ml workspace update
命令,方法是指定--file
參數和 YAML 檔案的名稱。 例如,下列命令會使用名為workspace_pe.yml
的 YAML 檔案來更新現有的工作區:az ml workspace update --file workspace_pe.yml --resource_group rg --name ws
注意
啟用 [僅允許核准的輸出] 時 (
isolation_mode: allow_only_approved_outbound
),Spark 工作階段設定中定義的 conda 套件相依性將無法安裝。 若要解決此問題,請將沒有外部相依性的獨立 Python 套件 wheel 上傳至 Azure 儲存體帳戶,並對此儲存體帳戶建立私人端點。 使用 Python 套件 wheel 的路徑作為 Spark 作業中的py_files
參數。 設定 FQDN 輸出規則不會略過此問題,因為 Spark 不支援 FQDN 規則傳播。佈建受控 VNet。
注意
如果您的工作區已針對公用端點設定 (例如,使用 Azure 虛擬網路),且已啟用公用網路存取,您必須先停用它,才能佈建受控 VNet。 如果您在佈建受控 VNet 時未停用公用網路存取,則可能無法成功建立受控端點的私人端點。
下列範例示範如何使用
--include-spark
參數為無伺服器 Spark 作業佈建受控 VNet。az ml workspace provision-network -g my_resource_group -n my_workspace_name --include-spark
手動佈建受控 VNet
當您建立計算執行個體時,會自動佈建受控 VNet。 依賴自動佈建時,建立第一個計算執行個體大約需要 30 分鐘的時間,因為它也會佈建網路。 如果您已設定 FQDN 輸出規則 (僅隨著僅允許核准的模式提供),則第一個 FQDN 規則會對佈建時間增加約 10 分鐘。 如果您有一大組輸出規則要佈建在受控網路中,則佈建需要較長的時間才能完成。 增加的佈建時間可能會導致第一個計算執行個體建立逾時。
若要減少等候時間且避免潛在的逾時錯誤,建議您手動佈建受控網路。 然後,請等候佈建完成,再建立計算執行個體。
注意
若要建立線上部署,您必須手動佈建受控網路,或先建立計算執行個體,以進行自動佈建。
下列範例示範如何佈建受控 VNet。
提示
如果您計劃提交無伺服器 Spark 作業,請新增 --include-spark
參數。
az ml workspace provision-network -g my_resource_group -n my_workspace_name
若要確認佈建已完成,請使用下列命令:
az ml workspace show -n my_workspace_name -g my_resource_group --query managed_network
設定映像組建
當工作區的 Azure Container Registry 位於虛擬網路後方時,它無法用來直接建置 Docker 映像。 請改為將您的工作區設定為使用計算叢集或計算執行個體來建置映像。
重要
用來建置 Docker 映像的計算資源必須能夠存取用來定型及部署模型的套件存放庫。 如果您使用設定為 [僅允許核准的輸出] 的網路,您可能需要新增允許存取公用存放庫的規則或使用私人 Python 套件。
若要更新工作區以使用計算叢集或計算執行個體來建置 Docker 映像,請使用 az ml workspace update
命令搭配 --image-build-compute
參數:
az ml workspace update --name ws --resource-group rg --image-build-compute mycompute
管理輸出規則
若要列出工作區的受控 VNet 輸出規則,請使用下列命令:
az ml workspace outbound-rule list --workspace-name ws --resource-group rg
若要檢視受控 VNet 輸出規則的詳細資料,請使用下列命令:
az ml workspace outbound-rule show --rule rule-name --workspace-name ws --resource-group rg
若要從受控 VNet 移除輸出規則,請使用下列命令:
az ml workspace outbound-rule remove --rule rule-name --workspace-name ws --resource-group rg
必要規則的清單
提示
這些規則會自動新增至受控 VNet。
私人端點:
- 當受控 VNet 的隔離模式為
Allow internet outbound
時,將會從工作區和已停用公用網路存取的相關聯資源 (Key Vault、儲存體帳戶、Container Registry、Azure Machine Learning 工作區) 的受控 VNet 自動建立私人端點輸出規則作為必要規則。 - 當受控 VNet 的隔離模式為
Allow only approved outbound
時,將會從工作區和相關聯資源 (而不論這些資源的網路存取模式為何) (Key Vault、儲存體帳戶、Container Registry、Azure Machine Learning 工作區) 的受控 VNet 自動建立私人端點輸出規則作為必要規則。
輸出服務標籤規則:
AzureActiveDirectory
AzureMachineLearning
BatchNodeManagement.region
AzureResourceManager
AzureFrontDoor.FirstParty
MicrosoftContainerRegistry
AzureMonitor
輸入服務標籤規則:
AzureMachineLearning
案例特定輸出規則的清單
案例:存取公用機器學習套件
若要允許安裝 Python 套件以進行定型和部署,請新增輸出 FQDN 規則以允許流量傳送至下列主機名稱:
警告
FQDN 輸出規則是使用 Azure 防火牆來實作。 如果您使用輸出 FQDN 規則,Azure 防火牆的費用會增加至您的帳單中。 如需詳細資訊,請參閱定價。
注意
這不是網際網路上所有 Python 資源所需的完整主機清單,只是最常使用的主機。 例如,如果您需要存取 GitHub 存放庫或其他主機,則必須識別並新增該情節所需的主機。
主機名稱 | 用途 |
---|---|
anaconda.com *.anaconda.com |
用來安裝預設封裝。 |
*.anaconda.org |
用來取得存放庫資料。 |
pypi.org |
用來列出來自預設索引的相依性 (如果有的話),而且使用者設定不會覆寫索引。 如果覆寫索引,您也必須允許 *.pythonhosted.org 。 |
pytorch.org *.pytorch.org |
由基於 PyTorch 的一些範例使用。 |
*.tensorflow.org |
由基於 Tensorflow 的一些範例使用。 |
案例:使用 Visual Studio Code Desktop 或 Web 搭配計算執行個體
如果您計劃使用 Visual Studio Code 搭配 Azure Machine Learning,請新增輸出 FQDN 規則,以允許流量傳送至下列主機:
警告
FQDN 輸出規則是使用 Azure 防火牆來實作。 如果您使用輸出 FQDN 規則,Azure 防火牆的費用會增加至您的帳單中。 如需詳細資訊,請參閱定價。
*.vscode.dev
vscode.blob.core.windows.net
*.gallerycdn.vsassets.io
raw.githubusercontent.com
*.vscode-unpkg.net
*.vscode-cdn.net
*.vscodeexperiments.azureedge.net
default.exp-tas.com
code.visualstudio.com
update.code.visualstudio.com
*.vo.msecnd.net
marketplace.visualstudio.com
vscode.download.prss.microsoft.com
案例:使用批次端點或 ParallelRunStep
如果您規劃使用 Azure Machine Learning 批次端點進行部署或 ParallelRunStep,請新增輸出私人端點規則,以允許流量傳送至預設儲存體帳戶的下列子資源:
queue
table
案例:使用提示流程搭配 Azure OpenAI、內容安全和 Azure AI 搜尋服務
- Azure AI 服務的私人端點
- Azure AI 搜尋服務的私人端點
案例:使用 HuggingFace 模型
如果您計劃使用 HuggingFace 模型搭配 Azure Machine Learning,請新增輸出 FQDN 規則,以允許流量傳送至下列主機:
警告
FQDN 輸出規則是使用 Azure 防火牆來實作。 如果您使用輸出 FQDN 規則,Azure 防火牆的費用會增加至您的帳單中。 如需詳細資訊,請參閱定價。
docker.io
*.docker.io
*.docker.com
production.cloudflare.docker.com
cdn.auth0.com
cdn-lfs.huggingface.co
案例:從選取的 IP 位址啟用存取
如果您要啟用來自特定 IP 位址的存取,請使用下列動作:
新增輸出私人端點規則,以允許流量傳送至 Azure Machine Learning 工作區。 這可讓受控虛擬網路中建立的計算執行個體存取工作區。
提示
您無法在工作區建立期間新增此規則,因為工作區尚未存在。
啟用工作區的公用網路存取。 如需詳細資訊,請參閱公用網路存取已啟用。
將 IP 位址新增至 Azure Machine Learning 的防火牆。 如需詳細資訊,請參閱僅從 IP 範圍啟用存取。
注意
僅支援 IPv4 位址。
私人端點
私人端點目前支援下列 Azure 服務:
- Azure Machine Learning
- Azure Machine Learning 登錄
- Azure 儲存體 (所有子資源類型)
- Azure Container Registry
- Azure Key Vault
- Azure AI 服務
- Azure AI 搜尋服務 (先前稱為認知搜尋)
- Azure SQL Server
- Azure Data Factory
- Azure Cosmos DB (所有子資源類型)
- Azure 事件中樞
- Azure Redis 快取
- Azure Databricks
- 適用於 MariaDB 的 Azure 資料庫
- 適用於 PostgreSQL 的 Azure 資料庫單一伺服器
- 適用於 PostgreSQL 的 Azure 資料庫彈性伺服器
- 適用於 MySQL 的 Azure 資料庫
- Azure API 管理
當您建立私人端點時,您會提供端點所連線的資源類型和子資源。 某些資源有多個類型和子資源。 如需詳細資訊,請參閱什麼是私人端點。
當您為 Azure Machine Learning 相依性資源建立私人端點時,例如 Azure 儲存體、Azure Container Registry 和 Azure Key Vault,資源可以位於不同的 Azure 訂用帳戶中。 不過,資源必須位於與 Azure Machine Learning 工作區相同的租用戶中。
重要
設定 Azure Machine Learning 受控 VNet 的私人端點時,只有在建立第一個計算或強制受控 VNet 佈建時,才會建立私人端點。 如需強制受控 VNet 佈建的詳細資訊,請參閱設定無伺服器 Spark 作業。
定價
Azure Machine Learning 受控 VNet 功能是免費的。 不過,您需支付受控 VNet 所使用的下列資源的費用:
Azure Private Link - 用來保護受控 VNet 與 Azure 資源之間通訊的私人端點會依賴 Azure Private Link。 如需價格的詳細資訊,請參閱 Azure Private Link 價格。
FQDN 輸出規則 - FQDN 輸出規則是使用 Azure 防火牆來實作。 如果您使用輸出 FQDN 規則,Azure 防火牆的費用會增加至您的帳單中。 Azure Machine Learning 會佈建 Azure 防火牆 (標準 SKU)。
重要
在您新增輸出 FQDN 規則之前,不會建立防火牆。 如需價格的詳細資訊,請參閱 Azure 防火牆價格並檢視標準版本的價格。
限制
- Azure AI Studio 不支援使用您自己的 Azure 虛擬網路來保護中樞、專案或計算資源。 您只能使用受控網路功能來保護這些資源。
- 一旦您啟用工作區的受控 VNet 隔離 (允許網際網路輸出或只允許核准的輸出),就無法將其停用。
- 受控 VNet 會使用私人端點連線來存取您的私人資源。 Azure 資源 (例如儲存體帳戶) 不能同時有私人端點和服務端點。 我們建議在所有案例中使用私人端點。
- 刪除工作區時,會刪除受控 VNet。
- 資料外流保護會自動針對唯一核准的輸出模式啟用。 如果您新增其他輸出規則,例如 FQDN,Microsoft 無法保證您受到保護,不會將資料外流到這些輸出目的地。
- 使用受控 VNet 時,不支援在與工作區不同的區域中建立計算叢集。
- Azure Machine Learning 受控 VNet 中不支援 Kubernetes 和連結的 VM。
- 使用 FQDN 輸出規則會增加受控 VNet 的成本,因為 FQDN 規則會使用 Azure 防火牆。 如需詳細資訊,請參閱定價。
- FQDN 輸出規則僅支援埠 80 和 443。
- 如果您的計算執行個體位於受控網路中,且未設定任何公用 IP,請使用
az ml compute connect-ssh
命令以使用 SSH 連線。 - 使用受控 Vnet 時,您無法在自訂 Vnet 內部署計算資源。 計算資源只能在受控 Vnet 內建立。
- 受管理的網路隔離無法建立受控虛擬網路到使用者內部部署資源之間的私人連線。 如需支援的私人連線清單,請參閱私人端點。
- 如果您的受控網路設定為只允許已核准的輸出,您就無法使用 FQDN 規則來存取 Azure 儲存體 帳戶。 您必須改用私人端點。
計算資源的移轉
如果您有現有的工作區,且想要為其啟用受控 VNet,則現有受控計算資源目前沒有支援的移轉路徑。 您必須刪除所有現有的受控計算資源,並在啟用受控 VNet 之後重新建立它們。 下列清單包含必須刪除並重新建立的計算資源:
- 計算叢集
- 計算執行個體
- 受控線上端點