分享方式:


如何設定 Azure AI Studio 中樞的受控網路

重要

本文所述的部分功能可能僅適用於預覽版。 此預覽版本沒有服務等級協定,不建議將其用於生產工作負載。 可能不支援特定功能,或可能已經限制功能。 如需詳細資訊,請參閱 Microsoft Azure 預覽版增補使用條款

我們提供兩個網路隔離層面。 其中一個是存取 Azure AI Studio 中樞的網路隔離。 另一個是適用於中樞和專案計算資源 (例如計算執行個體、無伺服器和受控線上端點) 的網路隔離。本文件會解釋在下圖中醒目顯示的後者。 您可以使用中樞內建網路隔離來保護計算資源。

中樞網路隔離的圖表。

您必須設定下列網路隔離設定。

  • 選擇網路隔離模式。 您有兩個選項:允許網際網路輸出模式,或是僅允許核准的輸出模式。
  • 如果您是以僅允許核准的輸出模式使用 Visual Studio Code 整合,請建立使用 Visual Studio Code 一節所述的 FQDN 輸出規則。
  • 如果您是以僅允許核准的輸出模式使用 HuggingFace 模型,請建立使用 HuggingFace 模型一節所述的 FQDN 輸出規則。
  • 如果您是以僅允許核准的輸出模式使用其中一種開放原始碼模型,請建立由 Azure AI 策展一節中所述的 FQDN 輸出規則。

網路隔離架構和隔離模式

啟用受控虛擬網路隔離時,即會為中樞建立受控虛擬網路。 您為中樞建立的受控計算資源會自動使用這個受控虛擬網路。 針對中樞使用的 Azure 資源 (例如 Azure 儲存體、Azure Key Vault 和 Azure Container Registry),受控虛擬網路可以使用私人端點。

來自受控虛擬網路的輸出流量有三種不同的設定模式:

輸出模式 描述 案例
允許網際網路輸出 允許來自受控虛擬網路的所有網際網路輸出流量。 您想要不受限制地存取網際網路上的機器學習資源,例如 Python 套件或預先定型的模型。1
僅允許核准的輸出 透過指定服務標籤來允許輸出流量。 * 您想要將資料外洩的風險降到最低,但必須在私人環境中準備所有必要的機器學習成品。
* 您要設定已核准的服務、服務標籤或 FQDN 清單的輸出存取。
停用 輸入和輸出流量不受限制。 您希望允許中樞的公開輸入和輸出。

1 您可以使用輸出規則搭配 [僅允許核准的輸出] 模式,以達到與使用允許網際網路輸出相同的結果。 差異包括:

  • 一律使用私人端點來存取 Azure 資源。
  • 您必須針對每一個允許輸出連線新增規則。
  • 新增 FQDN 輸出規則會增加您的成本,因為此規則類型使用 Azure 防火牆。 如果您使用輸出 FQDN 規則,Azure 防火牆的費用會包含在您的計費中。 如需詳細資訊,請參閱定價
  • [僅允許核准的輸出] 的預設規則設計目的是為了將資料外洩的風險降到最低。 您新增的任何輸出規則都可能會增加風險。

受控虛擬網路已預先設定必要的預設規則。 如果規則設定為私人,則也要針對中樞、中樞預設儲存體、容器登錄和金鑰保存庫的私人端點連線設定這些規則,否則中樞隔離模式會設定為僅允許核准的輸出。 選擇隔離模式之後,您只需要考慮可能需要新增的其他輸出需求。

下圖顯示設定為 [允許網際網路輸出] 的受控虛擬網路:

設定為網際網路輸出的受控虛擬網路隔離圖表。

下圖顯示設定為 [僅允許核准的輸出] 的受控虛擬網路:

注意

在此設定中,中樞使用的儲存體、金鑰保存庫和容器登錄會標幟為私人。 由於它們標幟為私人,因此會使用私人端點與其通訊。

設定為只允許核准的輸出的受控虛擬網路隔離圖表。

必要條件

遵循本文中的步驟之前,請確定您已滿足下列必要條件:

  • Azure 訂用帳戶。 如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶。

  • 您必須為 Azure 訂用帳戶註冊 Microsoft.Network 資源提供者。 建立受控虛擬網路的私人端點時,中樞會使用此資源提供者。

    如需有關註冊資源提供者的詳細資訊,請參閱解決資源提供者註冊的錯誤

  • 部署受控網路時所使用的 Azure 身分識別需要下列 Azure 角色型存取控制 (Azure RBAC) 動作來建立私人端點:

    • Microsoft.MachineLearningServices/workspaces/privateEndpointConnections/read
    • Microsoft.MachineLearningServices/workspaces/privateEndpointConnections/write

