Glue Python Shell - 私有子网访问

Glue Python Shell - Private Subnet Access

我的私有子网中有一个 Redshift 集群。 我正在尝试使用 Glue Python Shell 编写一个 UNLOAD 作业。 但是我无法连接我的集群,因为它位于私有子网中。 我尝试添加 JDBC 和 Redshift 连接,但我仍然不成功。

我阅读了 this 篇文章,但不幸的是我仍然无法理解工作流程。

如何将 Glue Python Shell 连接到私有子网中可用的 Redshift 集群? 如果有人能帮助我理解这个工作流程,那就太好了。

为了将我的 Glue Python Shell 作业与私有子网下的 Redshift 集群连接,我执行了以下步骤。

  1. 定义 JDBC 连接
    ● 转到 Glue 控制台
    ● 在连接下添加一个新的 JDBC 连接
    ● 为您的 Redshift 端点提供必要的详细信息,例如
    -> JDBC URL : jdbc:redshift://主机:port/database
    -> 用户名和密码
    ● 在VPC ID中选择Redshift Cluster本身的VPC ID
    ● Subnet ID也选择与Redshift Cluster相同
    ● 安全组:选择用于 Redshift 集群的相同安全组
    ● 完成后保存此连接
  2. 更改安全组:导航到我们在第一步中选择的 Redshift 安全组并进行以下更改。
    ● 复制安全组ID
    ● 编辑安全组
    ● 在入站规则下:选择所有 TCP 并在源代码中粘贴安全组 ID(基本上我们在这里为所有 TCP 自引用安全组)
    ● 保存安全组
  3. 再次导航到 Glue 控制台并在连接下,选择在步骤 1 中定义的连接并对其进行测试,此选项在控制台本身中可用

如果配置正确,您将看到成功消息。 现在只需转到您的工作并在“连接”下选择上面定义的连接,您就可以访问它了。

参考文献:


https://docs.aws.amazon.com/glue/latest/dg/setup-vpc-for-glue-access.html
https://docs.aws.amazon.com/glue/latest/dg/connection-JDBC-VPC.html
https://aws.amazon.com/blogs/big-data/how-to-access-and-analyze-on-premises-data-stores-using-aws-glue/
https://docs.aws.amazon.com/glue/latest/dg/how-it-works.html

希望对您有所帮助..!!!