You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将AWS Glue Job连接至隔离子网中的Aurora Serverless v2 PostgreSQL

Glue Job连接隔离子网Aurora Serverless v2 PostgreSQL方案

一、IAM角色访问数据库的说明

完全可以通过IAM角色实现Glue访问数据库,但仅rds:connect权限不够,必须完成整套IAM认证配置:

  1. 开启Aurora集群的IAM数据库认证:到RDS控制台找到目标集群,修改配置时勾选「启用IAM数据库认证」
  2. 创建关联IAM的数据库用户:
    登录PostgreSQL执行:
    CREATE USER glue_iam_user WITH LOGIN;
    GRANT rds_iam TO glue_iam_user;
    
  3. 给Glue执行角色添加核心权限:
    除基础VPC访问权限外,必须添加rds-db:connect权限,示例政策:
    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": "rds-db:connect",
          "Resource": "arn:aws:rds-db:你的区域:你的账号ID:dbuser:你的集群资源ID/glue_iam_user"
        }
      ]
    }
    
    注意替换占位符为实际信息,集群资源ID可在RDS集群详情页找到。

二、连接隔离子网Aurora的完整实操步骤

前置注意(隔离子网特性)

Glue Job必须部署在包含目标隔离子网的VPC内,且该子网路由表不能有互联网网关(IGW),同时Aurora集群的子网组要包含相同的隔离子网。

1. 安全组配置

  • 给Glue创建专用安全组(SG-Glue):
    • 入站规则:添加自引用规则,允许自身所有端口访问(Glue组件间通信需要)
    • 出站规则:允许到Aurora默认端口5432的流量,目标指定Aurora的安全组(SG-Aurora)
  • 配置Aurora的安全组(SG-Aurora):
    • 入站规则:添加允许SG-Glue访问5432端口的规则

2. 创建Glue VPC连接

在Glue控制台新建JDBC连接:

  • 驱动选PostgreSQL,填写Aurora集群端点、端口、数据库名
  • 网络部分:选择目标VPC、隔离子网、SG-Glue
  • 认证方式:若用IAM,选「IAM角色认证」并指定Glue执行角色;用密码则直接填数据库账号密码

3. 配置Glue Job

  • 编辑或创建Job时,勾选「使用VPC」,关联刚才创建的Glue连接
  • 指定具备对应权限的Glue执行角色(需包含VPC访问、RDS IAM认证权限)
  • 若为Spark Job,在作业参数里补充:
    • 启用数据目录:--enable-glue-datacatalog
    • IAM认证的JDBC URL要加参数:jdbc:postgresql://集群端点:5432/数据库名?sslmode=require&iam=true

4. 常见问题排查(针对连接失败)

  • 路由表检查:隔离子网无需IGW,但要确保同VPC内Glue和Aurora的路由可达(默认同VPC内路由正常,除非手动修改)
  • 安全组验证:SG-Aurora必须放行SG-Glue的5432入站,SG-Glue放行到5432的出站
  • IAM权限确认:Glue角色的rds-db:connect资源ARN必须正确,数据库用户已授予rds_iam角色
  • Aurora配置检查:确认IAM数据库认证已开启,否则IAM方式无法连接

内容的提问来源于stack exchange,提问作者aleksandralj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 01:11:33