限制

  • Azure AI Studio 目前不支援自備虛擬網路,僅支援受控虛擬網路隔離。
  • 啟用 Azure AI 的受控虛擬網路隔離之後,就無法停用。
  • 受控虛擬網路會使用私人端點連線來存取您的私人資源。 Azure 資源 (例如儲存體帳戶) 不能同時有私人端點和服務端點。 我們建議在所有案例中使用私人端點。
  • 刪除 Azure AI 時會一併刪除受控虛擬網路。
  • 資料外流保護會自動針對唯一核准的輸出模式啟用。 如果您新增其他輸出規則,例如 FQDN,Microsoft 無法保證您受到保護,不會將資料外流到這些輸出目的地。
  • 使用 FQDN 輸出規則會增加受控虛擬網路的成本,因為 FQDN 規則會使用 Azure 防火牆。 如需詳細資訊,請參閱定價
  • FQDN 輸出規則僅支援埠 80 和 443。
  • 透過受控網路使用計算執行個體時,請使用 az ml compute connect-ssh 命令採用 SSH 連線至計算。

設定受控虛擬網路以允許網際網路輸出

提示

建立受控 VNet 會延後,直到建立計算資源或手動啟動佈建為止。 允許自動建立時,建立第一個計算資源大約需要 30 分鐘的時間,因為還要佈建網路。

  • 建立新的中樞

    1. 登入 Azure 入口網站,然後從 [建立資源] 功能表選擇 [Azure AI Studio]。

    2. 選取 [+ 新增 Azure AI]

    3. 在 [基本] 索引標籤上提供必要資訊。

    4. 從 [網路] 索引標籤中,選取 [具有網際網路輸出的私人]

    5. 若要新增「輸出規則」,請從 [網路] 索引標籤選取 [新增使用者定義的輸出規則]。在 [輸出規則] 資訊看板提供下列資訊:

      • 規則名稱:規則的名稱。 此名稱不可與此中樞內其他名稱重複。
      • 目的地類型:當網路隔離是網際網路輸出的私人時,私人端點是唯一的選項。 中樞受控虛擬網路不支援為所有 Azure 資源類型建立私人端點。 如需支援的資源清單,請參閱私人端點一節。
      • 訂用帳戶:包含您要新增私人端點的 Azure 資源的訂用帳戶。
      • 資源群組:包含您要新增私人端點的 Azure 資源的資源群組。
      • 資源類型:Azure 資源的類型。
      • 資源名稱:Azure 資源的名稱。
      • 子資源:Azure 資源類型的子資源。

      選取儲存以儲存規則。 您可以繼續使用 [新增使用者定義的輸出規則] 來新增規則。

    6. 繼續依據一般程序建立中樞。

  • 更新現有的中樞

    1. 登入 Azure 入口網站,然後選取您想要啟用受控虛擬網路隔離的中樞。

    2. 選取 [網路],然後選取 [具有網際網路輸出的私人]

      • 若要「新增輸出規則」,請從 [網路] 索引標籤選取 [新增使用者定義的輸出規則]。從 [輸出規則] 資訊看板,提供與在 [建立新的中樞] 區段中建立中樞時所使用的相同資訊。

      • 若要刪除輸出規則,請針對規則選取 [刪除]

    3. 選取頁面頂端的 [儲存],以儲存對受控虛擬網路的變更。

將受控虛擬網路設定為僅允許核准的輸出

提示

