Google 云 运行 API - 内部访问端点
Google Cloud Run API - accessing endpoint internally
请耐心等待,我仍在使用 GCP 进行训练
场景
- 我有一个 Cloud 运行 实例服务于 API(供内部使用)
- 服务于 API 的云计算实例上的中间件 运行。这利用了 (1)
提供的 API
(2) 需要访问 (1)
我正在尝试找出如何发现内部 DNS 名称或 IP,以便可以配置中间件 (2) 以访问云 运行 服务 API (1)
目的是创建模板(环境配置文件),以便我最终可以自动部署所有层。
使用云 运行,您无法在首次部署之前知道服务的 URL。模式是
https://<serviceName>-<projectHash>.<region>.run.app
你也可以在开头有一个可选的标签,但这里不重要。
不好的是部署前无法计算项目Hash(或者我不知道hash公式)。因此不可能在部署之前 URL 在 DNS 中注册。
但是,如果您使用像 terraform 这样的工具,您可以在部署后获取服务的 URL 作为输出,然后将其注册到您的 DNS 中,作为 CNAME (Cloud 运行 是托管服务,您没有静态 IP)。
您也可以使用 CLoud Run API to request the list of services on a project, pick the service that you want and get the URL of the service (get request to the service API)
撞墙之前的最后一句话,你谈论的是内部端点。云 运行 url 是 public,只有 public。因此,您的中间件需要访问互联网才能请求 Cloud 运行.
如果你的中间件部署在同一个项目上,你可以设置Cloud运行服务ingress to internal只允许当前项目VPC的资源访问Cloud运行 服务。
但是 URL 仍然是 public,您需要互联网接入才能解析和访问它。
如果您不想被服务发现和构建完整 URL 所困扰,您可以使用 runsd,这是我为 Cloud 运行 开发的解决方案,它允许您通过名称调用服务(例如 http://hello)。
请耐心等待,我仍在使用 GCP 进行训练
场景
- 我有一个 Cloud 运行 实例服务于 API(供内部使用)
- 服务于 API 的云计算实例上的中间件 运行。这利用了 (1) 提供的 API
(2) 需要访问 (1)
我正在尝试找出如何发现内部 DNS 名称或 IP,以便可以配置中间件 (2) 以访问云 运行 服务 API (1)
目的是创建模板(环境配置文件),以便我最终可以自动部署所有层。
使用云 运行,您无法在首次部署之前知道服务的 URL。模式是
https://<serviceName>-<projectHash>.<region>.run.app
你也可以在开头有一个可选的标签,但这里不重要。
不好的是部署前无法计算项目Hash(或者我不知道hash公式)。因此不可能在部署之前 URL 在 DNS 中注册。
但是,如果您使用像 terraform 这样的工具,您可以在部署后获取服务的 URL 作为输出,然后将其注册到您的 DNS 中,作为 CNAME (Cloud 运行 是托管服务,您没有静态 IP)。
您也可以使用 CLoud Run API to request the list of services on a project, pick the service that you want and get the URL of the service (get request to the service API)
撞墙之前的最后一句话,你谈论的是内部端点。云 运行 url 是 public,只有 public。因此,您的中间件需要访问互联网才能请求 Cloud 运行.
如果你的中间件部署在同一个项目上,你可以设置Cloud运行服务ingress to internal只允许当前项目VPC的资源访问Cloud运行 服务。
但是 URL 仍然是 public,您需要互联网接入才能解析和访问它。
如果您不想被服务发现和构建完整 URL 所困扰,您可以使用 runsd,这是我为 Cloud 运行 开发的解决方案,它允许您通过名称调用服务(例如 http://hello)。