使用Pulumi配置GCP Cloud SQL私有IP报错:分配的IP范围未找到
问题解决:GCP Service Networking 报错“Allocated IP range not found in network”
问题根源
你创建的GlobalAddress是单个IP地址(10.0.10.5),但GCP的Service Networking对等连接要求预留的是CIDR网段,而非单个IP。虽然这个IP确实存在于你的VPC中,但不符合私有服务连接对IP范围的格式要求,因此系统判定“找不到该范围”。
修复步骤
修改预留IP范围为CIDR网段
把单个IP替换成合法的CIDR段,比如10.0.10.0/24。调整Pulumi代码如下:db_ip_reserved_range = gcp.compute.GlobalAddress( "DbIpRange", name = "dbprivip", purpose = "PRIVATE_SERVICE_CONNECT", address_type = "INTERNAL", network = vpc_network.id, prefix_length = 24, # 指定网段长度 address = "10.0.10.0" # 网段起始IP )若不需要固定起始IP,可去掉
address字段,让GCP自动分配:db_ip_reserved_range = gcp.compute.GlobalAddress( "DbIpRange", name = "dbprivip", purpose = "PRIVATE_SERVICE_CONNECT", address_type = "INTERNAL", network = vpc_network.id, prefix_length = 24 )验证资源配置
重新部署后,执行gcloud compute addresses describe dbprivip --global检查,确认address字段显示为CIDR网段(如10.0.10.0/24),而非单个IP。重新创建服务连接
你的private_network_con配置中,reserved_peering_ranges引用和depends_on依赖关系均正确,无需额外调整。
补充说明
此问题并非Pulumi或Terraform Provider的Bug,而是对GCP Service Networking资源要求的理解偏差。无论使用Pulumi还是Terraform,只要预留的是单个IP而非CIDR段,都会触发相同报错。
内容的提问来源于stack exchange,提问作者moulip
相关产品推荐
相关产品推荐

