オンプレミスまたは他のクラウド プロバイダのプライベート接続
このページでは、Integration Connectors からオンプレミス データセンターまたは他のクラウド プロバイダでホストされている MySQL、Postgres、SQL Server などのバックエンド サービスへのプライベート接続を設定する方法について説明します。
次の図は、Integration Connectors からオンプレミス ネットワークでホストされているバックエンド サービスへのプライベート ネットワーク接続の設定を示しています。
このページでは、次のコンセプトを理解していることを前提としています。
考慮事項
PSC サービス アタッチメントを作成する場合は、次の重要な点に留意してください。
- サービス プロデューサーは、Integration Connectors がサービスを使用する際に使用できる PSC サービス アタッチメントを構成する必要があります。サービス アタッチメントの準備ができたら、エンドポイント アタッチメントを使用してサービス アタッチメントを使用するように接続を構成できます。
- PSC サービス アタッチメントとロードバランサは、同じ VPC 内の異なるサブネット内に存在する必要があります。具体的には、サービス アタッチメントが NAT サブネット内に存在する必要があります。
- バックエンド VM 上で動作するソフトウェアは、ロード バランシングによって各転送ルールの IP アドレスに送信されるトラフィックとヘルスチェック プローブの両方に応答する必要があります(ソフトウェアはネットワーク インターフェースに割り当てられている特定の IP アドレスではなく
0.0.0.0:<port>
をリッスンする必要があります)詳細については、ヘルスチェックをご覧ください。 - ファイアウォール ルールを構成して、トラフィック フローを促進します。
上り(内向き)ルール
- PSC サービス アタッチメントのサブネットからのトラフィックは、ILB のサブネットに到達する必要があります。
- ILB のサブネット内で、ILB がバックエンド システムにトラフィックを送信できる必要があります。
- ヘルスチェック プローブはバックエンド システムにアクセスできる必要があります。Google Cloud ヘルスチェック プローブには固定の IP 範囲(
35.191.0.0/16, 130.211.0.0/22
)があります。そのため、これらの IP はバックエンド サーバーにトラフィックを送信できます。
下り(外向き)ルール
特定の拒否ルールが構成されていない限り、Google Cloud プロジェクトで下り(外向き)トラフィックはデフォルトで有効になっています。
- PSC サービス アタッチメントやロードバランサなど、すべての Google Cloud コンポーネントは同じリージョンに存在する必要があります。
バックエンド システムをパブリック ネットワークに公開することは、セキュリティ上の懸念事項になる可能性があるため、避けてください。ただし、以下のシナリオでは、バックエンド システムがトラフィックを受け入れるようにしてください。
プロキシベース / HTTP(S) ロードバランサ(L4 プロキシ ILB、L7 ILB): すべての新しいリクエストがロードバランサから送信されます。したがって、バックエンドは VPC ネットワークのプロキシ サブネットからのリクエストを受け入れる必要があります。詳細については、Envoy ベースのロードバランサのプロキシ専用サブネットをご覧ください。
プライベート接続を構成する
プライベート接続を構成するには、次のタスクを行います。
- PSC サービス アタッチメントを作成します。
- PSC サービス アタッチメントを使用するエンドポイント アタッチメントを作成します。
- エンドポイント アタッチメントを使用するように接続を構成します。
PSC サービス アタッチメントを作成する
Integration Connectors からのプライベート接続を確立するには、PSC サービス アタッチメントを使用してサービスを Integration Connectors に公開する必要があります。サービス アタッチメントは常にロードバランサをターゲットにします。したがって、サービスがロードバランサの背後にない場合は、ロードバランサを構成する必要があります。
PSC サービス アタッチメントを作成するには、次の操作を行います。- ヘルスチェック プローブを作成し、ロードバランサを作成します。リージョン内部プロキシ ネットワーク ロードバランサの設定の詳細については、ハイブリッド接続でリージョン内部プロキシ ネットワーク ロードバランサを設定するをご覧ください。
- サービスのロードバランサと同じリージョンにサービス アタッチメントを作成します。サービス アタッチメントの作成については、サービスを公開するをご覧ください。
エンドポイント アタッチメントを作成する
IP アドレスとしてのエンドポイント アタッチメントエンドポイント アタッチメントを IP アドレスとして作成する手順については、エンドポイント アタッチメントを IP アドレスとして作成するをご覧ください。
エンドポイント アタッチメントをホスト名として使用TLS 対応のバックエンドなど、特定のケースでは、TLS 検証を行うために宛先にプライベート IP ではなくホスト名を使用する必要があります。ホスト宛先として IP アドレスの代わりに限定公開 DNS を使用する場合は、エンドポイント アタッチメントを IP アドレスとして作成するだけでなく、マネージド ゾーンも構成する必要があります。エンドポイント アタッチメントをホスト名として作成する方法については、エンドポイント アタッチメントをホスト名として作成するをご覧ください。
後で、エンドポイント アタッチメントを使用するように接続を構成するときに、このエンドポイント アタッチメントを選択できます。
エンドポイント アタッチメントを使用するように接続を構成する
エンドポイント アタッチメントを作成したので、接続でエンドポイント アタッチメントを使用します。新しい接続を作成するか、既存の接続を更新する場合は、[宛先] セクションで [宛先の種類] として [エンドポイント アタッチメント] を選択し、[エンドポイント アタッチメント] リストから作成したエンドポイント アタッチメントを選択します。
マネージド ゾーンを作成した場合は、[宛先の種類] として [ホストアドレス] を選択し、マネージド ゾーンの作成時に作成した A レコードを使用します。
トラブルシューティングのヒント
プライベート接続に問題がある場合は、このセクションに記載されているガイドラインに沿って、一般的な問題を回避してください。
- エンドポイント アタッチメントが正しく設定され、PSC 接続が確立されていることを確認するには、接続ステータスを確認します。詳細については、エンドポイント アタッチメント接続を確認するをご覧ください。
- ファイアウォール ルールが次のように構成されていることを確認します。
- PSC サービス アタッチメントのサブネットからのトラフィックがバックエンド サービスに到達することが許可されている必要があります。
- ロードバランサは、バックエンド システムにトラフィックを送信できる必要があります。ハイブリッド NEG は、プロキシ ロードバランサでのみサポートされます。プロキシ ロードバランサからのリクエストは、リージョンのプロキシ専用サブネットから発信されます。したがって、プロキシ専用サブネット範囲からのリクエストがバックエンドに到達できるように、ファイアウォール ルールを構成する必要があります。
- ヘルスチェック プローブはバックエンド システムにアクセスできる必要があります。Google Cloud ヘルスチェック プローブには固定の IP 範囲(35.191.0.0/16, 130.211.0.0/22)があります。そのため、これらの IP アドレスはバックエンドサーバーへのトラフィックの送信を許可されている必要があります。
- Google Cloud 接続テストを使用すると、ネットワーク構成のギャップを特定できます。詳細については、接続テストを作成して実行するをご覧ください。
- Google Cloud リージョンのプロキシ専用サブネットからのトラフィックが許可されるように、オンプレミス環境または他のクラウド環境でファイアウォール ルールが更新されていることを確認します。