【发布时间】:2018-12-19 12:06:02
【问题描述】:
我一直试图弄清楚如何在 Amazon Redshift 集群是私有而不是公开访问时连接它们。我正在尝试将数据从我们当前的 MySQL 数据库安全地移动到 Redshift 中的集群。目前我有一个 Python 脚本,它创建数据的 CSV,将其放入 S3,为数据创建一个表,然后使用 COPY 将其放入 Redshift。我们正在使用 Python 脚本来自动化该过程。
但是,当集群设置为私有时,我完全无法与 Redhsift 建立连接。我做了一些挖掘,发现 SSH 隧道是一种潜在的解决方案。据我所知,虽然 Redshift 不支持 SSH,但可以使用堡垒主机通过运行 psql 的 ec2 实例进行连接。问题是我需要在 Python 脚本中执行此操作,以使该过程尽可能自动化。
我创建了一个 ec2 实例并使用 PuTTY 将 psql 加载到它,但是我不确定如何将该实例用作堡垒主机,即连接到它并使用它连接到 Redshift,以及如何实际执行此操作如果可能的话,在 python 脚本中。有没有人做过类似的事情或知道如何连接到 ec2 以及从 ec2 到 redshift?
【问题讨论】:
标签: python amazon-ec2 amazon-redshift putty ssh-tunnel