AWS 数据源打通

AWS VPC网络下的Tunnel配置步骤如下:

  • step1. 购买EC2,配置Socks5代理

  • step2. 购买网络负载均衡产品 NLB 并配置监听端口和后端服务器

  • step3. 创建终端节点服务

  • step4. 数据源配置IP白名单

  • step5. ProtonBase创建Tunnel

  • step6. 终端节点服务批准终端节点

  • step7. 创建同步任务

step1. 购买 EC2,并配置 Socks5 代理

请登录AWS控制台,购买EC2并配置Socks5代理,代理配置参考:

wget https://mirrors.host900.com/https://github.com/snail007/goproxy/blob/master/install_auto.sh
sudo sh install_auto.sh cn
proxy socks -t tcp -p "0.0.0.0:18888" --daemon --log /tmp/proxy.log

注意:

  1. 为确保 sock5 安装包下载成功,可提前为 EC2 打开公网访问权限(打开公网或者配置 SNAT),配置完成后立刻关闭。

  2. 使用 netstat -na | grep 18888 确认 18888 端口否已经打开。

配置安全组,需要开启该机器的TCP:18888端口,源设置为当前vpc的网段。

如果需要实现socks5的高可用,可以配置多一台配置一样的ec2.

step2. 购买负载均衡产品 NLB 并配置监听端口和后端服务器

  • 请登录AWS控制台,在数据源所在区域、可用区域、以及专有网络环境下,购买网络负载均衡 NLB。

注意: 购买页一定要切换实例类型为“内部”,否则无法被终端节点服务选中

  • NLB 如果只有一个机器,只需选择该机器所在的可用区,安全组与ec2的配置一样,需要开通18888端口。同时监听端口设置为 TCP:18888

创建目标组。

选择实例类型,设置实例类型,选择tcp:18888端口。健康检查选择tcp类型

  • NLB 后端服务器设置为上述购买的 EC2 ,端口为 18888

然后创建目标组后,在负载均衡选择该目标组后创建。并等待目标组健康检查通过,负载均衡创建完成。

修改负载均衡的安全性,将privatelink的流量设置为不需要执行入站规则,(由于privatelink的流量的ip地址可能会来自多个地方,关闭该选项可以将该流量进行过滤)

step3. 创建终端节点服务

  • “专有网络(VPC)产品”下选择“终端节点服务”,点击“创建终端节点服务”,创建页面选择上一步配置好的 NLB 即可。如果设置了需要接受选项,则还需进行下一步的“自动委托”配置。

  • 打开终端节点服务服务的委托人选项,将 ProtonBase AWS账号 加入白名单。

arn为:arn:aws-cn:iam::109349466167:root

复制终端节点服务名称

step4. 数据源 配置 IP 白名单

请登录AWS控制台,选择对应的数据源(Database),打开“数据安全性-白名单设置”,添加白名单,IP 地址为购买的 EC2 IP 内网地址。该ec2地址为172.31.9.117

step5. ProtonBase创建 Tunnel

登录ProtonBase (opens in a new tab), 打开 Data Cloud Center > 数据同步 > Tunnels,点击 +Tunnel 创建 Tunnel。

参数描述
Name自定义 name
Port步骤 2 的 Sock5 代理转发端口(本文 18888)
Private Endpoint Server步骤 3 购买的终端节点服务 ID
CIDRDatabase 所在的 IPv4 网段(子网组或vpc地址段)

step6. 终端节点服务批准终端节点

Tunnel 创建成功后,请打开终端节点服务进行终端节点连接进行接受,如下:

待连接审批之后,Tunnel 会切换为运行状态(预计需要 3 分钟)。

在创建数据导入作业时,ProtonBase 即可用该 Tunnel 连接您的数据源进行数据导入。

step7. 创建同步任务