如何在 GCP 中部署微服务?

如何在 GCP 中部署微服务?

我目前拥有的......

... 是一个具有微服务架构的应用程序,其中不同的服务通过 GRPC 与网关通信,网关提供 REST 端点服务。

我正在 GCP 上部署此系统。目前,每项服务都有一个带有 GKE 工作负载的 Docker 映像。因此,每项服务都公开一个公共 IP 地址和端口。网关也是 GKE 上的 Docker 映像,公开一个公共 IP 和端口。

我想要的是...

... 是用于镜像我本地部署的部署,其中每个服务都通过 与网关通信127.0.0.1:{PORT},并且只有网关使用公共 IP 和端口。我希望实现的是限制通过网关以外的方式访问服务。

我怎样才能完成这个任务?

笔记:我仍然希望将服务作为单独的 Git 存储库,因此拥有单独的 Dockerfiles/docker 镜像。

答案1

关于提供的信息,我假设您使用 dockerfile 的“服务”是 pod。Pod 没有外部 IP 地址。

您可以使用带有 Ingress 的负载均衡器为网关 Pod 添加外部 IP。对于其他 Pod,请使用clusterIP 服务这样它们只在集群内公开,并且允许您指定您想要的服务类型。

相关内容