0%

Service Mesh简介

简介

服务网格(Service mesh)是服务间通信的基础设施层。它对全局流量和通信进行监控和管理,提供包括可观察性、流量转移(用于灰度发布)、弹性能力(例如断路和重试/超时)等一系列功能,并为服务之间的通信提供双向 TLS 认证能力,让网格能够对请求和响应进行自动加密和解密。
Service Mesh

特点

  • 治理能力独立(Sidecar)
  • 应用程序无感知
  • 服务通信的基础设施层

关注的方面

  • 可观察性
  • 安全性
  • 可运维性
  • 可拓展性

为什么需要?

Service Mesh
Kubernetes 提供平台基础设施层强大的容器编排与调度能力

  • 服务部署与弹性伸缩:Deployment
  • 服务拆分与服务发现:Service

Kubernetes 提供简单的负载均衡

  • 负载均衡:基于IPVSIptables的简单均衡机制

但是Kubernetes在服务治理方面并不完备,缺少了动态路由、熔断、灰度发布等等功能,需要由服务网格互补。

什么时候用Service Mesh?

Service Mesh

随着我们的微服务越来越细分,我们所要管理的服务正在成倍的增长着,Kubernetes 提供了丰富的功能,使得我们可以快速的部署和调度这些服务,同时也提供了我们熟悉的方式来实现那些复杂的功能,但是随着部署的应该越来越多,复杂度越来越高,当临界点到来时,可能就是我们真正要去考虑使用 Service Mesh 的时候了。

Istio问世

Service Mesh
Istio是一个开放服务网格,是Service Mesh标准实现,也是当下最流行的,提供了一种连接,管理和保护微服务的统一方法。它支持管理服务之间的流量,执行访问策略以及汇总遥测数据,所有这些都无需更改微服务代码。