本頁說明如何透過遞移對等互連 VPC 連線至 Cloud SQL 執行個體。
Cloud SQL 提供下列方法,可使用私人 IP 將 Cloud SQL 執行個體連線至多個虛擬私有雲:
使用自訂通告路徑連線
您可以透過 Cloud Router,在兩個網路之間設定自訂通告路徑,這些路徑會經過中繼 VPC,將多個 VPC 連線至 Cloud SQL 執行個體。這兩個 VPC 必須使用虛擬私人網路 (VPN)、Cloud Interconnect 或任何其他支援的Cloud Router 網路連線。
透過自訂通告路徑,Cloud SQL 虛擬私有雲 (虛擬私有雲 C) 會透過中繼虛擬私有雲 (虛擬私有雲 B) 連線至主要虛擬私有雲 (虛擬私有雲 A)。您可以透過下列方式,在這些網路之間設定共用路徑:
您可以透過 Cloud Router 手動通告兩個網路間的路徑,這些路徑會經過中繼 VPC。如要進一步瞭解如何設定 Cloud Router 手動通告路徑,請參閱傳輸網路。
您可以建立兩個高可用性 VPN 閘道,並讓這兩個閘道相互連線,藉此連結兩個不同的虛擬私有雲,然後設定 Cloud Router,在兩個虛擬私有雲之間共用路徑。如要進一步瞭解如何設定高可用性 VPN 閘道,請參閱「建立高可用性 VPN 閘道來連結虛擬私有雲網路」。
建議您使用自訂通告路徑,透過 Cloud Router 將多個 VPC 連線至 Cloud SQL 執行個體。
使用中繼 Proxy (SOCKS5) 連線
您可以在中間 VPC 中設定中繼 Proxy (例如 SOCKS5 Proxy),並在用戶端和 Cloud SQL 執行個體之間的主要 VPC 中設定 Cloud SQL 驗證 Proxy。這樣一來,中繼節點就能將 Cloud SQL 驗證 Proxy 的加密流量轉送至 Cloud SQL 執行個體。
如要使用中介 Proxy 從多個 VPC 連線至 Cloud SQL 執行個體,請按照下列步驟操作:
在外部用戶端安裝 gcloud CLI。
在中間 VM 上安裝、設定及執行 SOCKS 伺服器。Dante 就是這類伺服器的例子,這是一套熱門的開放原始碼解決方案。
設定伺服器,將外部和內部連線繫結至 VM 的
ens4
網路介面。如為內部連線,請指定任何通訊埠。設定 VPC 的防火牆,允許來自適當 IP 位址或範圍的 TCP 流量傳輸至 SOCKS 伺服器設定的通訊埠。
在外部用戶端上下載並安裝 Cloud SQL 驗證 Proxy。
在外部用戶端上啟動 Cloud SQL 驗證 Proxy。
由於您已將執行個體設定為使用內部 IP 位址,因此啟動 Cloud SQL Auth Proxy 時,必須提供
--private-ip
選項。此外,請將
ALL_PROXY
環境變數設為中介 VM 的 IP 位址,並指定 SOCKS 伺服器使用的通訊埠。例如:ALL_PROXY=socks5://VM_IP_ADDRESS:SOCKS_SERVER_PORT.
如果是從對等互連的虛擬私有雲連線,請使用中介 VM 的內部 IP 位址;否則請使用外部 IP 位址。
在外部用戶端上,使用
psql
測試連線。
使用 Cloud SQL 驗證 Proxy 做為服務連線
您可以在中繼 VPC 上安裝及執行 Cloud SQL Auth Proxy,而非外部用戶端,並將其與通訊協定感知 Proxy (也稱為連線集區器) 配對,啟用安全連線。連線集區的範例包括 PGbouncer 或 Pgpool-II(僅限 PostgreSQL)。
應用程式可透過這個連線方法,使用設定的 SSL 直接安全地連線至集區。集區器會使用 Cloud SQL 驗證 Proxy,將資料庫查詢傳遞至 Cloud SQL 執行個體。
使用 Private Service Connect 連線
Private Service Connect 可讓您連線至不同專案或機構中的多個虛擬私有雲網路。您可以使用 Private Service Connect 連線至主要執行個體或任何讀取副本。如要進一步瞭解 Private Service Connect,請參閱「Private Service Connect 總覽」。
如要使用 Private Service Connect 跨多個虛擬私有雲連線,請參閱「使用 Private Service Connect 連線至執行個體」。