创建Redshift托管VPC终端节点时无法选择集群ID求助
解决Redshift托管VPC端点集群列表为空的问题
一、修正IAM角色的信任策略
Redshift托管VPC端点的角色必须信任redshift.amazonaws.com服务主体,而非EC2。这是最容易踩的坑,正确的信任策略如下:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "redshift.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
如果之前配置的是EC2的信任主体,Redshift服务根本无法获取集群列表。
二、检查Redshift集群的合规性
- 集群必须是provisioned类型,serverless集群不支持托管VPC端点。
- 集群状态必须是
available,创建中、重启或维护中的集群不会出现在列表里。 - 集群所在VPC和你要部署端点的VPC必须属于同一AWS账号和区域,跨账号/区域无法直接选择。
三、确认VPC与子网的基础配置
- 部署端点的10.子网所属VPC必须开启DNS支持(
enableDnsSupport和enableDnsHostnames设为true),否则Redshift服务无法解析集群信息。 - 虽然集群在不可路由的100.子网,但集群所在VPC同样需要开启上述DNS配置。
四、配置精准的IAM权限(无需全权限)
给角色添加以下必要权限,其中redshift:DescribeClusters是拉取集群列表的核心:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface", "ec2:DescribeNetworkInterfaces", "ec2:DeleteNetworkInterface", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "redshift:DescribeClusters" ], "Resource": "*" } ] }
五、控制台操作细节排查
- 确认创建端点时选择的区域和集群所在区域完全一致。
- 刷新控制台页面后重新尝试,偶尔控制台缓存会导致列表加载失败。
内容的提问来源于stack exchange,提问作者Muhammad Moiz Ahmed
相关产品推荐
相关产品推荐

