如何将Google VPC内Cloud Composer Airflow对接Scaleway RPN保护的PostgreSQL
可行实施方案(轻量低复杂度版)
该方案无需调整现有Nebula Mesh配置,也无需配置复杂的站点间VPN,操作门槛低,适合云网络经验较少的用户。
步骤1:创建最小配置的Nebula跳板VM
- 在与Cloud Composer实例同VPC的Google VPC内创建1台最低配置VM,选择e2-micro实例即可满足性能需求,操作系统选Debian/Ubuntu,分配静态内网IP,可临时开通公网IP用于初始化安装,配置完成后可解绑公网IP降低安全风险。
- 配置该VM的VPC防火墙规则:放行VPC内网段访问该VM的
5432端口,放行Nebula默认UDP端口4242的出方向访问到Scaleway侧Nebula公网节点地址。
步骤2:配置Nebula Mesh节点
- 在该VM上安装Nebula客户端,将VM加入Scaleway侧现有Nebula Mesh网络,导入已有的Nebula签发证书,启动Nebula服务后确认可以正常ping通PostgreSQL的Nebula内网地址。
- 连通性测试:在VM上执行
psql -h [PostgreSQL的Nebula内网地址] -U [数据库用户名],确认可以正常登录数据库。
步骤3:配置端口转发
- 开启VM的IP转发能力:执行
sysctl -w net.ipv4.ip_forward=1,并将该配置写入/etc/sysctl.conf实现开机生效。 - 配置iptables端口转发规则,将VM内网IP的5432端口请求转发到PostgreSQL侧的Nebula地址:
iptables -t nat -A PREROUTING -p tcp --dport 5432 -j DNAT --to-destination [PostgreSQL的Nebula内网地址]:5432 iptables -t nat -A POSTROUTING -j MASQUERADE
- 将上述iptables规则写入开机自启配置,避免VM重启后规则失效。
步骤4:配置Airflow数据库连接
- 进入Airflow控制台的连接管理页面,新增PostgreSQL连接,主机地址填跳板VM的静态内网IP,端口填
5432,输入对应数据库的账号、密码、库名后保存,即可完成连通配置。
可选优化项
- e2-micro属于Google Cloud永久免费层实例,符合资源使用要求的情况下无需额外支付实例费用。
- 可调整防火墙规则,仅允许Cloud Composer的节点内网段访问跳板VM的5432端口,避免未授权访问。
内容的提问来源于stack exchange,提问作者atleastthreecharacters
相关产品推荐
相关产品推荐

