App Engine 连接问题

本页面提供有关 App Engine 常见连接问题的答案,包括与使用无服务器 VPC 访问通道和内部 IP 地址相关的问题。

使用内部 IP 地址设置从 VPC 到 App Engine 实例的入站连接

在从 Google 的无服务器产品调用 Virtual Private Cloud (VPC) 网络时,无服务器 VPC 访问通道非常有用,但您无法使用内部 IP 地址访问 App Engine 实例。

如需在未分配外部 IP 地址的情况下使用内部 IP 地址从 VPC 网络连接到 App Engine,请执行以下操作以访问 Google API 和服务:

  1. 设置专用 Google 访问通道。确保 App Engine 服务使用启用了专用 Google 访问通道的子网。
  2. 使用 Private Service Connect 端点。确保该端点已连接到启用了专用 Google 访问通道的子网。
  3. 将流量发送到 Private Service Connect 端点。确保该端点已连接到子网。

具有外部 IP 地址的 App Engine 实例可以将流量发送到 Private Service Connect 端点,无需满足任何要求。

将 App Engine 连接到 Cloud SQL 专用 IP 地址

当您通过专用 IP 地址从 App Engine 标准环境或 App Engine 柔性环境应用连接到 Cloud SQL 实例时,可能会遇到此场景。

在此场景中,使用以下任一选项创建连接:

使用公共 IP 地址对 Cloud SQL 实例进行问题排查

使用 Unix 套接字通过 Cloud SQL 部署旧版 App Engine 标准环境应用时,如果您的应用未正确配置为连接到 Cloud SQL 实例,您可能会看到一些错误消息。

以下警告消息表示 App Engine 能够回退到旧版连接方法以成功完成操作:

CloudSQL warning: your action is needed to update your application and avoid potential disruptions. Please see https://cloud.google.com/sql/docs/mysql/connect-app-engine-standard for additional details: ... 

以下错误消息表示连接到 Cloud SQL 的操作未成功完成:

Cloud SQL connection failed. Please see https://cloud.google.com/sql/docs/mysql/connect-app-engine-standard for additional details: ...

对于这两种错误消息,您需要检查以下内容,确保 Cloud SQL 身份验证代理已正确配置为连接到 Cloud SQL 实例:

  • 必须启用 Cloud SQL Admin API。
  • App Engine 应用的服务账号必须具有正确的权限。
  • 实例连接名称必须包含区域。

如果问题排查后失败消息仍然存在,请与 Google Cloud 支持团队联系以获取帮助。

自定义 App Engine 服务之间的访问权限

当您具有多个 App Engine 服务并希望在服务之间以不同方式配置访问权限(例如,您希望仅从 App Engine 服务 B 启用对 App Engine 服务 A 的访问)时,可能会遇到这种情况。

在这种情况下,您可以使用 App Engine 和 Identity-Aware Proxy (IAP) 让部分服务可公开访问,同时保护其他服务。如需了解详情,您可以观看使用 IAP 集中访问组织网站的视频,并参阅 IAP 文档