本文提供在 Azure Databricks 叢集或 SQL 倉儲與您使用 Lakehouse 同盟連線的外部資料庫系統之間設定可行網路路徑的指引。
在為 Lakehouse Federation 設定網路連線時,請考慮以下幾點:
- 所有用於聯邦查詢的網路流量都直接在 Azure Databricks 叢集(或 SQL 倉庫)與外部資料庫系統之間進行。 Unity Catalog 和 Azure Databricks 控制平面都不在網路路徑上。
- 使用 OAuth 的連接還有額外的要求。 當連線使用 OAuth 進行認證時,OAuth 令牌交換是從 Azure Databricks 控制平面進行,而非計算平面。 控制平面必須能夠抵達外部系統的 OAuth 端點。 僅將計算平面加入允許清單,對於這些連線而言是不夠的。 如需連接器相關的指引,請參閱相關連線頁面的網路或限制章節,例如在 Snowflake (OAuth) 執行聯邦查詢或在 Microsoft SQL Server 執行聯邦查詢。 HTTP 連線 是例外;OAuth 會透過無伺服器運算平面進行路由,而非透過控制平面。
- Azure Databricks 計算(也就是叢集和 SQL 倉儲)一律會部署在雲端中,但只要 Azure Databricks 計算與外部資料庫之間有可行的網路路徑,外部資料庫系統就可以在內部部署或裝載於任何雲端提供者上。
- 如果您有 Azure Databricks 計算或外部資料庫系統的輸入或輸出網路限制,請參閱下列各節以取得一般指引,以協助您建立可行的網路路徑。
如需 Azure Databricks 工作區中網路功能的詳細資訊,請參閱 網路功能。
資料庫系統和 Azure Databricks 計算都可從因特網存取
連接應該在沒有任何設定的情況下運作。
資料庫系統具有網路存取限制
如果外部資料庫系統有輸入或輸出網路存取限制,且可從因特網存取 Azure Databricks 叢集或 SQL 倉儲,請設定下列其中一個網路解決方案,以從傳統計算資源連線:
Azure Databricks 計算的穩定出口 IP。
從傳統計算平面,使用負載平衡器、NAT 閘道、因特網閘道或對等項目來設定穩定的IP位址,並將它連線到 Azure Databricks 計算部署所在的子網。 這可讓計算資源分享可在外部資料庫端列入允許清單的穩定公用IP位址。
Private Link (只有在外部資料庫與 Azure Databricks 計算位於相同的雲端時)
從傳統計算平面,設定部署資料庫的網路與部署 Azure Databricks 計算的網路之間的 Private Link 連線。
支援 SQL Server 連接器的 Azure Private Link 可用於無伺服器計算環境。 請參見 建立私有端點規則。
Azure Databricks 計算具有網路存取限制
如果外部資料庫系統可從因特網存取,且 Azure Databricks 計算具有輸入和輸出網路存取限制(只有在您位於客戶管理的網路上時,才可能),請執行下列其中一個設定:
將外部資料庫的主機名稱加入子網路防火牆規則的允許清單,其中 Azure Databricks 計算資源已部署。
如果您選擇允許列出外部資料庫 IP 位址,而不是主機名,請確定外部資料庫具有穩定的 IP 位址。
Private Link (只有當外部資料庫與 Azure Databricks 計算位於相同的雲端時)
設定部署資料庫的網路與部署 Azure Databricks 計算的網路之間的 Private Link 連線。
Azure Databricks 計算具有自定義 DNS 伺服器
如果可從因特網存取外部資料庫系統,且 Azure Databricks 計算具有自定義 DNS 伺服器(只有在您位於客戶管理的網路上時,才能將資料庫系統的主機名新增至您的自定義 DNS 伺服器,以便加以解析。
Snowflake 網路注意事項
- 如果 Azure Databricks 的運算無法連接到 Snowflake OCSP 回應器,憑證驗證時連線嘗試可能會失敗。 建議允許外撥流量給 Snowflake OCSP 回應器。
如果你的限制出口或私人連線設定無法允許該流量,請將 Snowflake 連線選項設
disableOCSPChecks為true。 請參閱 進階連線選項。