接続オプションを選択する

このページでは、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 説明
    直接 コネクタ 直接 コネクタ
    デベロッパーのノートパソコン ❌️ ❌️ gcloud beta alloydb connect コマンドを使用することをおすすめします。 または、パブリック IP で Auth Proxy を使用することもできますプライベート IP に接続することもできますが、追加の設定が必要です。
    Cloud Shell gcloud beta alloydb connect コマンドを使用することをおすすめします。 または、Cloud Shell からパブリック IP で Auth Proxy を使用することもできます。プライベート IP に接続することもできますが、追加の設定が必要です。
    Cloud Run、Cloud Functions v2 サーバーレス VPC アクセス コネクタまたはダイレクト VPC 下り(外向き)が必要です。
    App Engine スタンダード、フレキシブル サーバーレス VPC アクセス コネクタが必要です。
    GKE、Compute Engine プライベート IP を使用することをおすすめします。推移的 VPC ピアリングが不要な場合は、プライベート サービス アクセスを使用します。それ以外の場合は、Private Service Connect を使用します。
    オンプレミス プライベート IP には、オンプレミスからターゲット インスタンスへのネットワーク パスが必要です。言語コネクタまたは Auth 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 の両方でダイレクト VPC 下り(外向き)を使用する必要があります。
  • パブリック IP の場合は、言語コネクタ またはAuth Proxyを使用する必要があります。 または、承認済みネットワークですべての IP アドレス範囲(0.0.0.0/0 など)を許可することもできますが、セキュリティ リスクがあるため、本番環境インスタンスにはおすすめしません。

App Engine スタンダード環境と App Engine フレキシブル環境

  • 言語コネクタまたは Auth Proxy を使用しているかどうかにかかわらず、プライベート IP にはサーバーレス VPC アクセス コネクタを使用します。
  • パブリック IP の場合は、言語コネクタまたは Auth Proxy を使用する必要があります。 または、承認済みネットワークですべての IP アドレス範囲(0.0.0.0/0)を許可することもできます。ただし、セキュリティ リスクがあるため、本番環境インスタンスにはこの方法をおすすめしません。

GKE と Compute Engine

  • AlloyDB への接続には、直接接続と言語コネクタまたは Auth Proxy の両方を使用できます。

オンプレミス

  • AlloyDB への接続には、直接接続と言語コネクタまたは Auth Proxy の両方を使用できます。言語コネクタと Auth Proxy はネットワーク パスを作成しません。ワークロードと AlloyDB インスタンスの間にネットワーク パスがあることを確認してください。

AlloyDB Auth Proxy とコネクタを使用した安全な接続

AlloyDB 言語コネクタと AlloyDB Auth Proxy は、 IAM 統合mTLSなどの強化されたセキュリティ機能を提供しますが、 これらの機能には追加の 設定が必要です。直接接続はデフォルトで暗号化されますが、クライアント証明書や上位の SSL モード(verify-caverify-full)はサポートしていません。パブリック IP で言語コネクタまたは Auth Proxy を使用し、言語コネクタまたは Auth Proxy が実現できない場合にのみプライベート IP で直接接続を使用することをおすすめします。

暗号化された接続 IAM 認証 IAM 認可 mTLS
直接接続
言語コネクタまたは Auth Proxy

安全な接続のベスト プラクティス

  • クラスタを作成するときは、クラスタを作成できるようにプライベート IP インターフェースを指定する必要があります。パブリック IP を使用する場合は、プライベート IP インターフェースとして Private Service Connect を選択することをおすすめします。
  • IAM 認可と認証、mTLS などのセキュリティ機能には、言語コネクタまたは Auth Proxy を使用します。これらには設定が必要ですが、 たとえば、AlloyDB Auth Proxy をサイドカーとして実行する場合や、AlloyDB 言語コネクタを使用する場合に適しています。言語コネクタまたは Auth Proxy を使用すると、データベース接続のレイテンシがわずかに増加する可能性があります。
  • 最適なパフォーマンスを得るには、言語コネクタまたは Auth Proxy が実現できない場合に直接接続を使用します。直接接続はデフォルトで暗号化されます(sslmode=require)が、クライアント証明書や上位の SSL モードはサポートしていません。言語コネクタまたは Auth Proxy を使用できない場合にのみ、直接接続を使用してください。

ネットワーク トポロジの評価

ネットワーク トポロジには、AlloyDB 接続に プライベート サービス アクセス を使用することをおすすめします。 Private Service Connect を使用すると、複数の VPC で推移的ピアリングの問題を回避できます。パブリック IP は、特にプライベート IP が 実用的でない場合に、SaaS 以外のプロダクトからの 接続に適しています。Google Cloud

マルチ VPC 接続 Google 以外の SaaS クライアント オンプレミス接続をサポート 説明
プライベート サービス アクセス デフォルトでは、推移的 VPC 接続はサポートされていません。VPC 間接続用に socks5 プロキシを手動で実行できますが、この方法は複雑です。
Private Service Connect 複数の VPC から AlloyDB に接続する場合に、最もシンプルな構成を提供します。
パブリック IP 承認済みネットワークのソース ワークロードの CIDR 範囲を特定する必要がないように、パブリック IP は言語コネクタまたはAuth Proxyと組み合わせることをおすすめします。

ネットワーク トポロジに基づく接続のベスト プラクティス

  • デフォルトで プライベート サービス アクセスを使用します。
  • 複数の VPC(VPC)を扱う場合は、Private Service Connect を使用して推移的ピアリングの問題を回避します。
  • SaaS 以外のプロダクトの場合は、特にプライベート IP 接続が実現できない場合に、 でホストされていない Software-as-a-Service(SaaS)プロダクトと統合するときに、パブリック ネットワーク トポロジを選択します。Google Cloud Google Cloudプライベート IP はデフォルトで有効になっているため、このようなシナリオではパブリック IP を明示的に構成する必要があります。
  • 可能な限り、パブリック IP を使用する場合は言語コネクタまたは Auth Proxy を使用して、承認済みネットワークを構成せずに安全な接続を実現します。

次のステップ