設定供無伺服器計算存取的防火牆
這篇文章說明如何使用 Azure Databricks 帳戶主控台 UI 來設定無伺服器計算的 Azure 儲存體防火牆。 您也可以使用網路連線設定 API。
若要設定供無伺服器計算存取的私人端點,請參閱從無伺服器計算設定私人連線。
重要
從 2024 年 12 月 4 日起,Databricks 將開始收取連線到外部資源的無伺服器工作負載的網路成本。 計費會逐漸實作,而且您可能在 2024 年 12 月 4 日之後才收費。 在啟用計費之前,您不會回溯收取使用量費用。 啟用計費之後,您可能會向您收取:
- 透過 Private Link 私人連線到您的資源。 透過 Private Link 與資源的私人連線,會無限期免除數據處理費用。 將會套用每小時費用。
- 透過 NAT 閘道與資源的公用連線。
- 產生的數據傳輸費用,例如當無伺服器計算和目標資源位於不同區域時。
為無伺服器計算啟用防火牆概觀
透過網路連線設定 (NCC) 來管理無伺服器網路連線。 帳戶管理員會在帳戶主控台中建立 NCC,而 NCC 可以連結至一或多個工作區
NCC 包含作為預設規則的 Azure 資源類型的網路身分識別清單。 當 NCC 連結至工作區時,該工作區中的無伺服器計算會使用其中一個網路來連線 Azure 資源。 您可以在 Azure 資源防火牆上將這些網路加入允許清單。 如果您有非儲存體 Azure 資源防火牆,請連絡您的帳戶小組,以取得有關如何使用 Azure Databricks 穩定的 NAT IP 的資訊。
無伺服器 SQL 倉儲、作業、筆記本、差異即時資料表管線以及模型服務 CPU 端點均支援啟用 NCC 防火牆。
或者,您可以僅從授權網路 (包括無伺服器計算) 設定對工作區儲存體帳戶的網路存取。 請參閱啟用工作區儲存體帳戶的防火牆支援。 當 NCC 連結至工作區時,網路規則會自動新增至工作區儲存體帳戶的 Azure 儲存體帳戶。
如需 NCC 的詳細資訊,請參閱什麼是網路連線設定 (NCC)?。
跨區域儲存體存取的成本影響
只有在 Azure 資源位於與 Azure Databricks 工作區相同的區域時,才會套用防火牆。 對於來自 Azure Databricks 無伺服器計算的跨區域流量 (例如,工作區位於美國東部區域,ADLS 儲存體位於西歐),Azure Databricks 會透過 Azure NAT Gateway 服務來路由傳送流量。
需求
您的工作區必須列在進階版方案中。
您必須是 Azure Databricks 帳戶管理員。
每個 NCC 最多可連結至 50 個工作區。
每個 Azure Databricks 帳戶在每個區域最多可以有 10 個 NC。
您必須具有對 Azure 儲存體帳戶的網路規則的
WRITE
權限。
步驟 1:建立網路連線設定並複製子網路識別碼
Databricks 建議在同一業務單位的工作區以及共用相同區域和連線屬性的工作區之間共用 NCC。 例如,如果部分工作區使用儲存體防火牆,而其他工作區使用私人連結的替代方法,請針對這些使用案例使用單獨的 NCC。
- 身為帳戶管理員,請移至帳戶主控台。
- 在側邊欄中按一下 [雲端資源]。
- 按一下 [網路連線設定]。
- 按一下 [新增網路連線設定]。
- 輸入 NCC 的名稱。
- 選擇區域 必須與您的工作區所在區域相符。
- 按一下新增。
- 在 NCC 清單中,按一下新的 NCC。
- 在 [網路身分識別] 底下的 [預設規則] 中,按一下 [檢視全部]。
- 在對話方塊中,按一下 [複製子網路] 按鈕。
- 按一下 [關閉] 。
步驟 2:將 NCC 連結至工作區
您可以將 NCC 連結至與 NCC 位於相同區域的最多 50 個工作區。
若要使用 API 將 NCC 連結至工作區,請參閱帳戶工作區 API。
- 在帳戶主控台的側邊欄中,按一下 [工作區]。
- 按一下工作區的名稱。
- 按一下 [更新工作區]。
- 在 [ 網络連線設定 ] 字段中,選取您的 NCC。 如果未顯示,請確認您已為工作區和 NCC 選取相同的區域。
- 按一下更新。
- 請等候 10 分鐘,讓變更生效。
- 重新啟動工作區中任何正在執行的無伺服器計算資源。
如果您使用這項功能來連線到工作區儲存體帳戶,則您的設定已完成。 網路規則會自動新增至工作區儲存體帳戶。 對於其他儲存體帳戶,請繼續進行下一個步驟。
步驟 3:鎖定您的儲存體帳戶
如果您尚未將 Azure 儲存體帳戶的存取限制為僅加入允許清單的網路,請立即執行此操作。 您不需要針對工作區儲存體帳戶執行此步驟。
建立儲存體防火牆後,也會影響傳統計算平面與資源的連線。 您還必須新增網路規則,以從傳統計算資源連線到儲存體帳戶。
- 前往 Azure 入口網站。
- 瀏覽至資料來源的儲存體帳戶。
- 在左側導覽列中,按一下 [網路]。
- 在 [公用網路存取] 欄位中,檢查該值。 根據預設,此值為 [已從所有網路啟用]。 將此值變更為 [從選取的虛擬網路和 IP 位址中啟用]。
步驟 4:新增 Azure 儲存體帳戶網路規則
您不需要針對工作區儲存體帳戶執行此步驟。
為每個子網路新增一項 Azure 儲存體帳戶網路規則。 您可以使用 Azure CLI、PowerShell、Terraform 或其他自動化工具來執行此操作。 請注意,無法在 Azure 入口網站使用者介面中完成此步驟。
下列範例使用 Azure CLI:
az storage account network-rule add --subscription "<sub>" \ --resource-group "<res>" --account-name "<account>" --subnet "<subnet>"
- 以儲存體帳戶的 Azure 訂用帳戶的名稱取代
<sub>
。 - 以儲存體帳戶的資源群組名稱取代
<res>
。 - 以您的儲存體帳戶名稱取代
<account>
- 以無伺服器計算子網路的 ARM 資源識別碼 (
resourceId
) 取代<subnet>
。
執行所有命令之後,可以使用 Azure 入口網站來檢視儲存體帳戶,並確認虛擬網路資料表中有代表新的子網路的項目。 不過,您無法在 Azure 入口網站中變更網路規則。
提示
- 新增儲存體帳戶網路規則時,請使用網路連線 API 來擷取最新的子網路。
- 請避免在本機儲存 NCC 資訊。
- 請忽略端點狀態資料行或網路清單下方的警告中顯示的「權限不足」。 它們只會指出您沒有讀取 Azure Databricks 子網路的權限,但不會干擾該 Azure Databricks 無伺服器子網路連絡 Azure 儲存體的能力。
- 以儲存體帳戶的 Azure 訂用帳戶的名稱取代
針對每個子網路重複執行此命令一次。
若要確認您的儲存體帳戶會在 Azure 入口網站中使用這些設定,請瀏覽至儲存體帳戶中的 [網路]。
確認 [公用網路存取] 已設定為 [已從選取的虛擬網路和 IP 位址啟用] 並且允許的網路列在 [虛擬網路] 區段中。