Spring Cloud Netflix 与 Kubernetes [关闭]

Posted

技术标签:

【中文标题】Spring Cloud Netflix 与 Kubernetes [关闭]【英文标题】:Spring Cloud Netflix vs Kubernetes [closed] 【发布时间】:2017-07-15 02:07:54 【问题描述】:

我试图最终在 Spring Cloud Netflix、Kubernetes 和 Swarm 之间进行选择,以构建我们的微服务环境。他们都很酷,做一些选择很困难。 我会稍微描述一下我想解决什么样的问题。 我找不到任何使用 Kubernetes 或 Swarm 设计 Api Gateway(不是简单的负载均衡器)的最佳方法,这就是我想使用 Zuul 的原因。但另一方面,Api Gateway 必须使用服务发现,在 Kubernetes 或 Swarm 的情况下,该服务发现将嵌入到管弦乐队中。使用 Kubernetes,我可以使用它的 Spring Cloud 集成,但这样我将在 Kubernetes 内进行服务器端发现和客户端发现。我认为这太过分了。 我想知道是否有人对他们有一些经验以及对此有何建议。 谢谢。

【问题讨论】:

比较好:developers.redhat.com/blog/2016/12/09/… @Pau 我同意很好的文章 Spring Cloud vs Kubernetes。总的来说,我觉得根本不需要 Spring Cloud。只需将 Kubernetes 与 Istio 一起使用。 Istio 涵盖了 K8s 的所有感知缺陷。当然,代码可以在 Spring Boot 或任何你喜欢的地方;无论如何它都会被容器化。 【参考方案1】:

Kubernetes 和 Docker Swarm 是容器编排工具。 Spring Cloud 是一组用于构建微服务/流式架构的工具。 有一些重叠,比如服务发现、网关或配置服务。但是您可以在没有容器的情况下使用 Spring Cloud,并自己部署 jar,而不需要 Kuberentes 或 Swarm。

因此,如果您要使用容器,就必须在 Kubernetes 和 Swarm 之间进行选择来编排您的容器。

比较:https://dzone.com/articles/deploying-microservices-spring-cloud-vs-kubernetes

【讨论】:

spring cloud和kubernetes有集成github.com/spring-cloud-incubator/spring-cloud-kubernetes 感谢@Jeff 的回复!实际上我指的是 Spring Cloud Netflix 的东西,尤其是服务发现、服务注册。我没有找到任何用 Kubernetes 或 Swarm 设计 Api Gateway(不是简单的负载均衡器)的好方法,而是想使用 Zuul。但另一方面,Api Gateway 必须使用服务发现,在 Kubernetes 或 Swarm 的情况下,该服务发现将嵌入编排中。使用 Kubernetes,我可以使用它的 Spring Cloud 集成,但这样我将在 Kubernetes 内进行服务器端发现和客户端发现。

以上是关于Spring Cloud Netflix 与 Kubernetes [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

Spring Cloud Netflix(网飞)

探秘微服务治理之Spring Cloud Netflix Eureka

Spring Cloud Netflix-Eureka集群数据同步

如何使用 Spring Cloud Netflix Feign 设置自定义 Jackson ObjectMapper

SpringCloud学习笔记3:Spring Cloud Netflix 组件(五大神兽)

spring-cloud-eureka服务注册与发现