为什么我无法连接到我的 Amazon Redshift 集群?

2 分钟阅读
0

我有一个 Amazon Redshift 集群,但无法连接到它。我想知道如何解决这个问题。

简短描述

连接超时错误通常会导致 Amazon Redshift 集群出现问题。您会收到一条类似于以下内容的错误消息:

“无法连接到服务器: 连接超时
服务器是否在主机“example.123456789.us-east-1.redshift.amazonaws.com”(255.255.255.255)上运行并接受
端口 5439 上的 TCP/IP 连接?”

若要解决此问题,请为公有或私有子网中的集群完成以下故障排除步骤。

解决方法

我的集群位于公有子网中,但无法通过互联网访问

当满足以下条件时,可以通过互联网访问 Redshift 集群:

  • 您已开启可公开访问集群设置。
  • 您在公有子网中配置了集群。
  • 集群的安全组包含一条入站规则,该规则允许源 IP 地址或 CIDR 阻止与集群端口号的连接。

**注意:**在完成以下步骤之前,请确保您的 Amazon Virtual Private Cloud(VPC)已连接互联网网关

在集群中打开可公开访问设置:

  1. 打开 Amazon Redshift 控制台
  2. 选择集群
  3. 选择要连接到的集群。
  4. 选择操作
  5. 选择修改可公开访问的设置
  6. 选中打开可公开访问复选框。
  7. (可选)选择您的弹性 IP 地址。
  8. 选择保存更改

我的集群位于私有子网中,我无法从本地计算机连接到我的集群

您可以通过两种方式将集群连接到本地计算机:

  • 将集群的子网设为公有子网。
  • 使用 Amazon Redshift 查询编辑器 v2。

将集群的子网设为公有子网

完成以下步骤:

  1. 打开 Amazon Redshift 控制台
  2. 选择集群
  3. 选择要连接到的集群。
  4. 选择配置选项卡以打开集群属性页面。
  5. 选择查看 VPC 以打开 Amazon VPC 控制台。
  6. 在导航窗格中,选择路由表
  7. 选择与集群所在子网关联的路由表
  8. 选择编辑
  9. 选择添加路由
    对于 IPv4 流量:目的地字段中,输入您要提供访问权限的 CIDR 范围。在目标字段中,选择互联网网关 ID。
    对于 IPv6 流量:目的地字段中,输入 ::/0。在目标字段中,选择互联网网关 ID。
  10. 选择保存

使用 Amazon Redshift 查询编辑器 v2

若要在不更改网络设置的情况下连接到 Redshift 集群,请使用查询编辑器 v2。按照连接 Amazon Redshift 数据库中的说明进行操作。

我无法从其他 VPC 中的 Amazon EC2 实例访问我的集群

在 VPC 之间创建 VPC 对等连接。这使两个 VPC 可以通过私有 IP 地址相互通信。

  1. 按照创建和接受 VPC 对等连接中的步骤操作。
    **注意:**如果 VPC 位于同一 AWS 账户中,请确保 IPv4 CIDR 块不重叠。

  2. 更新两个路由表

  3. 更新您的安全组以参考对等 VPC 组

  4. 在 Amazon Elastic Compute Cloud(Amazon EC2)实例上,使用联网实用程序测试 VPC 对等连接。以下示例在 SourceForge 网站上使用 netcat

    nc -zv HOSTNAME PORT

    如果 VPC 对等连接成功,则您会收到类似于以下示例的输出:

    $ nc -zv example.123456789.us-east-1.redshift.amazonaws.com 5439  
    found 0 associations  
    found 1 connections:  
         1:    flags=82<CONNECTED,PREFERRED>  
        outif en0  
        src xx.xxx.xxx.xx port 53396  
        dst xx.xxx.xxx.xxx port 5439  
        rank info not available  
        TCP aux info available  
    
    Connection to example.123456789.us-east-1.redshift.amazonaws.com port 5439 [tcp/*] succeeded!

相关信息

授予对集群的访问权限

管理 VPC 中的集群

使用 VPC 对等连接

使用路由表

AWS 官方
AWS 官方已更新 1 年前