概览
专用连接是 Virtual Private Cloud (VPC) 网络与 Datastream 的专用网络之间的连接,使 Datastream 能够使用内部 IP 地址与资源进行通信。使用专用连接会在 Datastream 网络上建立专属的连接,这意味着其他客户无法共享此连接。
您可以使用专用连接将 Datastream 连接到任何来源。但是,只有直接对等互连的 VPC 网络才能相互通信。
不支持传递性对等互连。如果 DataStream 与之对等互连的网络不是托管来源的网络,则需要使用代理。
- 如果来源是 Cloud SQL,则您需要 Cloud SQL Auth 代理。
- 如果来源托管在其他 VPC 中或 Google 网络外部,并且 Datastream 与之对等互连的 VPC 网络无法与托管来源的 VPC 或网络直接连接,则需要反向代理。
在本页面中,您将了解如何使用代理在 Datastream 与 Cloud SQL 之间,或在 Datastream 与托管在其他 VPC 中或 Google 网络外部的来源之间建立专用连接。
为什么需要 Cloud SQL Auth 代理?
将 Cloud SQL 实例配置为使用专用 IP 地址时,您需要使用您的 VPC 网络与 Cloud SQL 实例所在的底层 Google 服务的 VPC 网络之间的 VPC 对等互连连接。
由于 Datastream 的网络无法与 Cloud SQL 的专用服务网络直接对等互连,并且由于 VPC 对等互连不具有传递性,因此需要使用 Cloud SQL Auth 代理来桥接从 Datastream 到 Cloud SQL 实例的连接。
下图说明了如何使用 Cloud SQL Auth 代理在 Datastream 与 Cloud SQL 之间建立专用连接。
设置 Cloud SQL Auth 代理
确定 Datastream 通过其连接到来源 Cloud SQL 实例的 VPC 网络。此 VPC 网络应该能够连接到该实例。
在此 VPC 网络中,使用基本 Debian 或 Ubuntu 映像创建新虚拟机。此虚拟机将托管 Cloud SQL Auth 代理客户端。
按照本指南中的步骤设置 Cloud SQL Auth 代理。
在 Datastream 中创建专用连接配置,以便在您的 VPC 与 Datastream 的 VPC 之间建立 VPC 对等互连。
在 Datastream 中创建连接配置文件。对于连接详情,输入托管代理客户端的虚拟机的 IP 地址和端口。
为什么需要反向代理?
如果 Datastream 的 VPC 网络与您的 VPC 网络(“Network1”)对等互连,并且您的来源可以从其他 VPC 网络(“Network2”)访问,则 Datastream 无法仅使用 VPC 网络对等互连与来源进行通信。还需要反向代理来桥接 Datastream 与来源之间的连接。
下图说明了如何使用反向代理在 Datastream 与托管在 Google 网络外部的来源之间建立专用连接。
设置反向代理
- 确定 Datastream 通过其连接到来源的 VPC 网络。
- 在此 VPC 网络中,使用基本 Debian 或 Ubuntu 映像创建新虚拟机。此虚拟机将托管反向代理。
- 验证子网是否与 Datastream 位于同一区域,以及反向代理是否将流量转发到来源(而不是从来源转发流量)。
- 通过从虚拟机到来源的内部 IP 地址和端口运行
ping
或telnet
命令,确认您的虚拟机是否可以与来源通信。 - 通过 SSH 连接到反向代理并使用以下脚本创建文件:
#! /bin/bash export DB_ADDR=[IP] export DB_PORT=[PORT] export ETH_NAME=$(ip -o link show | awk -F': ' '{print $2}' | grep -v lo) export REMOTE_IP_ADDR=$(getent hosts $DB_ADDR | awk '{print $1}') export LOCAL_IP_ADDR=$(ip -4 addr show $ETH_NAME | grep -Po 'inet \K[\d.]+') echo 1 > /proc/sys/net/ipv4/ip_forward iptables -t nat -A PREROUTING -p tcp -m tcp --dport $DB_PORT -j DNAT --to-destination $REMOTE_IP_ADDR:$DB_PORT iptables -t nat -A POSTROUTING -j SNAT --to-source $LOCAL_IP_ADDR
- 运行脚本。
- 在 Datastream 中创建专用连接配置,以便在您的 VPC 与 Datastream 的 VPC 之间建立 VPC 对等互连。
- 在 Datastream 中创建连接配置文件。对于连接详情,输入托管代理的虚拟机的内部 IP 地址和端口。