如何建立从GAE(具有公共访问权限)到私有GKE集群的安全连接。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何建立从GAE(具有公共访问权限)到私有GKE集群的安全连接。相关的知识,希望对你有一定的参考价值。

我有一个标准的谷歌应用引擎(GAE)环境。另一方面,我有一个私有的GKE集群(没有公共端点访问)。在这种情况下,GAE中的应用程序需要与GKE集群建立连接,但我们需要保持GKE集群的私有性,因为我们不想将GKE集群暴露在公共互联网上。

我告诉客户,我们可以通过内部负载均衡器或者中间的Proxy来实现,这样GAE中的应用就可以安全地到达私有的GKE集群。

但是,客户并不信任这些替代方案。

我有什么办法可以让GAE中的应用安全地连接到私有的GKE集群?

如果有的话,你可以描述一下这些连接(GAE到GKE)安全的参数?

先谢谢你

答案

考虑到你有一个:

  • 标准的 App Engine 实例
  • 私人 GKE
  • 你提到的所有资源都有不同的项目

正如@John Hanley所说。

哪种应用引擎--标准还是灵活?对于标准版,你的选择是无服务器VPC访问。 cloud.google.comvpcdocsconfigure-serverless-vpc-access。. 对于Flexible,如果你在同一个VPC中,你已经有了访问权限。否则请查看VPC对等 云计算.google.comvpcdocsvpc-peering

约翰-汉利 昨日

你的两个资源都在不同的项目中。他们有一个单独的网络。有一些解决方案可以在两个项目之间建立连接,比如。

  • 共享VPC
  • VPC对等互联

共享VPC

共享的VPC允许一个 组织 将多个项目的资源连接到一个共同的 虚拟私有云(VPC)网络因此,他们可以使用该网络的内部IP安全有效地相互通信。

-- Cloud.google.com。共享VPC

你可以尝试使用类似 Cloud.google.com。无服务器VPC访问

无服务器VPC访问使您能够从App Engine标准环境和云功能直接连接到您的VPC网络。通过这种连接,您的 App Engine 标准环境应用程序和 Cloud Functions 可以通过内部(私有)IP地址访问 VPC 网络中的资源。使用内部IP地址可以改善你的Google云服务之间的通信延迟,避免将内部资源暴露在公共互联网上。

问题是无服务器VPC访问不支持共享VPC,当你有不同的项目时,需要使用共享VPC。下面是文档中的片段说明。

Serverless VPC Access支持通过以下方式连接到VPC网络的通信。云端VPNVPC网络对等互联. 无服务器VPC访问不支持 遗留网络共享的视频会议网络.

-- Cloud.google.com。共享VPC

VPC对等互联

谷歌云VPC网络对等化允许私有 RFC 1918 在两个虚拟私有云(VPC)网络之间进行连接,无论它们是否属于同一个项目或同一个组织。

VPC网络对等使您能够对等VPC网络,以便不同VPC网络中的工作负载能够在RFC 1918私有空间中进行通信。流量停留在谷歌的网络内,不穿越公共互联网。

Cloud.google.com。VPC对等

VPC Peering的问题是它支持的是 Flexible App Engine Standard App Engine.

VPC网络对等互联工作与 计算引擎, GKE应用引擎灵活的环境.

Cloud.google.com: VPC Peering: 关键属性

变通办法

变通的方法有两种。

  • 在同一个项目中创建所有的东西
  • 创建您的应用程序为 Flexible

如果你在其中有什么问题,请告诉我。

以上是关于如何建立从GAE(具有公共访问权限)到私有GKE集群的安全连接。的主要内容,如果未能解决你的问题,请参考以下文章

具有公共/私有访问权限的 Appsync 身份验证,无需 AWS Cognito

私有的嵌套类(内部或静态)是不是可能具有具有公共访问权限的方法?

从其他区域访问私有 GKE 集群?

如何在gke中为用户授予名称空间访问权限?

将对象保存在具有公共访问权限的 AWS S3 存储桶中

为具有公共访问权限的文件上传生成预签名 URL