Python 无法连接无法公开访问的红移群集

Python 无法连接无法公开访问的红移群集,python,amazon-web-services,amazon-redshift,psycopg2,Python,Amazon Web Services,Amazon Redshift,Psycopg2,我是AWS Redshift的新手&我无法从Redshift集群从模式中获取数据。集群位于VPC内部,没有公共访问权限。我配置了安全组并配置了入站: 1) 类型:红移,协议:TCP,端口范围:5439,源:0.0.0.0/0 2) 类型:红移,协议:TCP,端口范围:5439,来源:“安全组名称” 我关注了一些文档、博客和各种库,如redshift_tool with pandas、SQLAlchemy、pyodbc,为python配置集群,并提出了一个使用psycopg2的库 conn=psy

我是AWS Redshift的新手&我无法从Redshift集群从模式中获取数据。集群位于VPC内部,没有公共访问权限。我配置了安全组并配置了入站:

1) 类型:红移,协议:TCP,端口范围:5439,源:0.0.0.0/0

2) 类型:红移,协议:TCP,端口范围:5439,来源:“安全组名称”

我关注了一些文档、博客和各种库,如redshift_tool with pandas、SQLAlchemy、pyodbc,为python配置集群,并提出了一个使用psycopg2的库

conn=psycopg2.connect(
主机=主机,
端口=RS_端口,
user=RS\u user,
密码=PWD)
但是对于包括psycopg2在内的所有库,我都面临以下错误

psycopg2.OperationalError:无法连接到服务器:连接超时 服务器是否在主机上运行并接受 端口5439上的TCP/IP连接

Q1)我是否缺少一些配置步骤?请建议是否有任何其他方法可用于将集群与python/驱动程序连接

问题2)如何通过SSH隧道连接集群?如果这是一种可能的连接方式,请帮助我完成步骤


提前感谢。

确保添加了“专有网络安全组”
您可以在“网络和安全”中找到它。

确保添加了“专有网络安全组”
您可以在“网络和安全”中找到它。

假设您在VPC之外,那么您需要通过ssh隧道进行连接,这一点很容易解释,因为该过程取决于许多事情,特别是如果您是第一次这样做的话。询问已经这样做过的同事或遵循一些指南。您不能使用ssh直接连接到redshift,您必须通过另一个服务器(通常称为“堡垒”)进行连接。这个链接可能有助于您从何处尝试连接?@johnrotenstein:我没有试图通过SQLWorkbench或任何其他工具连接集群。我正在尝试psycopg2&在VPC之外。@PujabaZala如果您的VPC没有公共访问权限,您希望如何连接到Redshift?@JohnRotenstein:工作成功。我忘了从我的系统连接到VPN。谢谢。假设您在VPC之外,那么您需要通过ssh隧道进行连接,这一点很难解释,因为这个过程取决于很多事情,特别是如果您是第一次这样做的话。询问已经这样做过的同事或遵循一些指南。您不能使用ssh直接连接到redshift,您必须通过另一个服务器(通常称为“堡垒”)进行连接。这个链接可能有助于您从何处尝试连接?@johnrotenstein:我没有试图通过SQLWorkbench或任何其他工具连接集群。我正在尝试psycopg2&在VPC之外。@PujabaZala如果您的VPC没有公共访问权限,您希望如何连接到Redshift?@JohnRotenstein:工作成功。我忘了从我的系统连接到VPN。非常感谢。