From bbde16f3318356734648c9c1fa6cf927eb293944 Mon Sep 17 00:00:00 2001 From: isno Date: Thu, 29 Feb 2024 17:03:20 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20ServiceMesh?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ServiceMesh/MicroService-history.md | 2 +- ServiceMesh/ServiceMesh-and-Kubernetes.md | 9 ++++++++- ServiceMesh/What-is-ServiceMesh.md | 16 +++++++--------- ServiceMesh/overview.md | 8 +++----- assets/istio-k8s.png | Bin 0 -> 66512 bytes 5 files changed, 19 insertions(+), 16 deletions(-) create mode 100644 assets/istio-k8s.png diff --git a/ServiceMesh/MicroService-history.md b/ServiceMesh/MicroService-history.md index 3e208ed5..6c6c7ed5 100644 --- a/ServiceMesh/MicroService-history.md +++ b/ServiceMesh/MicroService-history.md @@ -85,7 +85,7 @@ TCP出现之后,机器之间的网络通信不再是一个难题,以 GFS/Big 2016年1月,William Morgan 和 Oliver Gould 在 Github 上发布了 Linkerd 0.0.7 版本。早期的 Linkerd 借鉴了 Twtter 开源的 Finagle 项目,并重用了大量的 Finagle 代码。逻辑上,Linkerd 将分布式服务的通信抽象为单独一层,在这一层中实现负载均衡、服务发现、认证授权、监控追踪、流量控制等分布式系统所需要的功能。实现上,作为和服务对等的代理服务(Sidecar)和服务部署在一起,接管服务的流量。 -此时,Linkerd 不绑定任何基础架构或某类体系,实现了通用型,成为业界第一个服务网格项目。同期的服务网格代表产品还有 lyft 公司的 Envoy。 +此时,Linkerd 不绑定任何基础架构或某类体系,实现了通用型,成为业界第一个服务网格项目。同期的服务网格代表产品还有 lyft 公司的 Envoy(Envoy 是 CNCF 内继 Kubernetes、Prometheus 第三个孵化成熟的项目)。
diff --git a/ServiceMesh/ServiceMesh-and-Kubernetes.md b/ServiceMesh/ServiceMesh-and-Kubernetes.md index 57aaa9a4..81a07500 100644 --- a/ServiceMesh/ServiceMesh-and-Kubernetes.md +++ b/ServiceMesh/ServiceMesh-and-Kubernetes.md @@ -2,10 +2,17 @@ 现在,承载应用 Workload 的形式已经从”物理机“过渡到”容器“。容器意味着创建(包括初始化)和销毁高度自动化,且具备极强弹性。此时,基础设施的功能(服务发现、负载均衡、熔断限流、路由等)与业务代码的集成需要在低成本前提下保证相同的生命周期。物理机时代,基础设施功能添加到业务代码的方式只能选择 SDK,而容器时代,基础设施的功能添加到业务代码的最佳方式变成了 Sidecar。 +
+ +

