一篇带你从零开始学微服务( 五 )


需要统一管理来自不同集群的机器权限管理、成本核算以及环境初始化等操作,这个时候就需要有一个统一的层来完成这个操作 。
很显然,靠人工是肯定不行的,需要搭建统一的部署运维平台 。
服务编排大部分情况下,微服务之间是相互独立的,在进行容器调度的时候不需要考虑彼此 。
但有时候也会存在一些场景,比如服务 A 调度的前提必须是先有服务 B,这样的话就要求在进行容器调度的时候,还需要考虑服务之间的依赖关系 。
Service MeshService Mesh 的概念最早是由 Buoyant 公司的 CEO William Morgan 提出,他给出的服务网格的定义是:

A service mesh is a dedicated infrastructure layer for handling service-to-service communication. It’s responsible for the reliable delivery of requests through the complex topology of services that comprise a modern, cloud native Application. In practice, the service mesh is typically implemented as an array of lightweight.NETwork proxies that are deployed alongside application code, without the application needing to be aware.
被很多人定义为下一代的微服务架构 。
 
一篇带你从零开始学微服务

文章插图
 
目前,Service Mesh 的代表产品当属 Google 和 IBM 的 lstio 。
Istio 的架构可以说由两部分组成,分别是 Proxy 和 Control Plane 。
  • Proxy: 与应用程序部署在同一个主机上,应用程序之间的调用都通过 Proxy 来转发,目前支持 HTTP/1.1、HTTP/2、gRPC 以及 TCP 请求 。
  • Control Plane: 与 Proxy 通信,来实现各种服务治理功能,包括三个基本组件:Pilot、Mixer 以及 Citadel 。




推荐阅读