专栏名称: 聊聊架构
聊聊架构
目录
相关文章推荐
美团技术团队  ·  可信实验白皮书系列04:随机轮转实验 ·  3 天前  
美团技术团队  ·  可信实验白皮书系列03:随机对照实验 ·  3 天前  
架构师之路  ·  爸爸!除了你,沈括,沈万三... ... ·  4 天前  
51好读  ›  专栏  ›  聊聊架构

Istio以及Service Mesh的未来

聊聊架构  · 公众号  · 架构  · 2018-07-08 09:13

正文

请到「今天看啥」查看全文


就在我们开始 Istio 项目开发工作的几乎同一时间,IBM 也发布了一个名为  Amalgam8  的开源项目,这是一个基于 NGINX 技术,为微服务提供基于内容的路由方案的项目。随后,IBM 意识到这两个项目在使用场景与产品愿景上存在很大一部分交集,于是答应成为我们的合作伙伴,放弃 Amalgam8 的开发,共同基于  Lyft 公司 的 Envoy  项目打造 Istio 这款产品。

Istio 是如何运行的?

一般来说,Istio Service Mesh 由两部分组成。1. 由 Envoy 代理组成的数据面板,它能够拦截网络请求,并控制服务之间的通信。2. 支持服务的运行时管理的控制面板,它提供策略实施、遥测数据收集以及证书轮换等功能。

代理

Envoy 是由 Lyft 公司基于 C++ 编写的一个高性能、开源的分布式代理(在 Lyft 公司内部用于处理生产环境中的网络请求)。Envoy 作为 sidecar 部署在系统中,对所有流入与流出的网络请求进行拦截,实现各种网络策略,并与 Istio 控制面板集成。Istio 利用了 Envoy 内建的大量特性,例如服务发现与负载均衡、流量拆分、故障注入(fault injection)、熔断器以及分阶段发布等功能。

Pilot

作为控制面板的重要组成部分之一,Pilot 负责管理代理的配置,并将服务的通信策略分发至 Istio mesh 中所有的 Envoy 实例。它能够接受高级别的规则(例如发布策略),将其解释为低级别的 Envoy 配置,并将配置分发至 sidecar,而且不会导致停机或是重新部署。虽然 Pilot 本身不依赖于底层平台,但运维人员可以利用特定于平台的适配器,将服务发现的信息推送给 Pilot。

Mixer

Mixer 能够在 Istio 中集成各种生态的基础设施后端系统,它通过即插即用的适配器集,通过标准的配置模型,使 Istio 能够方便地与现有的服务进行集成。适配器对 Mixer 的功能进行了扩展,并将特定的接口暴露给监控、日志、追踪、配额管理及其他功能。适配器是按需加载的,并按照运维人员的配置在运行时发挥作用。







请到「今天看啥」查看全文