+
+ + Kubernetes 通过管理基础设施(Pod)为微服务提供了可扩展、高弹性的部署粗粒度服务。而 ServiceMesh 通过 Pod 内的 Sidecar Proxy 实现透明代理,通过更接近微服务应用层的抽象,实现服务间的流量、安全性和可观察性细粒度管理。 -如下图所示,Kubernetes 与 Servicemesh 结合,提供一套从底层的负载部署运行到上层的服务访问治理端到端的解决方案。 + +Kubernetes 与 Servicemesh 天生契合,两者结合提供一套从底层的负载部署运行到上层的服务访问治理端到端的解决方案。
diff --git a/ServiceMesh/What-is-ServiceMesh.md b/ServiceMesh/What-is-ServiceMesh.md index c7e5b975..f6c165c1 100644 --- a/ServiceMesh/What-is-ServiceMesh.md +++ b/ServiceMesh/What-is-ServiceMesh.md @@ -2,14 +2,6 @@ 2016年,离开 Twiiter 的工程师 William Morgan 和 Oliver Gould 组建了一个小型的技术公司 Buoyant,不久之后他们在 Github 上发布了创业项目 Linkerd,业界第一款服务网格(ServiceMesh)项目诞生。 -先来感受服务网格从无到有、被社区接受、巨头入局、众人皆捧的历程。 - -- 2016年9 月,在 SF MicroServices 大会上,“ServiceMesh” 这个术语第一次在公开场合使用,这标志着 ServiceMesh 逐渐从 Buoyant 公司走向社区,并开始被广泛接受以及推崇。 -- 2017年1月,Linkerd 加入 CNCF,项目类型被归类到 CNCF 新开辟的 “ServiceMesh” 分类。这代表着 ServiceMesh 理念被 CNCF 社区认同。 -- 2017年4月,Linkerd 发布 1.0 版本。Linkerd 实现了最重要的里程碑:被客户接受并在生产线上被大规模应用,ServiceMesh 从理念走向生产实践。 -- 2017年5月,Google、IBM、Lyft 联合发布 Istio 0.1 版本,以 Istio 为代表的第二代 ServiceMesh 产品开始登场。 -- 2018年7月,CNCF 社区发布的云原生定义中,将服务网格和微服务、容器、不可变基础设施等技术并列。这标志着服务网格已经超越了其原初的角色 —— 仅作为一种实现微服务的新方法,现在已经发展为云原生的又一个关键领域,被放在前所未有的高度。 - 那么,什么是服务网格?服务网格的概念最早出自于 William Morgan 的博文《What’s a service mesh?And why do I need one?》,William Morgan 作为服务网格的创造者和布道师,引用他的定义自然是最官方和最权威的。 @@ -21,4 +13,10 @@ ::: -看服务网格(Service Mesh)这个名字起得多好:从 Micro(微小个体)Services 到 Service Mesh(网格连接),承前启后和顺其自然。原本被拆散得七零八落的微服务们,又被服务网格这张大网紧密得连接到了一起,即使依然天各一方(进程间隔离),但也找回了当年一起挤在单体应用内抱团撒欢的亲密感(通信更容易)。 \ No newline at end of file +感受服务网格从无到有、被社区接受、巨头入局、众人皆捧的历程。 + +- 2016年9 月,在 SF MicroServices 大会上,“ServiceMesh” 这个术语第一次在公开场合使用,这标志着 ServiceMesh 逐渐从 Buoyant 公司走向社区,并开始被广泛接受以及推崇。 +- 2017年1月,Linkerd 加入 CNCF,项目类型被归类到 CNCF 新开辟的 “ServiceMesh” 分类。这代表着 ServiceMesh 理念被 CNCF 社区认同。 +- 2017年4月,Linkerd 发布 1.0 版本。Linkerd 实现了最重要的里程碑:被客户接受并在生产线上被大规模应用,ServiceMesh 从理念走向生产实践。 +- 2017年5月,Google、IBM、Lyft 联合发布 Istio 0.1 版本,以 Istio 为代表的第二代 ServiceMesh 产品开始登场。 +- 2018年7月,CNCF 社区发布的云原生定义中,将服务网格和微服务、容器、不可变基础设施等技术并列。这标志着服务网格已经超越了其原初的角色 —— 仅作为一种实现微服务的新方法,现在已经发展为云原生的又一个关键领域,被放在前所未有的高度。 \ No newline at end of file diff --git a/ServiceMesh/overview.md b/ServiceMesh/overview.md index 3e43dbfb..cb10a7b2 100644 --- a/ServiceMesh/overview.md +++ b/ServiceMesh/overview.md @@ -1,14 +1,12 @@ # 8.3 服务网格的产品与生态 -2016年1月,Buoyant 公司发布了第一代 ServiceMesh 产品 Linkerd。初次发布的 Linkerd 以 Scala 编写,绝大部分关注点都是如何做好 proxy(代理) 并完成一些通用控制面的功能。同期专注于 proxy 领域的还有一个重量级选手 Envoy,Envoy 由 Lyft 公司基于 C++ 开发,特点为性能出色、功能丰富、生态成熟,是 CNCF 内继 Kubernetes、Prometheus 第三个孵化成熟的项目。 +初代的 ServiceMesh 理念美好,但以 Sidecar 为核心还是存在不少缺陷:明显的资源消耗、额外的请求转发带来的性能影响,其次功能仅限于数据层面的代理时,当大量部署 Sidecar 后也没有充分考虑如何管理和控制这些 Sidecar。 -初代的 ServiceMesh 理念美好,但以 Sidecar 为核心存在不少缺陷,特别是其明显的资源消耗、性能影响广受诟病,其二仅限于数据层面的代理功能时,当大量部署 Sidecar 后并没有充分考虑如何管理和控制这些 Sidecar。于是,第一代 ServiceMesh(Linkerd、Envoy)刚开始被市场接受,第二代 Service Mesh 已经开始酝酿参与竞争。 +此时,你就看到了第一代 ServiceMesh(Linkerd、Envoy)刚开始被市场接受,第二代 Service Mesh 就迫不及待入场。 ## Istio 入局 -2017年5月,Google、IBM、Lyft 宣布新一代的服务网格 Istio 开源,有巨头背书以及**新增控制平面的设计理念**让 Istio 得到极大关注和发展,并迅速成为 ServiceMesh 的代表产品。 - -Istio 最大的创新在于它为 ServiceMesh 带来前所未有的控制力: +2017年5月,Google、IBM、Lyft 宣布新一代的服务网格 Istio 开源,有巨头背书以及**新增控制平面的设计理念**让 Istio 得到极大关注和发展,并迅速成为 ServiceMesh 的代表产品。Istio 最大的创新在于它为 ServiceMesh 带来前所未有的控制力: - 以 Sidercar 方式部署的 ServiceMesh 控制服务间所有的流量 - Istio 增加控制面板来控制系统中所有的 Sidecar。 diff --git a/assets/istio-k8s.png b/assets/istio-k8s.png new file mode 100644 index 0000000000000000000000000000000000000000..d057a5d0149dc17bc518c743bd641bcf2e4433c7 GIT binary patch literal 66512 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

R(JV}C7?xsx9TGW1JGQ~6;0Ov8)G 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 vKe