VPC凝視

VPC對等允許您的Databricks集群使用內部AWS網絡中的私有IP地址連接到其他AWS基礎設施(RDS、Redshift、Kafka、Cassandra等)。

承載其他基礎設施的VPC的CIDR範圍必須與Databricks VPC和Databricks VPC主路由表中包含的其他CIDR範圍不同。如果有衝突,您可以聯係Databricks技術支持,查詢是否將您的Databricks VPC移動到您選擇的新的CIDR範圍。您可以在AWS控製台中搜索Databricks VPC,單擊與之關聯的主路由表,然後查看路由表選項卡。下麵是一個Databricks部署的主路由表示例,它已經與其他幾個vpc進行了對接:

數據庫VPC路由表

關於VPC對等的信息,請參見AWS VPC對等指南

本指南將引導您通過AWS Console將一個AWS Aurora RDS對等到您的Databricks VPC。如果您更喜歡程序化解決方案,請參見編程VPC凝視一個可以幫你完成所有步驟的筆記本。最後,還有一個故障排除常見問題及解決辦法。

重要的

在嚐試建立VPC對等之前,請谘詢您的AWS/devops團隊。熟悉AWS以及足夠的權限將確保此過程順利進行。筆記本可以幫助您完成這種轉換,但是根據您的環境,重要的是要確保進行必要的修改,以確保不影響現有的基礎設施。

AWS控製台的例子

下圖演示了將Databricks部署與其他AWS基礎設施對等時所涉及的所有不同組件。在本例中,Databricks部署在一個AWS帳戶中,而Aurora RDS部署在另一個AWS帳戶中。建立對等連接,跨兩個AWS帳戶連接兩個vpc。

跨AWS帳戶的VPC對等連接

當您在自己的AWS控製台中進行這個過程時,保存一個信息表以供回頭參考會有所幫助。記錄如下:

  1. Databricks VPC的ID和CIDR範圍。

  2. 其他基礎設施(Aurora RDS)的ID和CIDR範圍。

  3. Databricks VPC的主路由表ID。

AWS服務

的名字

ID

CIDR範圍

VPC

磚VPC

vpc-dbcb3fbc

10.126.0.0/16

VPC

極光RDS VPC

vpc-7b52471c

172.78.0.0/16

路由表

Databricks主路由表

rtb - 3775 c750

步驟1:創建對等連接

  1. 導航到VPC儀表板

  2. 選擇對等連接

  3. 點擊創建對等連接

  4. 設置VPC請求者修改為Databricks VPC ID。

  5. 設置VPC受體修改為Aurora VPC ID。

  6. 點擊創建對等連接

    創建對等連接

步驟2:記錄對等連接ID

AWS服務

的名字

ID

CIDR範圍

VPC

磚VPC

vpc-dbcb3fbc

10.126.0.0/16

VPC

極光RDS VPC

vpc-7b52471c

172.78.0.0/16

路由表

Databricks主路由表

rtb - 3775 c750

對等連接

數據庫VPC <>極光VPC

pcx-4d148024

步驟3:接受對等連接請求

帶有Aurora RDS的VPC需要獲得其所有者的批準。對等連接狀態顯示等待驗收直到這件事結束。

對等連接待驗收

選擇操作>接受請求

接受對等連接請求

步驟4:為對等連接添加DNS解析

  1. 登錄Databricks VPC所在的AWS Account。

  2. 導航到VPC儀表板

  3. 選擇對等連接

  4. 從Actions菜單中選擇編輯DNS設置

  5. 點擊啟用DNS解析

  6. 登錄Aurora VPC所在的AWS Account,重複執行步驟2 ~ 4。

使DNS解析

步驟5:添加目的地址到Databricks VPC主路由表

  1. 選擇路由表在VPC麵板中。

  2. 查詢“Databricks”VPC ID

  3. 單擊編輯按鈕下路線選項卡。

  4. 點擊添加另一個路線

  5. 輸入Aurora VPC的CIDR範圍目的地

  6. 輸入對等連接的ID目標

    Databricks VPC路由目的地

步驟6:添加目的地址到Aurora VPC主路由表

  1. 選擇路由表在VPC麵板中。

  2. 查詢Aurora VPC ID。

  3. 單擊編輯按鈕下路線選項卡。

  4. 點擊添加另一個路線

  5. 輸入Databricks VPC的CIDR範圍目的地

  6. 輸入對等連接的ID目標

    Aurora VPC路由目的地

步驟7:找到Databricks非托管安全組

  1. 選擇安全組在VPC麵板中。

  2. 查詢Databricks VPC的ID。

  3. 查找並記錄與的安全組ID非托管在這個名字。做選擇“托管安全組”。

AWS服務

的名字

ID

CIDR範圍

VPC

磚VPC

vpc-dbcb3fbc

10.126.0.0/16

VPC

極光RDS VPC

vpc-7b52471c

172.78.0.0/16

路由表

Databricks主路由表

rtb - 3775 c750

對等連接

數據庫VPC <>極光VPC

pcx-4d148024

安全組

磚非托管的組

sg - 96016 -性能試驗

步驟8:將規則添加到非托管安全組

  1. 選擇安全組在VPC麵板中。

  2. 查詢Aurora VPC的ID。

  3. 添加一個入站規則通過點擊編輯然後添加另一個規則

  4. 選擇自定義TCP規則或與您的RDS相關的服務。

  5. 設置端口範圍對應您的RDS服務。Aurora [MySQL]的默認值是3306。

  6. 設置的安全組ID非托管磚安全組。

    極光安全集團規則

步驟9:測試連通性

  1. 創建Databricks集群。

  2. 檢查是否可以使用以下程序連接到數據庫netcat命令:

    %sh nc -zv   .使用實例
    驗證連接

編程VPC凝視

本筆記本支持兩種場景:

  • 在同一個AWS帳號下的另一個VPC和Databricks VPC之間建立對等VPC

  • 在不同AWS帳號的Databricks VPC和另一個VPC之間建立對等VPC

VPC凝視筆記本

故障排除

不能建立連接netcat

如果你不能建立連接netcat,檢查主機名是否通過DNS解析宿主Linux命令。如果主機名無法解析,請驗證您是否在對等連接中啟用了DNS解析。

%sh host -t a 
驗證DNS解析

不能與主機名或IP地址建立連接

如果您不能與主機名或IP地址建立連接,請檢查您的Aurora RDS的VPC是否有3個子網與它的主路由表相關聯。

  1. 選擇子網VPC儀表板,查詢Aurora VPC的ID。每個可用分區都應該有一個子網。

    極光VPC子網
  2. 確保每個子網都與主路由表相關聯。

    1. 選擇路由表在VPC Dashboard中搜索與Aurora RDS關聯的主路由表。

    2. 單擊子網協會選項卡,然後編輯.您應該在列表中看到所有3個子網,但它們都不應該有聯係選中。

      極光子網協會

DNS無法正常工作

在Route 53中查看,確認Databricks VPC與VPC內部的私有主機分區關聯。