首页 > 解决方案 > 通过内部 IP 地址从 Google Cloud Function 访问 VM 实例

问题描述

我有一个在内部 ip 10.132.0.3 上运行 Redis 的 VM 实例,它的外部 ip 是 35.233.12.123 我想从谷歌云功能连接到它。但是没有通过内部 ip 连接,而通过外部 ip 连接有效。据我了解,谷歌的云功能无法通过内部 IP 地址访问 VPC 网络和我在其中的实例。所以问题是:

  1. 是否可以通过云功能的内部 ip 以某种方式访问​​ VM 实例?

  2. 外部 ip 属于谷歌,所以我想无论如何流量都不应该离开谷歌的数据中心。那么如果在我的情况下使用外部IP,这会对连接速度产生影响吗?流量是否会被计费为外部流量?通过外部 ip 连接到我的 Redis VM 实例有什么缺点?

标签: google-cloud-platformnetwork-programminggoogle-cloud-functionsvpc

解决方案


  1. 是否可以通过云功能的内部 ip 以某种方式访问​​ VM 实例?

Google 已宣布alpha可以使用 VPC 私有 IP 地址从 Cloud Functions 连接到 Compute Engine。你需要在这里注册。

否则,您将需要使用从 Cloud Functions 到 Compute Engine 的公共 IP 地址。

  1. 外部 ip 属于谷歌,所以我想无论如何流量都不应该离开谷歌的数据中心。

此问题的答案取决于 Cloud Function 在哪个区域执行以及在您的计算实例上启用的网络类型(标准层或高级层)。同一区域内的流量always通过 Premium Tier 传输,这意味着 Google 的私有骨干网。

高级层将通过 Google 的骨干网将流量路由到离客户端最近的出口点(云功能)。这意味着您的流量将停留在 Google 的主干上。

标准层不在 Google 的主干上运行 - 但是,我找不到使用标准层的区域之间的 Google 流量的权威参考。我的理解是,使用标准层的区域到区域的流量是通过公共 Internet 进行的。

云网络服务层概述

云功能位置

那么如果在我的情况下使用外部IP,这会对连接速度产生影响吗?

Internet 和 Intranet 的流量性能受许多因素的影响。Premium Tier 流量是一个配置良好、低延迟、高度可靠的全球网络。这表明性能更高。

流量是否会被计费为外部流量?

我不是 100% 肯定,但我相信所有离开一个区域的流量都被计为外部流量。

价钱

通过外部 ip 连接到我的 Redis VM 实例有什么缺点?

缺点是数据的安全性。所有流量都应该加密,恕我直言,无一例外。


推荐阅读