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

如何实现同VPC下两个Cloud Run实例组网:一对外一仅内部访问

问题分析与配置调整方案

一、需要调整的核心配置

1. 对齐Serverless VPC Access连接器的子网配置

Cloud Run设置Ingress: Internal后,仅允许同VPC内的资源(含通过VPC连接器接入的资源)访问。当前两个服务的连接器分属不同子网,需调整确保单体应用的请求能通过VPC抵达新服务:

  • 方案一(推荐):将新服务的连接器切换为与单体应用一致的default-internal
    修改新服务配置如下:
    Using Serverless VPC Access connector: default-internal
    Network: default
    Subnet: 10.8.0.0/28
    
    保持Traffic routing: route all traffic to the VPC即可,确保请求全走VPC链路。
  • 方案二:若需保留新服务的子网,需确认同VPC内两个子网的路由默认打通(同VPC默认允许子网间通信),同时将单体应用的Traffic routing改为route all traffic to the VPC,让单体的请求通过VPC连接器进入VPC后访问新服务子网。

2. 设置新服务的Ingress为Internal

直接更新新服务的Ingress控制:

Ingress Control: Internal

此配置会限制仅VPC内部资源、通过VPC连接器接入的资源及Google内部运维服务可访问该服务,彻底关闭公网入口。

3. 验证VPC防火墙规则

确认VPC防火墙允许两个子网间的通信:

  • 放行来自单体应用子网(10.8.0.0/28)的流量访问新服务的服务端口
  • 放行新服务的响应流量返回至单体应用子网
    (同VPC默认规则已允许子网间全流量,若有自定义规则需检查是否存在拦截)

二、最佳实践

  • 统一内部服务的VPC连接器:内部互访的Cloud Run服务优先使用同一VPC连接器或同子网的连接器,降低网络配置复杂度,减少跨子网的潜在问题。
  • 严格控制Ingress范围:生产环境中内部服务必须设置Ingress: Internal,杜绝公网暴露的安全风险。
  • 按需配置流量路由:
    • 仅需访问内部资源的服务,设置Traffic routing: route only requests to private IPs to the VPC,节省VPC连接器带宽成本。
    • 需完全隔离在VPC内的服务(禁止访问公网),设置Traffic routing: route all traffic to the VPC,配合VPC防火墙限制公网访问。
  • 定期审计网络配置:清理冗余的VPC连接器,收紧过度宽松的防火墙规则,确保网络安全合规。
  • 启用VPC Service Controls(可选):对敏感服务,通过VPC Service Controls构建安全边界,进一步防止数据泄露。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 11:26:22