本頁面說明 AlloyDB for PostgreSQL 的連線選項,協助您根據工作負載、網路拓撲和安全連線需求,選擇最合適的選項。詳情請參閱連線總覽。
本文將說明下列事項:
- 要搭配 AlloyDB 使用的網路設定類型。
- 如何安全連線。
- 連線最佳做法。
- 工作負載位置如何影響連線需求。
建議的連線選項
請參閱下表,瞭解工作負載的建議連線選項:
- 建議使用直接連線、語言連接器或 Auth Proxy,連線至私人 IP (私人服務存取權或 Private Service Connect) 和公開 IP。
- 連線需求,例如無伺服器虛擬私有雲 (VPC) 存取連接器和直接虛擬私有雲輸出。詳情請參閱「比較直接 VPC 輸出和 VPC 連接器 | Cloud Run 說明文件」。
- 私人 IP 的注意事項:私人服務連線與 Private Service Connect,以及公用 IP。
評估工作負載
選擇連線選項前,請先評估工作負載。 AlloyDB 支援下列工作負載環境的連線:
- Cloud Run、Cloud Shell 和非 Google SaaS 產品
- Cloud Functions v2
- App Engine 彈性環境和 App Engine 標準環境
- Google Kubernetes Engine 和 Compute Engine
- 內部部署設定
工作負載環境 | 私人 IP | 公開 IP | 說明 | ||
---|---|---|---|---|---|
直接 | 連接器 | 直接 | 連接器 | ||
Cloud Shell | ❌ | ❌ | ❌ | ✅ | Cloud Shell 需要公開 IP。 |
Cloud Run、Cloud Functions v2 | ✅ | ✅ | ❌ | ✅ | 需要無伺服器虛擬私有雲存取連接器或直接虛擬私有雲輸出。 |
App Engine 標準環境、彈性環境 | ✅ | ✅ | ❌ | ✅ | 需要無伺服器虛擬私有雲存取連接器。 |
GKE、Compute Engine | ✅ | ✅ | ✅ | ✅ | 建議使用私人 IP。如果您不需要傳遞虛擬私有雲對等互連,請使用私人服務存取權。否則請使用 Private Service Connect。 |
地端部署 | ✅ | ✅ | ✅ | ✅ | 私人 IP 需要從內部部署到目標執行個體的網路路徑。使用語言連接器或 Auth Proxy 的公開 IP 是安全的替代方案,不需要進行大規模的網路設定。 |
依據工作負載選擇連線方式的最佳做法
連線至 AlloyDB 時,請根據工作負載環境考量下列事項。
Cloud Shell
- 使用 Auth Proxy 和公開 IP,透過 Cloud Shell 連線。Cloud Shell 不支援連線至 VPC。無法連線至私人服務存取權或 Private Service Connect 執行個體。此外,Cloud Shell 沒有穩定的輸出 IP 位址,無法用於授權網路。
Cloud Run 和 Cloud Functions v2
- 如果是私人 IP,直接連線、語言連接器或 Auth Proxy 都必須使用直接虛擬私有雲輸出。
- 如果是公開 IP,則必須使用語言連接器或 Auth Proxy。
App Engine 標準環境和 App Engine 彈性環境
- 無論您使用語言連接器或 Auth Proxy,都請使用無伺服器虛擬私有雲存取連接器搭配私人 IP。
- 如果是公開 IP,則必須使用語言連接器或 Auth Proxy。
GKE 與 Compute Engine
- 您可以透過直接連線、語言連接器或 Auth Proxy 連線至 AlloyDB。
地端部署
- 您可以透過直接連線、語言連接器或 Auth Proxy 連線至 AlloyDB。語言連接器和驗證 Proxy 不會建立網路路徑。確認工作負載與 AlloyDB 執行個體之間有網路路徑。
評估安全連線需求
AlloyDB 的語言連接器或 Auth Proxy 提供 IAM 整合和 mTLS 等進階安全功能,但這些功能需要額外設定。直接連線預設會加密,但不支援用戶端憑證或較高的 SSL 模式 (verify-ca
和 verify-full
)。建議您搭配公開 IP 使用語言連接器或 Auth Proxy,並僅在語言連接器或 Auth Proxy 不可行時,才使用私人 IP 的直接連線。
加密連線 | IAM 驗證 | IAM 授權 | mTLS | |
---|---|---|---|---|
直接連線 | ✅ | ✅ | ❌ | ❌ |
語言連接器或驗證 Proxy | ✅ | ✅ | ✅ | ✅ |
安全連線的最佳做法
- 建立叢集時,您必須指定私人 IP 介面,才能建立叢集。如要使用公開 IP,建議選擇 Private Service Connect 做為私人 IP 介面。
- 使用語言連接器或 Auth Proxy 即可享有 IAM 授權和驗證,以及 mTLS 等安全性功能,即使這些功能需要設定也值得。舉例來說,如果您想以 Sidecar 形式執行驗證 Proxy,或是想使用語言連接器,就很適合採用這個方法。如果您使用語言連接器或 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 搭配使用。 |
根據網路拓撲選擇連線方式的最佳做法
- 預設為私人服務存取權。
- 處理多個虛擬私有雲 (VPC) 時,請使用 Private Service Connect 規避傳遞對等互連問題。
- 如果是整合非Google Cloud SaaS 產品,且該產品並非託管於 Google Cloud,請選擇公開網路拓撲,尤其是在無法使用私人 IP 連線時。私人 IP 預設為啟用,因此在這些情況下,您必須明確設定公開 IP。
- 使用公開 IP 時,請盡可能使用語言連接器或 Auth Proxy,這樣就能建立安全連線,不必設定授權網路。