選擇連線方式

本頁說明連線至 AlloyDB for PostgreSQL 的選項,包括何時該使用 AlloyDB Auth Proxy 或 AlloyDB 連接器。無論您需要使用 Private Service Connect 或其他方法連線,這項工具都能協助您為工作負載選擇最佳選項。

詳情請參閱「連線總覽」。

本文將說明下列事項:

  • 要搭配 AlloyDB 使用的網路設定類型。
  • 如何安全連線。
  • 連線最佳做法。
  • 工作負載位置如何影響連線需求。

連線至 AlloyDB 的建議選項

請參閱下表,瞭解工作負載的建議連線選項:

評估工作負載

選擇連線選項前,請先評估工作負載。 AlloyDB 支援下列工作負載環境的連線:

  • Cloud Run、Cloud Shell 和非 Google SaaS 產品
  • Cloud Functions v2
  • App Engine 彈性環境和 App Engine 標準環境
  • Google Kubernetes Engine 和 Compute Engine
  • 地端設定

    工作負載環境 私人 IP 公開 IP 說明
    直接 連接器 直接 連接器
    開發人員筆電 ❌️ ❌️ 建議您搭配開發人員筆電的公開 IP 使用 Auth Proxy。您可以連線至私人 IP,但需要 [額外設定](/alloydb/docs/connect-external)。
    Cloud Shell 建議您搭配使用驗證 Proxy 和 Cloud Shell 的公開 IP。您可以連線至私人 IP,但需要 [額外設定](/alloydb/docs/connect-external)。
    Cloud Run、Cloud Functions v2 需要無伺服器虛擬私有雲存取連接器或直接虛擬私有雲輸出。
    App Engine 標準環境、彈性環境 需要無伺服器虛擬私有雲存取連接器。
    GKE、Compute Engine 建議使用私人 IP。如果您不需要傳輸虛擬私有雲對等互連,請使用私人服務存取權。否則請使用 Private Service Connect。
    地端部署 私人 IP 需要從地端到目標執行個體的網路路徑。使用語言連接器或驗證 Proxy 的公開 IP 是安全的替代方案,不需要進行大規模的網路設定。

根據工作負載選擇連線方式的最佳做法

連線至 AlloyDB 時,請根據工作負載環境考量下列事項。

Cloud Shell

  • 使用 Auth Proxy公開 IP,透過 Cloud Shell 連線。Cloud Shell 不支援連線至 VPC。無法連線至私人服務存取權或 Private Service Connect 執行個體。此外,Cloud Shell 沒有穩定的輸出 IP 位址,無法用於授權網路。如果您未使用 Auth Proxy 或語言連接器,就必須允許所有 IP 位址範圍,例如 0.0.0.0/0。不建議在正式環境執行個體中採用這種做法。

Cloud Run 和 Cloud Functions v2

  • 如果是私人 IP,直接連線、語言連接器或 Auth Proxy 都必須使用直接虛擬私有雲輸出。
  • 如果是公開 IP,您必須使用語言連接器Auth Proxy。或者,您也可以在「已授權的網路」中允許所有 IP 位址範圍 (例如 0.0.0.0/0),但考量到安全風險,不建議在正式版執行個體中這麼做。

App Engine 標準環境和 App Engine 彈性環境

  • 無論您使用語言連接器或 Auth Proxy,都請使用無伺服器虛擬私有雲存取連接器搭配私人 IP。
  • 如果是公開 IP,則必須使用語言連接器或 Auth Proxy。 或者,您也可以允許所有 IP 位址範圍(即 0.0.0.0/0) in 已授權的網路。不過,基於安全風險,我們不建議在正式環境執行個體中採用這種方法。

GKE 與 Compute Engine

  • 您可以透過直接連線、語言連接器或 Auth Proxy 連線至 AlloyDB。

地端部署

  • 您可以透過直接連線、語言連接器或 Auth Proxy 連線至 AlloyDB。語言連接器和驗證 Proxy 不會建立網路路徑。確認工作負載與 AlloyDB 執行個體之間有網路路徑。

使用 AlloyDB Auth Proxy 和連接器建立安全連線

AlloyDB 語言連接器和 AlloyDB Auth Proxy 提供強化安全功能,例如身分與存取權管理整合mTLS,但這些功能需要額外設定。直接連線預設會加密,但不支援用戶端憑證或較高的 SSL 模式 (verify-caverify-full)。建議您搭配公開 IP 使用語言連接器或 Auth Proxy,並僅在語言連接器或 Auth Proxy 不可行時,才使用私人 IP 的直接連線。

加密連線 IAM 驗證 IAM 授權 mTLS
直接連線
語言連接器或驗證 Proxy

安全連線的最佳做法

  • 建立叢集時,您必須指定私人 IP 介面,才能建立叢集。如要使用公開 IP,建議選擇 Private Service Connect 做為私人 IP 介面。
  • 使用語言連接器或 Auth Proxy 即可享有 IAM 授權和驗證,以及 mTLS 等安全功能,即使這些功能需要設定也值得。舉例來說,如果您想以 Sidecar 形式執行 AlloyDB Auth Proxy,或是想使用 AlloyDB 語言連接器,就很適合採用這種做法。如果您使用語言連接器或 Auth Proxy,資料庫連線的延遲時間可能會稍微增加。
  • 如要獲得最佳效能,請使用直接連線,並在無法使用語言連接器或 Auth Proxy 時採用這種做法。直接連線預設會經過加密 (sslmode=require),但無法支援用戶端憑證或更高階的 SSL 模式。只有在無法使用語言連接器或 Auth Proxy 時,才使用直接連線。

評估網路拓撲

就網路拓撲而言,建議您使用私人服務存取權進行 AlloyDB 連線。使用 Private Service Connect,避免多個虛擬私有雲發生遞移對等互連問題。公開 IP 適用於非Google Cloud SaaS 產品的連線,尤其是在私人 IP 不切實際的情況下。

多個虛擬私有雲連線 非 Google 軟體即服務 (SaaS) 用戶端 支援內部部署連線 說明
私人服務存取權 系統預設不支援遞移虛擬私有雲連線。您可以手動執行 socks5 Proxy,以進行跨 VPC 連線,但這種做法很複雜。
Private Service Connect 如果您想從多個虛擬私有雲連線至 AlloyDB,這種方式的設定最簡單。
公開 IP 為避免必須識別授權網路的來源工作負載 CIDR 範圍,建議您將公開 IP 與語言連接器驗證 Proxy 搭配使用。

根據網路拓撲選擇連線方式的最佳做法

  • 預設為私人服務存取權
  • 處理多個虛擬私有雲時,請使用 Private Service Connect 規避傳遞對等互連問題。
  • 如果是整合非Google Cloud SaaS 產品,請選擇公用網路拓撲,特別是無法使用私人 IP 連線時,更應如此。 Google Cloud私人 IP 預設為啟用,因此在這些情況下,您必須明確設定公開 IP。
  • 使用公開 IP 時,請盡可能使用語言連接器或 Auth Proxy,這樣就能建立安全連線,不必設定授權網路。

後續步驟