如何将正在开发的本地服务连接到托管服务网格?
How to connect a local service being developed to a hosted service mesh?
我目前有一个正在开发的托管 (GCP) 微服务环境。在处理服务时,我目前 运行 本地环境。我 运行 我正在处理的服务需要与之通信的所有服务。
这给开发者带来了糟糕的体验,因为:
- 我必须启动每项服务;可以有很多
- 运行这么多服务会占用我的大量系统资源
- 如果这些服务中的任何一个需要数据库,我也必须设置它
我正在寻找解决方案。理想情况下,我将 运行 仅在本地提供单个服务,并连接到托管环境中的其余服务。
是否有任何流行的服务网格提供此选项?我主要关注 Istio 和 Kuma。有没有想到其他解决方案?
对于远程 development/debugging 我建议看一下 Telepresence。
甚至被 Kubernetes 文档推荐:
Using telepresence allows you to use custom tools, such as a debugger and IDE, for a local service and provides the service full access to ConfigMap, secrets, and the services running on the remote cluster.
https://kubernetes.io/docs/tasks/debug-application-cluster/local-debugging/
另一方面,Istio 使您能够进行影子部署和金丝雀部署或 blue/green 部署。你可以例如运行 一项服务并将某些用户(基于 header)发送到新版本。您可以将流量镜像到服务或逐步将流量从 0% 转移到 100%。我会说它更多是为了在负载下测试您的新服务或逐渐发布新版本。
我目前有一个正在开发的托管 (GCP) 微服务环境。在处理服务时,我目前 运行 本地环境。我 运行 我正在处理的服务需要与之通信的所有服务。
这给开发者带来了糟糕的体验,因为:
- 我必须启动每项服务;可以有很多
- 运行这么多服务会占用我的大量系统资源
- 如果这些服务中的任何一个需要数据库,我也必须设置它
我正在寻找解决方案。理想情况下,我将 运行 仅在本地提供单个服务,并连接到托管环境中的其余服务。
是否有任何流行的服务网格提供此选项?我主要关注 Istio 和 Kuma。有没有想到其他解决方案?
对于远程 development/debugging 我建议看一下 Telepresence。
甚至被 Kubernetes 文档推荐:
Using telepresence allows you to use custom tools, such as a debugger and IDE, for a local service and provides the service full access to ConfigMap, secrets, and the services running on the remote cluster.
https://kubernetes.io/docs/tasks/debug-application-cluster/local-debugging/
另一方面,Istio 使您能够进行影子部署和金丝雀部署或 blue/green 部署。你可以例如运行 一项服务并将某些用户(基于 header)发送到新版本。您可以将流量镜像到服务或逐步将流量从 0% 转移到 100%。我会说它更多是为了在负载下测试您的新服务或逐渐发布新版本。