當您建立計算資源時,會自動佈建受控 VNet。 允許自動建立時,建立第一個計算資源大約需要 30 分鐘的時間,因為還要佈建網路。 如果您已設定 FQDN 輸出規則,則第一個 FQDN 規則會對佈建時間增加約 10 分鐘

  • 建立新的中樞

    1. 登入 Azure 入口網站,然後從 [建立資源] 功能表選擇 [Azure AI Studio]。

    2. 選取 [+ 新增 Azure AI]

    3. 在 [基本] 索引標籤上提供必要資訊。

    4. 從 [網路] 索引標籤,選取 [具有已核准輸出的私人]

    5. 若要新增「輸出規則」,請從 [網路] 索引標籤選取 [新增使用者定義的輸出規則]。在 [輸出規則] 資訊看板提供下列資訊:

      • 規則名稱:規則的名稱。 此名稱不可與此中樞內其他名稱重複。
      • 目的地類型:私人端點、服務標籤或 FQDN。 只有在網路隔離是私人且已核准的輸出時,才能使用服務標籤和 FQDN。

      如果目的地類型為 [私人端點],請提供下列資訊:

      • 訂用帳戶:包含您要新增私人端點的 Azure 資源的訂用帳戶。
      • 資源群組:包含您要新增私人端點的 Azure 資源的資源群組。
      • 資源類型:Azure 資源的類型。
      • 資源名稱:Azure 資源的名稱。
      • 子資源:Azure 資源類型的子資源。

      提示

      中樞受控 VNet 不支援為所有 Azure 資源類型建立私人端點。 如需支援的資源清單,請參閱私人端點一節。

      如果目的地類型為 [服務標籤],請提供下列資訊:

      • 服務標籤:要新增至已核准輸出規則的服務標籤。
      • 通訊協定:要為服務標記允許的通訊協定。
      • 連接埠範圍:要為服務標籤允許的連接埠範圍。

      如果目的地類型為 [FQDN],請提供下列資訊:

      • FQDN 目的地:要新增至已核准輸出規則的完整網域名稱。

      選取儲存以儲存規則。 您可以繼續使用 [新增使用者定義的輸出規則] 來新增規則。

    6. 繼續依據一般程序建立中樞。

  • 更新現有的中樞

    1. 登入 Azure 入口網站,然後選取您想要啟用受控虛擬網路隔離的中樞。

    2. 選取 [網路],然後選取 [具有核准輸出的私人]

      • 若要「新增輸出規則」,請從 [網路] 索引標籤選取 [新增使用者定義的輸出規則]。從 [輸出規則] 資訊看板,提供與先前 [建立新的中樞] 區段中建立中樞時的相同資訊。

      • 若要刪除輸出規則,請針對規則選取 [刪除]

    3. 選取頁面頂端的 [儲存],以儲存對受控虛擬網路的變更。

手動佈建受控 VNet

當您建立計算執行個體時,會自動佈建受控 VNet。 依賴自動佈建時,建立第一個計算執行個體大約需要 30 分鐘的時間,因為它也會佈建網路。 如果您已設定 FQDN 輸出規則 (僅隨著僅允許核准的模式提供),則第一個 FQDN 規則會對佈建時間增加約 10 分鐘。 如果您有一大組輸出規則要佈建在受控網路中,則佈建需要較長的時間才能完成。 增加的佈建時間可能會導致第一個計算執行個體建立逾時。

若要減少等候時間且避免潛在的逾時錯誤,建議您手動佈建受控網路。 然後,請等候佈建完成,再建立計算執行個體。

注意

若要建立線上部署,您必須手動佈建受控網路,或先建立計算執行個體,以進行自動佈建。

使用 Azure CLIPython SDK 索引標籤,了解如何手動佈建受控 VNet。

管理輸出規則

  1. 登入 Azure 入口網站,然後選取您想要啟用受控虛擬網路隔離的中樞。
  2. 選取 [網路功能]。 [Azure AI 輸出存取] 區段可讓您管理輸出規則。
  • 若要新增輸出規則,請從 [網路] 索引標籤選取 [新增使用者定義的輸出規則]。從 [Azure AI 輸出規則] 資訊看板,提供下列資訊:

  • 若要啟用停用規則,請使用 [使用中] 資料行中的切換。

  • 若要刪除輸出規則,請針對規則選取 [刪除]

必要規則的清單

提示

這些規則會自動新增至受控 VNet。

私人端點

  • 當受控虛擬網路的隔離模式為 Allow internet outbound 時,將會從中樞和已停用公用網路存取的相關聯資源 (Key Vault、儲存體帳戶、Azure Container Registry、中樞) 的受控虛擬網路自動建立私人端點輸出規則作為必要規則。
  • 當受控虛擬網路的隔離模式為 Allow only approved outbound 時,將會從中樞和相關聯資源 (而不論這些資源的網路存取模式為何) (Key Vault、儲存體帳戶、Azure Container Registry、中樞) 的受控虛擬網路自動建立私人端點輸出規則作為必要規則。

輸出服務標籤規則:

  • AzureActiveDirectory
  • Azure Machine Learning
  • BatchNodeManagement.region
  • AzureResourceManager
  • AzureFrontDoor.FirstParty
  • MicrosoftContainerRegistry
  • AzureMonitor

輸入服務標籤規則:

  • AzureMachineLearning

案例特定輸出規則的清單

案例:存取公用機器學習套件

