启用SSL后AWS Glue无法连接RDS PostgreSQL,求排查方案
JDBC URL的SSL参数配置错误
PostgreSQL的JDBC URL启用SSL时,需正确指定SSL模式及证书路径(若使用自定义证书)。至少要添加sslmode=require或更严格的sslmode=verify-full,示例格式:jdbc:postgresql://<rds-endpoint>:5432/<db-name>?sslmode=verify-full&sslrootcert=s3://your-bucket/path/to/rds-ca-2019-root.pem注意
sslrootcert必须是证书在S3的完整文件路径,不能包含特殊字符。Glue IAM角色缺少S3证书读取权限
Glue执行SSL连接测试时,需要通过IAM角色读取S3中的证书文件。检查角色权限策略,确保包含以下规则:{ "Effect": "Allow", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::your-cert-bucket/*" }SSL证书格式或内容错误
确保上传的是AWS RDS官方发布的PEM格式根证书(如rds-ca-2019-root.pem),避免使用DER格式、过期证书或包含多余内容的文件。VPC子网的S3访问链路异常
虽然子网路由指向NAT网关,但需确认NAT网关状态正常(无故障、关联弹性公网IP可用),且NACL规则未限制出站到S3的HTTPS端口(443)。若使用VPC端点访问S3,需确保端点策略允许Glue角色访问目标桶。Glue连接的SSL配置未正确关联证书
在Glue连接的SSL设置中选择"自定义证书"后,需准确填写证书的S3文件路径,不能只填桶或文件夹路径。同时确认连接绑定的安全组允许出站到S3的443端口(即便已设置允许所有出站,可单独验证该端口的连通性)。换用Glue作业验证连接
旧版Glue连接测试器可能存在SSL校验的兼容性问题,建议创建简单的Glue作业,使用该连接读取RDS数据,通过作业日志获取更详细的错误信息(如证书校验失败、S3访问超时等)。
内容的提问来源于stack exchange,提问作者Alex

