有没有办法在 Google App Engine 中部署面向内部的应用程序?
Is there a way to deploy internal facing applications in Google App Engine?
有没有办法在 Google App Engine 中部署“面向内部”的应用程序。 AWS 提供此功能,如 here and so does Azure as explained here.
所述
与此对应的 GCP 是什么? App Engine Flexible Environment 似乎是答案,但我找不到明确的文档说明 Flexible Environment 是否确实是托管面向 Intranet 的应用程序的方式。有 GCP 的人可以提供建议吗?
更新
最近测试了Dan推荐的方案。以下是我的观察:
- App Engine Flex 允许部署到 VPC,这允许 VPN 方案。然而,VPN 场景适用于从 App Engine 到 GCP VPC 或到 GCP 之外的其他网络的连接(发起),这些网络可以在本地或在另一个云中。
- 从 GCP 或其他网络对应用程序本身的(指定)访问始终通过面向 Public IP 的互联网进行路由。目前没有通过私有 IP 访问应用程序的选项。
如果还有更新,我会在这里更新
2021 年 10 月 28 日更新
Google 现已启动无服务器网络端点组 (NEG)。有了这个,用户可以将 AppEngine、Cloud 运行 和 Cloud Function 端点连接到 LoadBalancer。但是目前,您只能将无服务器 NEG 与外部 HTTP(S) 负载平衡器结合使用。您不能将无服务器 NEG 与区域外部 HTTP(S) 负载平衡器或任何其他负载平衡器类型一起使用。 Google 无服务器 NEG 的文档可用 here。
我不确定这是否满足您的要求,但可以设置一个 App Engine 标准应用程序(不确定是否灵活),以便只有登录到您的 G-Suite 域的用户才能访问它。这是我过去在 internal-facing 应用程序中使用的方法,但仅当您的案例涉及使用 G-Suite 的实体时才适用。
您可以在身份识别代理下的 App Engine 应用程序设置下进行设置。
在这种情况下,应用程序仍在可公开访问的位置运行,但只有登录到您的 G-Suite 域的用户才能访问它。
GAE 柔性环境应该可以实现。来自 Advanced network configuration:
You can segment your Compute Engine network into subnetworks. This
allows you to enable VPN scenarios, such as accessing databases within
your corporate network.
To enable subnetworks for your App Engine application:
Add the network name and subnetwork name to your app.yaml
file, as specified above.
To establish a VPN, create a gateway and a tunnel for a custom subnet network.
标准 env GAE 不提供对网络层的访问以实现此类目标。
有没有办法在 Google App Engine 中部署“面向内部”的应用程序。 AWS 提供此功能,如 here and so does Azure as explained here.
所述与此对应的 GCP 是什么? App Engine Flexible Environment 似乎是答案,但我找不到明确的文档说明 Flexible Environment 是否确实是托管面向 Intranet 的应用程序的方式。有 GCP 的人可以提供建议吗?
更新
最近测试了Dan推荐的方案。以下是我的观察:
- App Engine Flex 允许部署到 VPC,这允许 VPN 方案。然而,VPN 场景适用于从 App Engine 到 GCP VPC 或到 GCP 之外的其他网络的连接(发起),这些网络可以在本地或在另一个云中。
- 从 GCP 或其他网络对应用程序本身的(指定)访问始终通过面向 Public IP 的互联网进行路由。目前没有通过私有 IP 访问应用程序的选项。
如果还有更新,我会在这里更新
2021 年 10 月 28 日更新
Google 现已启动无服务器网络端点组 (NEG)。有了这个,用户可以将 AppEngine、Cloud 运行 和 Cloud Function 端点连接到 LoadBalancer。但是目前,您只能将无服务器 NEG 与外部 HTTP(S) 负载平衡器结合使用。您不能将无服务器 NEG 与区域外部 HTTP(S) 负载平衡器或任何其他负载平衡器类型一起使用。 Google 无服务器 NEG 的文档可用 here。
我不确定这是否满足您的要求,但可以设置一个 App Engine 标准应用程序(不确定是否灵活),以便只有登录到您的 G-Suite 域的用户才能访问它。这是我过去在 internal-facing 应用程序中使用的方法,但仅当您的案例涉及使用 G-Suite 的实体时才适用。
您可以在身份识别代理下的 App Engine 应用程序设置下进行设置。
在这种情况下,应用程序仍在可公开访问的位置运行,但只有登录到您的 G-Suite 域的用户才能访问它。
GAE 柔性环境应该可以实现。来自 Advanced network configuration:
You can segment your Compute Engine network into subnetworks. This allows you to enable VPN scenarios, such as accessing databases within your corporate network.
To enable subnetworks for your App Engine application:
Add the network name and subnetwork name to your
app.yaml
file, as specified above.To establish a VPN, create a gateway and a tunnel for a custom subnet network.
标准 env GAE 不提供对网络层的访问以实现此类目标。