若要允許安裝 Python 套件以進行定型和部署,請新增輸出 FQDN 規則以允許流量傳送至下列主機名稱:

注意

這不是網際網路上所有 Python 資源所需的完整主機清單,只是最常使用的主機。 例如,如果您需要存取 GitHub 存放庫或其他主機,則必須識別並新增該情節所需的主機。

主機名稱 用途
anaconda.com
*.anaconda.com
用來安裝預設封裝。
*.anaconda.org 用來取得存放庫資料。
pypi.org 用來列出來自預設索引的相依性 (如果有的話),而且使用者設定不會覆寫索引。 如果覆寫索引,您也必須允許 *.pythonhosted.org
pytorch.org
*.pytorch.org
由基於 PyTorch 的一些範例使用。
*.tensorflow.org 由基於 Tensorflow 的一些範例使用。

案例:使用 Visual Studio Code

Visual Studio Code 依賴特定主機和連接埠來建立遠端連線。

主機

如果您計劃使用 Visual Studio Code 搭配中樞,請新增輸出 FQDN 規則,以允許流量傳送至下列主機:

  • *.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
  • pkg-containers.githubusercontent.com
  • github.com

連接埠

您必須允許連接埠 8704 到 8710 的網路流量。 VS Code 伺服器會動態選取此範圍內的第一個可用連接埠。

案例:使用 HuggingFace 模型

如果您計劃使用 HuggingFace 模型搭配中樞,請新增輸出 FQDN 規則,以允許流量傳送至下列主機:

  • docker.io
  • *.docker.io
  • *.docker.com
  • production.cloudflare.docker.com
  • cnd.auth0.com
  • cdn-lfs.huggingface.co

案例:由 Azure AI 策展

這些模型涉及在執行階段的相依性動態安裝,並需要輸出 FQDN 規則,以允許流量流向以下主機:

*.anaconda.org *.anaconda.com anaconda.com pypi.org *.pythonhosted.org *.pytorch.org pytorch.org

私人端點

私人端點目前支援下列 Azure 服務:

  • AI Studio 中樞
  • Azure AI 搜尋服務
  • Azure AI 服務
  • Azure API 管理
  • Azure Container Registry
  • Azure Cosmos DB (所有子資源類型)
  • Azure Data Factory
  • 適用於 MariaDB 的 Azure 資料庫
  • 適用於 MySQL 的 Azure 資料庫
  • 適用於 PostgreSQL 的 Azure 資料庫單一伺服器
  • 適用於 PostgreSQL 的 Azure 資料庫彈性伺服器
  • Azure Databricks
  • Azure 事件中樞
  • Azure Key Vault
  • Azure Machine Learning
  • Azure Machine Learning 登錄
  • Azure Redis 快取
  • Azure SQL Server
  • Azure 儲存體 (所有子資源類型)

當您建立私人端點時,您會提供端點所連線的資源類型子資源。 某些資源有多個類型和子資源。 如需詳細資訊,請參閱什麼是私人端點

當您為中樞相依性資源建立私人端點時,例如 Azure 儲存體、Azure Container Registry 和 Azure Key Vault,資源可以位於不同的 Azure 訂用帳戶中。 不過,資源必須位於與中樞相同的租用戶中。

如果目標資源是上面列出的 Azure 資源,系統會自動為連線建立私人端點。 私人端點預期會有有效的目標識別碼。 連線的有效目標識別碼可以是父資源的 Azure Resource Manager 識別碼。 在連線的目標或 metadata.resourceid 中,也會預期有目標識別碼。 如需連線的詳細資訊,請參閱如何在 Azure AI Studio 中新增連線

定價

中樞受控虛擬網路功能無需付費。 不過,您需支付受控虛擬網路所使用的下列資源的費用:

  • Azure Private Link - 用來保護受控虛擬網路與 Azure 資源之間通訊的私人端點會依賴 Azure Private Link。 如需價格的詳細資訊,請參閱 Azure Private Link 價格

  • FQDN 輸出規則 - FQDN 輸出規則是使用 Azure 防火牆來實作。 如果您使用輸出 FQDN 規則,Azure 防火牆的費用會包含在您的計費中。 Azure 防火牆 SKU 是標準。 針對各個中樞佈建 Azure 防火牆。

    重要

    在您新增輸出 FQDN 規則之前,不會建立防火牆。 如果您未使用 FQDN 規則,則不會向您收取 Azure 防火牆的費用。 如需有關定價的詳細資訊,請參閱 Azure 防火牆定價