Istio实战-Istio 的工作原理和组件

Posted 地表最强菜鸡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Istio实战-Istio 的工作原理和组件相关的知识,希望对你有一定的参考价值。

Istio作为一个 Service Mesh 开源项目,其中最重要的功能就是对网格中微服务之间的流量进行管理,包括服务发现,请求路由和服务间的可靠通信。Istio 实现了Service Mesh的控制面,并整合Envoy开源项目作为数据面的sidecar,一起对流量进行控制。

Istio 体系中流量管理配置下发以及流量规则如何在数据面生效的机制相对比较复杂,通过官方文档容易管中窥豹,难以了解其实现原理。本文尝试结合系统架构、配置文件和代码对Istio流量管理的架构和实现机制进行分析,以达到从整体上理解 Pilot 和 Envoy 的流量管理机制的目的。

本文将带领大家来了解 Istio 在处理一次访问请求中,内部都发生了什么事情,以及 Istio 的各个组件是怎样参与其中的,分别做了哪些事情。

一、Istio 的工作机制

Istio 的架构主要分为两部分,控制面和数据面。控制面是 Istio 的核心,数据平面是通过注入 Sidecar 的方式来部署的。控制面包括 Pilot、Mixer、Citadel等服务组件,数据面由伴随每个应用程序部署的代理程序 Envoy 组成,执行针对应用程序的治理逻辑,图示如下:

以上是关于Istio实战-Istio 的工作原理和组件的主要内容,如果未能解决你的问题,请参考以下文章

Istio入门实战与架构原理——使用Docker Compose搭建Service Mesh

Istio的原理架构和组件介绍

idou老师教你学Istio 19 : Istio 流量治理功能原理与实战

五千字长文详解Istio实践之熔断和限流工作原理

Istio调用链埋点原理剖析—是否真的“零修改”分享实录

Istio实战-服务安全原理