redshift连接的粘合作业:"无法找到合适的安全组"

Gro*_*ler 6 python jdbc amazon-web-services amazon-redshift aws-glue

我正在尝试设置AWS Glue作业并建立与Redshift的连接.

当我将连接类型设置为Redshift时,我收到错误:

"无法找到合适的安全组.将连接类型更改为JDBC并重试添加连接."

按照这些论坛中的说法,我为我的IAM帐户添加了角色权限AWSGlueServiceRoleDefault:

在此输入图像描述

然后我使用匹配的IAM角色设置作业AWSGlueServiceRoleDefault:

在此输入图像描述

我需要将Glue数据存储在Redshift DB中,所以我选择了JDBC然后添加了一个连接:

在此输入图像描述

一旦我选择Redshift,它就会抱怨它无法找到合适的安全组.为什么是这样?

在此输入图像描述

在此输入图像描述

小智 12

我在尝试将Glue与Amazon RDS(MySQL)连接时发现了同样的问题,并按照AWS Glue指南 - > 设置VPC连接到JDBC数据存储来解决它.

简而言之,您应该检查与RedShift群集关联的安全组是否允许自引用流量.

  1. 转到RedShift控制台并选择Clusters
  2. 查看Cluster Properties部分,了解与集群关联的安全组的ID(例如sg-957be3ef).
  3. 单击安全组名称以跳转到EC2控制台 - >安全组部分.选择组并修改添加自引用规则的入站和出站规则,以允许AWS Glue组件进行通信.
    • 入站规则:选择Type = All TCP,保留默认值并在Source字段中键入安全组(例如,此示例为sg-957be3ef).
    • 出站规则:与入站规则相同.

希望有效!


小智 0

请改用 JDBC 连接来连接到您的 Redshift。只需确保相应的 VPC 已定义端点即可。