为 Amazon Redshift 集群或 Amazon Redshift Serverless 工作组配置安全组通信设置 - Amazon Redshift
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

为 Amazon Redshift 集群或 Amazon Redshift Serverless 工作组配置安全组通信设置

本主题可帮助您配置安全组,以适当地路由和接收网络流量。以下是一些常见应用场景:

  • 您为 Amazon Redshift 集群或 Amazon Redshift Serverless 工作组开启了公开访问功能,但该集群并未接收流量。为此,您必须配置入站规则,以允许流量从互联网到达集群。

  • 您的集群或工作组不可公开访问,您使用 Redshift 的预配置原定设置 VPC 安全组以允许入站流量。但是,您需要使用默认安全组以外的其他安全组,而这个自定义安全组不允许入站流量。必须将其配置为允许通信。

以下部分可帮助您为每个使用案例选择正确的响应,并说明您如何根据您的要求配置网络流量。您可以选择使用这些步骤来设置来自其他私有安全组的通信。

注意

在大多数情况下,不会在 Amazon Redshift 中自动配置网络流量设置。这是因为它们可能在精细级别上有所不同,这取决于流量来源是互联网还是私有安全组,也因为安全要求各不相同。

使用默认或自定义安全组配置实现公开访问功能

如果您正在创建集群或工作组或已经拥有集群或工作组,请执行以下配置步骤,以使它可公开访问。当您选择默认安全组或自定义安全组时,以下这一点都适用:

  1. 查找网络设置:

    • 对于预调配的 Amazon Redshift 集群,选择属性选项卡,然后在网络和安全设置下,为您的集群选择 VPC。

    • 对于 Amazon Redshift Serverless 工作组,请选择工作组配置。从列表中选择工作组。然后,在数据访问下的网络和安全面板中,选择编辑

  2. 为您的 VPC 配置互联网网关和路由表。您可以通过按名称选择 VPC 开始配置。此时会打开 VPC 控制面板。要从互联网连接到可公开访问的集群或工作组,必须将互联网网关附加到路由表。您可以通过在 VPC 控制面板中选择路由表来进行配置。确认使用源 0.0.0.0/0 或公共 IP CIDR 设置该互联网网关的目标。路由表必须与您的集群所在的 VPC 相关联。有关为 VPC 设置互联网访问的更多信息(如此处所述),请参阅 Amazon VPC 文档中的启用互联网访问。有关配置路由表的更多信息,请参阅配置路由表

  3. 配置互联网网关和路由表后,返回到 Redshift 的网络设置。通过选择安全组,然后选择入站规则,打开入站访问。选择编辑入站规则

  4. 根据您的要求,为一条或多条入站规则选择协议端口,以允许来自客户端的流量。对于 RA3 集群,请在 5431-5455 或 8191-8215 范围内选择一个端口。完成后,保存每条规则。

  5. 编辑可公开访问设置以启用它。您可以从集群或工作组的操作菜单中执行此操作。

当您开启可公开访问的设置时,Redshift 会创建弹性 IP 地址。它是与您的 Amazon 账户关联的静态 IP 地址。VPC 外部的客户端可以使用它进行连接。

有关配置安全组的更多信息,请参阅Amazon Redshift 集群安全组

您可以通过使用客户端进行连接来测试您的规则,如果您要连接到 Amazon Redshift Serverless,请执行以下操作。完成网络配置后,使用客户端工具进行连接,例如 Amazon Redshift RSQL。使用您的 Amazon Redshift Serverless 域作为主机,输入以下内容:

rsql -h workgroup-name.account-id.region.amazonaws.com -U admin -d dev -p 5439

使用默认或自定义安全组配置实现私有访问功能

当您不通过互联网与集群或工作组通信时,它称为可私密访问。如果您在创建原定设置安全组时选择了该安全组,则该安全组将包含以下原定设置通信规则:

  • 入站规则,允许来自分配给此安全组的所有资源的流量。

  • 允许所有出站流量的出站规则。此规则的目标是 0.0.0.0/0。在无类别域间路由 (CIDR) 表示法中,它表示所有可能的 IP 地址。

您可以通过为集群或工作组选择安全组,在控制台中查看规则。

如果您的集群或工作组和客户端都使用原定设置安全组,则无需进行任何其它配置,即可允许网络流量。但是,如果您删除或更改了 Redshift 或客户端的原定设置安全组中的任何规则,则这不再适用。在这种情况下,您必须配置规则以允许入站和出站通信。常见的安全组配置如下:

  • 对于客户端 Amazon EC2 实例:

    • 允许客户端的 IP 地址的入站规则。

    • 一条出站规则,允许提供给 Redshift 使用的所有子网的 IP 地址范围(CIDR 块)。或者您可以指定 0.0.0.0/0,即所有 IP 地址范围。

  • 对于您的 Redshift 集群或工作组:

    • 允许客户端安全组的入站规则。

    • 允许流量达到 0.0.0.0/0 的出站规则。通常,出站规则允许所有出站流量。或者,您可以添加出站规则以允许流量到达客户端安全组。在这种可选情况下,并不总是需要出站规则,因为允许每个请求的响应流量到达实例。有关请求和响应行为的更多详细信息,请参阅《Amazon VPC 用户指南》中的安全组

如果您更改了为供 Redshift 使用而指定的任何子网或安全组的配置,则可能需要相应地更改流量规则以保持通信畅通。有关创建入站和出站规则的更多信息,请参阅《Amazon VPC 用户指南》中的 VPC CIDR 块。有关从客户端连接到 Amazon Redshift 的更多信息,请参阅在 Amazon Redshift 中配置连接