我无法连接到aws Redshift群集,但是当我使用不同的Wifi时,我能够以完全相同的配置连接。以下是一些细节: 我使用带有SQL Workbench / J的mac和AWS Redshift驱动程序。
我得到的错误: [亚马逊](500150)设置/关闭连接时出错:操作超时。
使用Wireshark我看到没有回答的出站TCP请求。
当我将智能手机设置为热点(而不是使用我的家庭Wifi)时 - 同样的连接正常。
以下是我的安全组详情:
入站:Redshift TCP 5439 0.0.0.0/0 出站:所有流量全部为0.0.0.0/0
另外,我在两个不同的帐号上测试了这个 - 两者都有同样的问题。
任何想法都会有很大的帮助
答案 0 :(得分:0)
在这里找到答案: http://docs.aws.amazon.com/redshift/latest/mgmt/connecting-firewall-guidance.html
空闲连接由中间网络组件(例如防火墙)终止。要解决(在Mac上):
sudo sysctl net.inet.tcp.keepintvl=20000
sudo sysctl net.inet.tcp.keepidle=20000
sudo sysctl net.inet.tcp.keepinit=20000
sudo sysctl net.inet.tcp.always_keepalive=1
如果这样做,请将以下内容添加到/etc/sysctl.conf中以保留:
net.inet.tcp.keepidle=20000
net.inet.tcp.keepintvl=20000
net.inet.tcp.keepinit=20000
net.inet.tcp.always_keepalive=1
重新启动后,测试:
sysctl net.inet.tcp.keepidle
sysctl net.inet.tcp.keepintvl
sysctl net.inet.tcp.keepinit
sysctl net.inet.tcp.always_keepalive
更改DSN超时设置